Edit

kc3-lang/brotli/java/BUILD.bazel

Branch :

  • Show log

    Commit

  • Author : Evgenii Kliuchnikov
    Date : 2025-01-08 10:12:41
    Hash : 281b0aa5
    Message : Fix most of build_test pipeline

  • java/BUILD.bazel
  • package(
        default_visibility = ["//visibility:public"],
    )
    
    # >>> JNI headers
    
    genrule(
        name = "copy_link_jni_header",
        srcs = ["@bazel_tools//tools/jdk:jni_header"],
        outs = ["jni/jni.h"],
        cmd = "cp -f $< $@",
    )
    
    genrule(
        name = "copy_link_jni_md_header",
        srcs = select({
            "@bazel_tools//src/conditions:darwin": ["@bazel_tools//tools/jdk:jni_md_header-darwin"],
            "@bazel_tools//src/conditions:freebsd": ["@bazel_tools//tools/jdk:jni_md_header-freebsd"],
            "@bazel_tools//src/conditions:openbsd": ["@bazel_tools//tools/jdk:jni_md_header-openbsd"],
            "@bazel_tools//src/conditions:windows": ["@bazel_tools//tools/jdk:jni_md_header-windows"],
            "//conditions:default": ["@bazel_tools//tools/jdk:jni_md_header-linux"],
        }),
        outs = ["jni/jni_md.h"],
        cmd = "cp -f $< $@",
    )
    
    cc_library(
        name = "jni_inc",
        hdrs = [
            ":jni/jni.h",
            ":jni/jni_md.h",
        ],
        includes = ["jni"],
    )
    
    # <<< JNI headers
    
    genrule(
        name = "license",
        srcs = ["@org_brotli//:LICENSE"],
        outs = ["META-INF/LICENSE"],
        cmd = "cp -f $< $@",
    )
    
    ########################################################
    # WARNING: do not (transitively) depend on this target!
    ########################################################
    cc_binary(
        name = "brotli_jni.dll",
        srcs = [
            "//org/brotli/wrapper/common:jni_src",
            "//org/brotli/wrapper/dec:jni_src",
            "//org/brotli/wrapper/enc:jni_src",
            "@org_brotli//:common_headers",
            "@org_brotli//:common_sources",
            "@org_brotli//:dec_headers",
            "@org_brotli//:dec_sources",
            "@org_brotli//:enc_headers",
            "@org_brotli//:enc_sources",
        ],
        linkshared = 1,
        deps = [
            ":jni_inc",
            "@org_brotli//:brotli_inc",
        ],
    )
    
    ########################################################
    # WARNING: do not (transitively) depend on this target!
    ########################################################
    cc_binary(
        name = "brotli_jni_no_dictionary_data.dll",
        srcs = [
            "//org/brotli/wrapper/common:jni_src",
            "//org/brotli/wrapper/dec:jni_src",
            "//org/brotli/wrapper/enc:jni_src",
            "@org_brotli//:common_headers",
            "@org_brotli//:common_sources",
            "@org_brotli//:dec_headers",
            "@org_brotli//:dec_sources",
            "@org_brotli//:enc_headers",
            "@org_brotli//:enc_sources",
        ],
        defines = [
            "BROTLI_EXTERNAL_DICTIONARY_DATA=",
        ],
        linkshared = 1,
        deps = [
            ":jni_inc",
            "@org_brotli//:brotli_inc",
        ],
    )