blob: cd55c5477355014dfb467019dff6512c6fcf267e [file] [log] [blame]
Eugene Kliuchnikov1e7ea1d2018-06-04 17:53:16 +02001package(
2 default_visibility = ["//visibility:public"],
3)
4
5# >>> JNI headers
6
7genrule(
8 name = "copy_link_jni_header",
Eugene Kliuchnikova799e342018-10-18 17:25:05 +02009 srcs = ["@openjdk_jni_h//file"],
Eugene Kliuchnikov1e7ea1d2018-06-04 17:53:16 +020010 outs = ["jni/jni.h"],
11 cmd = "cp -f $< $@",
12)
13
14genrule(
15 name = "copy_link_jni_md_header",
16 srcs = select({
Eugene Kliuchnikova799e342018-10-18 17:25:05 +020017 "@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 Kliuchnikov1e7ea1d2018-06-04 17:53:16 +020023 }),
24 outs = ["jni/jni_md.h"],
25 cmd = "cp -f $< $@",
26)
27
28cc_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 Kliuchnikovc8b37e82019-07-17 14:39:56 +020039genrule(
40 name = "license_resource",
41 srcs = ["@org_brotli//:LICENSE"],
42 outs = ["META-INF/LICENSE"],
43 cmd = "cp -f $< $@",
44)
45
46java_library(
47 name = "license",
48 resources = [":license_resource"],
49)
50
Eugene Kliuchnikov1e7ea1d2018-06-04 17:53:16 +020051########################################################
52# WARNING: do not (transitively) depend on this target!
53########################################################
54cc_binary(
55 name = "brotli_jni.dll",
56 srcs = [
Eugene Kliuchnikova799e342018-10-18 17:25:05 +020057 "//org/brotli/wrapper/common:jni_src",
58 "//org/brotli/wrapper/dec:jni_src",
59 "//org/brotli/wrapper/enc:jni_src",
Eugene Kliuchnikov1e7ea1d2018-06-04 17:53:16 +020060 "@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 Kliuchnikov1e7ea1d2018-06-04 17:53:16 +020066 ],
67 linkshared = 1,
Eugene Kliuchnikova799e342018-10-18 17:25:05 +020068 deps = [
69 ":jni_inc",
70 "@org_brotli//:brotli_inc",
71 ],
Eugene Kliuchnikov1e7ea1d2018-06-04 17:53:16 +020072)
73
74########################################################
75# WARNING: do not (transitively) depend on this target!
76########################################################
77cc_binary(
78 name = "brotli_jni_no_dictionary_data.dll",
79 srcs = [
Eugene Kliuchnikova799e342018-10-18 17:25:05 +020080 "//org/brotli/wrapper/common:jni_src",
81 "//org/brotli/wrapper/dec:jni_src",
82 "//org/brotli/wrapper/enc:jni_src",
Eugene Kliuchnikov1e7ea1d2018-06-04 17:53:16 +020083 "@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 Kliuchnikov1e7ea1d2018-06-04 17:53:16 +020089 ],
90 defines = [
91 "BROTLI_EXTERNAL_DICTIONARY_DATA=",
92 ],
Eugene Kliuchnikov1e7ea1d2018-06-04 17:53:16 +020093 linkshared = 1,
Eugene Kliuchnikova799e342018-10-18 17:25:05 +020094 deps = [
95 ":jni_inc",
96 "@org_brotli//:brotli_inc",
97 ],
Eugene Kliuchnikov1e7ea1d2018-06-04 17:53:16 +020098)