Eugene Kliuchnikov | 1e7ea1d | 2018-06-04 17:53:16 +0200 | [diff] [blame] | 1 | package( |
| 2 | default_visibility = ["//visibility:public"], |
| 3 | ) |
| 4 | |
| 5 | # >>> JNI headers |
| 6 | |
| 7 | genrule( |
| 8 | name = "copy_link_jni_header", |
Eugene Kliuchnikov | a799e34 | 2018-10-18 17:25:05 +0200 | [diff] [blame] | 9 | srcs = ["@openjdk_jni_h//file"], |
Eugene Kliuchnikov | 1e7ea1d | 2018-06-04 17:53:16 +0200 | [diff] [blame] | 10 | outs = ["jni/jni.h"], |
| 11 | cmd = "cp -f $< $@", |
| 12 | ) |
| 13 | |
| 14 | genrule( |
| 15 | name = "copy_link_jni_md_header", |
| 16 | srcs = select({ |
Eugene Kliuchnikov | a799e34 | 2018-10-18 17:25:05 +0200 | [diff] [blame] | 17 | "@org_brotli//:darwin": ["@openjdk_macosx_jni_md_h//file"], |
| 18 | "@org_brotli//:darwin_x86_64": ["@openjdk_macosx_jni_md_h//file"], |
| 19 | "@org_brotli//:windows_msys": ["@openjdk_windows_jni_md_h//file"], |
| 20 | "@org_brotli//:windows_msvc": ["@openjdk_windows_jni_md_h//file"], |
| 21 | "@org_brotli//:windows": ["@openjdk_windows_jni_md_h//file"], |
| 22 | "//conditions:default": ["@openjdk_solaris_jni_md_h//file"], |
Eugene Kliuchnikov | 1e7ea1d | 2018-06-04 17:53:16 +0200 | [diff] [blame] | 23 | }), |
| 24 | outs = ["jni/jni_md.h"], |
| 25 | cmd = "cp -f $< $@", |
| 26 | ) |
| 27 | |
| 28 | cc_library( |
| 29 | name = "jni_inc", |
| 30 | hdrs = [ |
| 31 | ":jni/jni.h", |
| 32 | ":jni/jni_md.h", |
| 33 | ], |
| 34 | includes = ["jni"], |
| 35 | ) |
| 36 | |
| 37 | # <<< JNI headers |
| 38 | |
Eugene Kliuchnikov | c8b37e8 | 2019-07-17 14:39:56 +0200 | [diff] [blame] | 39 | genrule( |
| 40 | name = "license_resource", |
| 41 | srcs = ["@org_brotli//:LICENSE"], |
| 42 | outs = ["META-INF/LICENSE"], |
| 43 | cmd = "cp -f $< $@", |
| 44 | ) |
| 45 | |
| 46 | java_library( |
| 47 | name = "license", |
| 48 | resources = [":license_resource"], |
| 49 | ) |
| 50 | |
Eugene Kliuchnikov | 1e7ea1d | 2018-06-04 17:53:16 +0200 | [diff] [blame] | 51 | ######################################################## |
| 52 | # WARNING: do not (transitively) depend on this target! |
| 53 | ######################################################## |
| 54 | cc_binary( |
| 55 | name = "brotli_jni.dll", |
| 56 | srcs = [ |
Eugene Kliuchnikov | a799e34 | 2018-10-18 17:25:05 +0200 | [diff] [blame] | 57 | "//org/brotli/wrapper/common:jni_src", |
| 58 | "//org/brotli/wrapper/dec:jni_src", |
| 59 | "//org/brotli/wrapper/enc:jni_src", |
Eugene Kliuchnikov | 1e7ea1d | 2018-06-04 17:53:16 +0200 | [diff] [blame] | 60 | "@org_brotli//:common_headers", |
| 61 | "@org_brotli//:common_sources", |
| 62 | "@org_brotli//:dec_headers", |
| 63 | "@org_brotli//:dec_sources", |
| 64 | "@org_brotli//:enc_headers", |
| 65 | "@org_brotli//:enc_sources", |
Eugene Kliuchnikov | 1e7ea1d | 2018-06-04 17:53:16 +0200 | [diff] [blame] | 66 | ], |
| 67 | linkshared = 1, |
Eugene Kliuchnikov | a799e34 | 2018-10-18 17:25:05 +0200 | [diff] [blame] | 68 | deps = [ |
| 69 | ":jni_inc", |
| 70 | "@org_brotli//:brotli_inc", |
| 71 | ], |
Eugene Kliuchnikov | 1e7ea1d | 2018-06-04 17:53:16 +0200 | [diff] [blame] | 72 | ) |
| 73 | |
| 74 | ######################################################## |
| 75 | # WARNING: do not (transitively) depend on this target! |
| 76 | ######################################################## |
| 77 | cc_binary( |
| 78 | name = "brotli_jni_no_dictionary_data.dll", |
| 79 | srcs = [ |
Eugene Kliuchnikov | a799e34 | 2018-10-18 17:25:05 +0200 | [diff] [blame] | 80 | "//org/brotli/wrapper/common:jni_src", |
| 81 | "//org/brotli/wrapper/dec:jni_src", |
| 82 | "//org/brotli/wrapper/enc:jni_src", |
Eugene Kliuchnikov | 1e7ea1d | 2018-06-04 17:53:16 +0200 | [diff] [blame] | 83 | "@org_brotli//:common_headers", |
| 84 | "@org_brotli//:common_sources", |
| 85 | "@org_brotli//:dec_headers", |
| 86 | "@org_brotli//:dec_sources", |
| 87 | "@org_brotli//:enc_headers", |
| 88 | "@org_brotli//:enc_sources", |
Eugene Kliuchnikov | 1e7ea1d | 2018-06-04 17:53:16 +0200 | [diff] [blame] | 89 | ], |
| 90 | defines = [ |
| 91 | "BROTLI_EXTERNAL_DICTIONARY_DATA=", |
| 92 | ], |
Eugene Kliuchnikov | 1e7ea1d | 2018-06-04 17:53:16 +0200 | [diff] [blame] | 93 | linkshared = 1, |
Eugene Kliuchnikov | a799e34 | 2018-10-18 17:25:05 +0200 | [diff] [blame] | 94 | deps = [ |
| 95 | ":jni_inc", |
| 96 | "@org_brotli//:brotli_inc", |
| 97 | ], |
Eugene Kliuchnikov | 1e7ea1d | 2018-06-04 17:53:16 +0200 | [diff] [blame] | 98 | ) |