load("@rules_pkg//:mappings.bzl", "pkg_files") load("//shared/bazel/rules:cc_rules.bzl", "wpilib_cc_library", "wpilib_cc_static_library") load("//shared/bazel/rules:java_rules.bzl", "wpilib_java_junit5_test", "wpilib_java_library") load("//shared/bazel/rules:packaging.bzl", "package_minimal_cc_project") load("//shared/bazel/rules/gen:gen-resources.bzl", "generate_resources") generate_resources( name = "generate-resources", namespace = "fields", prefix = "FIELDS", resource_files = glob(["src/main/native/resources/**"]), ) wpilib_cc_library( name = "fieldImages", srcs = [":generate-resources"] + glob(["src/main/native/cpp/**"]), hdrs = glob(["src/main/native/include/**/*"]), include_license_files = True, strip_include_prefix = "src/main/native/include", visibility = ["//visibility:public"], ) wpilib_cc_static_library( name = "static/fieldImages", static_lib_name = select({ "@platforms//os:windows": "static/fieldImages.lib", "//conditions:default": "static/libfieldImages.a", }), visibility = ["//visibility:public"], deps = [ ":fieldImages", ], ) wpilib_java_library( name = "fieldImages-java", srcs = glob(["src/main/java/**/*.java"]), extra_source_pkgs = ["resources"], maven_artifact_name = "fieldImages-java", maven_group_id = "edu.wpi.first.fieldImages", resource_strip_prefix = "fieldImages/src/main/native/resources", resources = glob(["src/main/native/resources/**"]), visibility = ["//visibility:public"], deps = [ "@maven//:com_fasterxml_jackson_core_jackson_annotations", "@maven//:com_fasterxml_jackson_core_jackson_databind", ], ) pkg_files( name = "resources", srcs = glob(["src/main/native/resources/**"]), strip_prefix = "src/main/native/resources/", ) wpilib_java_junit5_test( name = "fieldImages-test", srcs = glob(["src/test/java/**/*.java"]), deps = [ ":fieldImages-java", ], ) package_minimal_cc_project( name = "fieldImages", maven_artifact_name = "fieldImages-cpp", maven_group_id = "edu.wpi.first.fieldImages", )