BUILD.gn 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. # Copyright 2021 The Chromium Authors. All rights reserved.
  2. # Use of this source code is governed by a BSD-style license that can be
  3. # found in the LICENSE file.
  4. import("//build/config/sanitizers/sanitizers.gni")
  5. config("libzip_config") {
  6. include_dirs = [ "src" ]
  7. cflags = [ "-Wno-implicit-function-declaration" ]
  8. }
  9. source_set("libzip_public_headers") {
  10. public = [
  11. "src/lib/zip.h",
  12. "src/lib/zipint.h",
  13. "src/zip_err_str.c",
  14. "src/zipconf.h",
  15. ]
  16. configs -= [ "//build/config/compiler:chromium_code" ]
  17. configs += [ "//build/config/compiler:no_chromium_code" ]
  18. public_configs = [ ":libzip_config" ]
  19. }
  20. static_library("libzip") {
  21. sources = [
  22. "src/config.h",
  23. "src/lib/zip.h",
  24. "src/lib/zip_add.c",
  25. "src/lib/zip_add_dir.c",
  26. "src/lib/zip_add_entry.c",
  27. "src/lib/zip_algorithm_deflate.c",
  28. "src/lib/zip_buffer.c",
  29. "src/lib/zip_close.c",
  30. "src/lib/zip_delete.c",
  31. "src/lib/zip_dir_add.c",
  32. "src/lib/zip_dirent.c",
  33. "src/lib/zip_discard.c",
  34. "src/lib/zip_entry.c",
  35. "src/lib/zip_error.c",
  36. "src/lib/zip_error_clear.c",
  37. "src/lib/zip_error_get.c",
  38. "src/lib/zip_error_get_sys_type.c",
  39. "src/lib/zip_error_strerror.c",
  40. "src/lib/zip_error_to_str.c",
  41. "src/lib/zip_extra_field.c",
  42. "src/lib/zip_extra_field_api.c",
  43. "src/lib/zip_fclose.c",
  44. "src/lib/zip_fdopen.c",
  45. "src/lib/zip_file_add.c",
  46. "src/lib/zip_file_error_clear.c",
  47. "src/lib/zip_file_error_get.c",
  48. "src/lib/zip_file_get_comment.c",
  49. "src/lib/zip_file_get_external_attributes.c",
  50. "src/lib/zip_file_get_offset.c",
  51. "src/lib/zip_file_rename.c",
  52. "src/lib/zip_file_replace.c",
  53. "src/lib/zip_file_set_comment.c",
  54. "src/lib/zip_file_set_encryption.c",
  55. "src/lib/zip_file_set_external_attributes.c",
  56. "src/lib/zip_file_set_mtime.c",
  57. "src/lib/zip_file_strerror.c",
  58. "src/lib/zip_fopen.c",
  59. "src/lib/zip_fopen_encrypted.c",
  60. "src/lib/zip_fopen_index.c",
  61. "src/lib/zip_fopen_index_encrypted.c",
  62. "src/lib/zip_fread.c",
  63. "src/lib/zip_fseek.c",
  64. "src/lib/zip_ftell.c",
  65. "src/lib/zip_get_archive_comment.c",
  66. "src/lib/zip_get_archive_flag.c",
  67. "src/lib/zip_get_encryption_implementation.c",
  68. "src/lib/zip_get_file_comment.c",
  69. "src/lib/zip_get_name.c",
  70. "src/lib/zip_get_num_entries.c",
  71. "src/lib/zip_get_num_files.c",
  72. "src/lib/zip_hash.c",
  73. "src/lib/zip_io_util.c",
  74. "src/lib/zip_libzip_version.c",
  75. "src/lib/zip_memdup.c",
  76. "src/lib/zip_mkstempm.c",
  77. "src/lib/zip_name_locate.c",
  78. "src/lib/zip_new.c",
  79. "src/lib/zip_open.c",
  80. "src/lib/zip_pkware.c",
  81. "src/lib/zip_progress.c",
  82. "src/lib/zip_random_unix.c",
  83. "src/lib/zip_rename.c",
  84. "src/lib/zip_replace.c",
  85. "src/lib/zip_set_archive_comment.c",
  86. "src/lib/zip_set_archive_flag.c",
  87. "src/lib/zip_set_default_password.c",
  88. "src/lib/zip_set_file_comment.c",
  89. "src/lib/zip_set_file_compression.c",
  90. "src/lib/zip_set_name.c",
  91. "src/lib/zip_source_accept_empty.c",
  92. "src/lib/zip_source_begin_write.c",
  93. "src/lib/zip_source_begin_write_cloning.c",
  94. "src/lib/zip_source_buffer.c",
  95. "src/lib/zip_source_call.c",
  96. "src/lib/zip_source_close.c",
  97. "src/lib/zip_source_commit_write.c",
  98. "src/lib/zip_source_compress.c",
  99. "src/lib/zip_source_crc.c",
  100. "src/lib/zip_source_error.c",
  101. "src/lib/zip_source_file_common.c",
  102. "src/lib/zip_source_file_stdio.c",
  103. "src/lib/zip_source_file_stdio_named.c",
  104. "src/lib/zip_source_free.c",
  105. "src/lib/zip_source_function.c",
  106. "src/lib/zip_source_get_file_attributes.c",
  107. "src/lib/zip_source_is_deleted.c",
  108. "src/lib/zip_source_layered.c",
  109. "src/lib/zip_source_open.c",
  110. "src/lib/zip_source_pkware_decode.c",
  111. "src/lib/zip_source_pkware_encode.c",
  112. "src/lib/zip_source_read.c",
  113. "src/lib/zip_source_remove.c",
  114. "src/lib/zip_source_rollback_write.c",
  115. "src/lib/zip_source_seek.c",
  116. "src/lib/zip_source_seek_write.c",
  117. "src/lib/zip_source_stat.c",
  118. "src/lib/zip_source_supports.c",
  119. "src/lib/zip_source_tell.c",
  120. "src/lib/zip_source_tell_write.c",
  121. "src/lib/zip_source_window.c",
  122. "src/lib/zip_source_write.c",
  123. "src/lib/zip_source_zip.c",
  124. "src/lib/zip_source_zip_new.c",
  125. "src/lib/zip_stat.c",
  126. "src/lib/zip_stat_index.c",
  127. "src/lib/zip_stat_init.c",
  128. "src/lib/zip_strerror.c",
  129. "src/lib/zip_string.c",
  130. "src/lib/zip_unchange.c",
  131. "src/lib/zip_unchange_all.c",
  132. "src/lib/zip_unchange_archive.c",
  133. "src/lib/zip_unchange_data.c",
  134. "src/lib/zip_utf-8.c",
  135. "src/lib/zipint.h",
  136. "src/zip_err_str.c",
  137. "src/zipconf.h",
  138. ]
  139. if (is_win) {
  140. sources -= [ "src/lib/zip_random_unix.c" ]
  141. sources += [ "src/lib/zip_random_win32.c" ]
  142. }
  143. deps = [ "//third_party/zlib" ]
  144. public_deps = [ ":libzip_public_headers" ]
  145. configs -= [ "//build/config/compiler:chromium_code" ]
  146. configs += [ "//build/config/compiler:no_chromium_code" ]
  147. public_configs = [ ":libzip_config" ]
  148. }