blob: a00e2d0bd3b673c492082c436c41c17c215b3363 [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",
9 srcs = ["@openjdk_linux//:jni_h"],
10 outs = ["jni/jni.h"],
11 cmd = "cp -f $< $@",
12)
13
14genrule(
15 name = "copy_link_jni_md_header",
16 srcs = select({
17 "@org_brotli//:darwin": ["@openjdk_macos//:jni_md_h"],
18 "@org_brotli//:darwin_x86_64": ["@openjdk_macos//:jni_md_h"],
19 "@org_brotli//:windows_msys": ["@openjdk_win//:jni_md_h"],
20 "@org_brotli//:windows_msvc": ["@openjdk_win//:jni_md_h"],
21 "@org_brotli//:windows": ["@openjdk_win//:jni_md_h"],
22 "//conditions:default": ["@openjdk_linux//:jni_md_h"],
23 }),
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
39########################################################
40# WARNING: do not (transitively) depend on this target!
41########################################################
42cc_binary(
43 name = "brotli_jni.dll",
44 srcs = [
45 "@org_brotli//:common_headers",
46 "@org_brotli//:common_sources",
47 "@org_brotli//:dec_headers",
48 "@org_brotli//:dec_sources",
49 "@org_brotli//:enc_headers",
50 "@org_brotli//:enc_sources",
51 "//org/brotli/wrapper/common:jni_src",
52 "//org/brotli/wrapper/dec:jni_src",
53 "//org/brotli/wrapper/enc:jni_src",
54 ],
55 deps = [
56 "@org_brotli//:brotli_inc",
57 ":jni_inc",
58 ],
59 linkshared = 1,
60)
61
62########################################################
63# WARNING: do not (transitively) depend on this target!
64########################################################
65cc_binary(
66 name = "brotli_jni_no_dictionary_data.dll",
67 srcs = [
68 "@org_brotli//:common_headers",
69 "@org_brotli//:common_sources",
70 "@org_brotli//:dec_headers",
71 "@org_brotli//:dec_sources",
72 "@org_brotli//:enc_headers",
73 "@org_brotli//:enc_sources",
74 "//org/brotli/wrapper/common:jni_src",
75 "//org/brotli/wrapper/dec:jni_src",
76 "//org/brotli/wrapper/enc:jni_src",
77 ],
78 defines = [
79 "BROTLI_EXTERNAL_DICTIONARY_DATA=",
80 ],
81 deps = [
82 "@org_brotli//:brotli_inc",
83 ":jni_inc",
84 ],
85 linkshared = 1,
86)