BUILD 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. package(
  2. default_visibility = [
  3. "//src:__subpackages__",
  4. "//third_party/ijar:__subpackages__",
  5. ],
  6. )
  7. licenses(["notice"]) # Apache 2.0
  8. cc_library(
  9. name = "zip",
  10. srcs = [
  11. "zip.cc",
  12. ] + select({
  13. "//src:windows": [
  14. "mapped_file_windows.cc",
  15. ],
  16. "//conditions:default": [
  17. "mapped_file_unix.cc",
  18. ],
  19. }),
  20. hdrs = [
  21. "common.h",
  22. "mapped_file.h",
  23. "zip.h",
  24. ],
  25. visibility = [
  26. "//src:__subpackages__",
  27. "//third_party/ijar:__subpackages__",
  28. "//tools/test:__pkg__",
  29. ],
  30. deps = [
  31. ":platform_utils",
  32. ":zlib_client",
  33. ] + select({
  34. "//src:windows": [
  35. "//src/main/cpp/util:errors",
  36. "//src/main/cpp/util:filesystem",
  37. "//src/main/cpp/util:logging",
  38. "//src/main/cpp/util:strings",
  39. ],
  40. "//conditions:default": [
  41. ],
  42. }),
  43. )
  44. cc_library(
  45. name = "zlib_client",
  46. srcs = ["zlib_client.cc"],
  47. hdrs = [
  48. "common.h",
  49. "zlib_client.h",
  50. ],
  51. deps = ["//third_party/zlib"],
  52. )
  53. cc_library(
  54. name = "platform_utils",
  55. srcs = ["platform_utils.cc"],
  56. hdrs = [
  57. "common.h",
  58. "platform_utils.h",
  59. ],
  60. visibility = ["//visibility:private"],
  61. deps = [
  62. "//src/main/cpp/util:errors",
  63. "//src/main/cpp/util:filesystem",
  64. "//src/main/cpp/util:logging",
  65. ],
  66. )
  67. cc_binary(
  68. name = "zipper",
  69. srcs = ["zip_main.cc"],
  70. visibility = ["//visibility:public"],
  71. deps = [":zip"],
  72. )
  73. cc_binary(
  74. name = "ijar",
  75. srcs = [
  76. "classfile.cc",
  77. "ijar.cc",
  78. ],
  79. visibility = ["//visibility:public"],
  80. deps = [":zip"],
  81. )
  82. filegroup(
  83. name = "srcs",
  84. srcs = glob(["**"]) + ["//third_party/ijar/test:srcs"],
  85. visibility = ["//third_party:__pkg__"],
  86. )
  87. filegroup(
  88. name = "embedded_zipper_sources",
  89. srcs = [
  90. "zip.cc",
  91. "zip.h",
  92. "zip_main.cc",
  93. "common.h",
  94. "mapped_file.h",
  95. "platform_utils.cc",
  96. "platform_utils.h",
  97. "zlib_client.cc",
  98. "zlib_client.h",
  99. "BUILD",
  100. ] + select({
  101. "//src:windows": [
  102. "mapped_file_windows.cc",
  103. ],
  104. "//conditions:default": [
  105. "mapped_file_unix.cc",
  106. ],
  107. }),
  108. visibility = ["//visibility:public"],
  109. )
  110. filegroup(
  111. name = "transitive_sources",
  112. srcs = [":srcs"] + ["//src/main/cpp/util:embedded_java_tools"],
  113. visibility = ["//visibility:public"],
  114. )
  115. genrule(
  116. name = "ijar_transitive_srcs_zip",
  117. srcs = [
  118. ":ijar_srcs_zip",
  119. "//src:zlib_zip",
  120. "//src/main/cpp/util:cpp_util_with_deps_zip",
  121. ],
  122. outs = ["ijar_srcs_with_deps.zip"],
  123. cmd = "$(location //src:merge_zip_files) java_tools $@ $(SRCS)",
  124. tools = ["//src:merge_zip_files"],
  125. visibility = ["//visibility:public"],
  126. )
  127. genrule(
  128. name = "ijar_deploy_zip",
  129. srcs = [
  130. ":ijar",
  131. ":zipper",
  132. ],
  133. outs = ["ijar_deploy.zip"],
  134. cmd = "$(location //src:zip_files) java_tools/ijar $@ $(SRCS)",
  135. tools = ["//src:zip_files"],
  136. visibility = ["//visibility:public"],
  137. )
  138. genrule(
  139. name = "ijar_srcs_zip",
  140. srcs = glob(
  141. ["**"],
  142. exclude = ["BUILD"],
  143. ),
  144. outs = ["ijar_srcs.zip"],
  145. cmd = "$(location //src:zip_files) ijar $@ $(SRCS)",
  146. tools = ["//src:zip_files"],
  147. visibility = ["//visibility:private"],
  148. )