BUILD.bazel 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. package(
  2. default_visibility = ["//visibility:public"],
  3. )
  4. # >>> JNI headers
  5. genrule(
  6. name = "copy_link_jni_header",
  7. srcs = ["@bazel_tools//tools/jdk:jni_header"],
  8. outs = ["jni/jni.h"],
  9. cmd = "cp -f $< $@",
  10. )
  11. genrule(
  12. name = "copy_link_jni_md_header",
  13. srcs = select({
  14. "@bazel_tools//src/conditions:darwin": ["@bazel_tools//tools/jdk:jni_md_header-darwin"],
  15. "@bazel_tools//src/conditions:freebsd": ["@bazel_tools//tools/jdk:jni_md_header-freebsd"],
  16. "@bazel_tools//src/conditions:openbsd": ["@bazel_tools//tools/jdk:jni_md_header-openbsd"],
  17. "@bazel_tools//src/conditions:windows": ["@bazel_tools//tools/jdk:jni_md_header-windows"],
  18. "//conditions:default": ["@bazel_tools//tools/jdk:jni_md_header-linux"],
  19. }),
  20. outs = ["jni/jni_md.h"],
  21. cmd = "cp -f $< $@",
  22. )
  23. cc_library(
  24. name = "jni_inc",
  25. hdrs = [
  26. ":jni/jni.h",
  27. ":jni/jni_md.h",
  28. ],
  29. includes = ["jni"],
  30. )
  31. # <<< JNI headers
  32. genrule(
  33. name = "license",
  34. srcs = ["@org_brotli//:LICENSE"],
  35. outs = ["META-INF/LICENSE"],
  36. cmd = "cp -f $< $@",
  37. )
  38. ########################################################
  39. # WARNING: do not (transitively) depend on this target!
  40. ########################################################
  41. cc_binary(
  42. name = "brotli_jni.dll",
  43. srcs = [
  44. "//org/brotli/wrapper/common:jni_src",
  45. "//org/brotli/wrapper/dec:jni_src",
  46. "//org/brotli/wrapper/enc:jni_src",
  47. "@org_brotli//:common_headers",
  48. "@org_brotli//:common_sources",
  49. "@org_brotli//:dec_headers",
  50. "@org_brotli//:dec_sources",
  51. "@org_brotli//:enc_headers",
  52. "@org_brotli//:enc_sources",
  53. ],
  54. linkshared = 1,
  55. deps = [
  56. ":jni_inc",
  57. "@org_brotli//:brotli_inc",
  58. ],
  59. )
  60. ########################################################
  61. # WARNING: do not (transitively) depend on this target!
  62. ########################################################
  63. cc_binary(
  64. name = "brotli_jni_no_dictionary_data.dll",
  65. srcs = [
  66. "//org/brotli/wrapper/common:jni_src",
  67. "//org/brotli/wrapper/dec:jni_src",
  68. "//org/brotli/wrapper/enc:jni_src",
  69. "@org_brotli//:common_headers",
  70. "@org_brotli//:common_sources",
  71. "@org_brotli//:dec_headers",
  72. "@org_brotli//:dec_sources",
  73. "@org_brotli//:enc_headers",
  74. "@org_brotli//:enc_sources",
  75. ],
  76. defines = [
  77. "BROTLI_EXTERNAL_DICTIONARY_DATA=",
  78. ],
  79. linkshared = 1,
  80. deps = [
  81. ":jni_inc",
  82. "@org_brotli//:brotli_inc",
  83. ],
  84. )