BUILD.gn 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. # Copyright 2016 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/android/config.gni")
  5. # In a separate config so that the -Wno flag shows up after -Wall.
  6. config("apr_warnings") {
  7. if (is_clang) {
  8. cflags = [
  9. # TODO(https://crbug.com/1347226): Investigate, fix.
  10. "-Wno-deprecated-declarations",
  11. # TODO(https://crbug.com/1343303): Remove once fix is rolled in.
  12. "-Wno-array-parameter",
  13. ]
  14. }
  15. }
  16. # Builds 'Apache Portable Runtime'. See http://apr.apache.org
  17. static_library("apr") {
  18. sources = [
  19. "src/atomic/unix/builtins.c",
  20. "src/atomic/unix/ia32.c",
  21. "src/atomic/unix/mutex.c",
  22. "src/atomic/unix/ppc.c",
  23. "src/atomic/unix/s390.c",
  24. "src/atomic/unix/solaris.c",
  25. "src/dso/unix/dso.c",
  26. "src/file_io/unix/buffer.c",
  27. "src/file_io/unix/copy.c",
  28. "src/file_io/unix/dir.c",
  29. "src/file_io/unix/fileacc.c",
  30. "src/file_io/unix/filedup.c",
  31. "src/file_io/unix/filepath.c",
  32. "src/file_io/unix/filepath_util.c",
  33. "src/file_io/unix/filestat.c",
  34. "src/file_io/unix/flock.c",
  35. "src/file_io/unix/fullrw.c",
  36. "src/file_io/unix/mktemp.c",
  37. "src/file_io/unix/open.c",
  38. "src/file_io/unix/pipe.c",
  39. "src/file_io/unix/readwrite.c",
  40. "src/file_io/unix/seek.c",
  41. "src/file_io/unix/tempdir.c",
  42. "src/include/apr_skiplist.h",
  43. "src/include/arch/apr_private_common.h",
  44. "src/include/arch/unix/apr_arch_atomic.h",
  45. "src/include/arch/unix/apr_arch_dso.h",
  46. "src/include/arch/unix/apr_arch_file_io.h",
  47. "src/include/arch/unix/apr_arch_global_mutex.h",
  48. "src/include/arch/unix/apr_arch_internal_time.h",
  49. "src/include/arch/unix/apr_arch_misc.h",
  50. "src/include/arch/unix/apr_arch_networkio.h",
  51. "src/include/arch/unix/apr_arch_poll_private.h",
  52. "src/include/arch/unix/apr_arch_proc_mutex.h",
  53. "src/include/arch/unix/apr_arch_shm.h",
  54. "src/include/arch/unix/apr_arch_thread_cond.h",
  55. "src/include/arch/unix/apr_arch_thread_mutex.h",
  56. "src/include/arch/unix/apr_arch_thread_rwlock.h",
  57. "src/include/arch/unix/apr_arch_threadproc.h",
  58. "src/include/arch/unix/apr_private.h",
  59. "src/locks/unix/global_mutex.c",
  60. "src/locks/unix/proc_mutex.c",
  61. "src/locks/unix/thread_cond.c",
  62. "src/locks/unix/thread_mutex.c",
  63. "src/locks/unix/thread_rwlock.c",
  64. "src/memory/unix/apr_pools.c",
  65. "src/misc/unix/charset.c",
  66. "src/misc/unix/env.c",
  67. "src/misc/unix/errorcodes.c",
  68. "src/misc/unix/getopt.c",
  69. "src/misc/unix/otherchild.c",
  70. "src/misc/unix/rand.c",
  71. "src/misc/unix/start.c",
  72. "src/misc/unix/version.c",
  73. "src/mmap/unix/common.c",
  74. "src/mmap/unix/mmap.c",
  75. "src/network_io/unix/inet_ntop.c",
  76. "src/network_io/unix/inet_pton.c",
  77. "src/network_io/unix/multicast.c",
  78. "src/network_io/unix/sendrecv.c",
  79. "src/network_io/unix/sockaddr.c",
  80. "src/network_io/unix/sockets.c",
  81. "src/network_io/unix/sockopt.c",
  82. "src/passwd/apr_getpass.c",
  83. "src/poll/unix/epoll.c",
  84. "src/poll/unix/kqueue.c",
  85. "src/poll/unix/poll.c",
  86. "src/poll/unix/pollcb.c",
  87. "src/poll/unix/pollset.c",
  88. "src/poll/unix/port.c",
  89. "src/poll/unix/select.c",
  90. "src/random/unix/apr_random.c",
  91. "src/random/unix/sha2.c",
  92. "src/random/unix/sha2.h",
  93. "src/random/unix/sha2_glue.c",
  94. "src/shmem/unix/shm.c",
  95. "src/strings/apr_cpystrn.c",
  96. "src/strings/apr_fnmatch.c",
  97. "src/strings/apr_snprintf.c",
  98. "src/strings/apr_strings.c",
  99. "src/strings/apr_strnatcmp.c",
  100. "src/strings/apr_strtok.c",
  101. "src/support/unix/waitio.c",
  102. "src/tables/apr_hash.c",
  103. "src/tables/apr_skiplist.c",
  104. "src/tables/apr_tables.c",
  105. "src/threadproc/unix/proc.c",
  106. "src/threadproc/unix/procsup.c",
  107. "src/threadproc/unix/signals.c",
  108. "src/threadproc/unix/thread.c",
  109. "src/threadproc/unix/threadpriv.c",
  110. "src/time/unix/time.c",
  111. "src/time/unix/timestr.c",
  112. "src/user/unix/groupinfo.c",
  113. "src/user/unix/userinfo.c",
  114. ]
  115. include_dirs = [
  116. "src/include",
  117. "src/include/arch/unix",
  118. ]
  119. configs -= [ "//build/config/compiler:chromium_code" ]
  120. configs += [
  121. "//build/config/compiler:no_chromium_code",
  122. # Must be after no_chromium_code so -Wno flags show up after -Wall.
  123. ":apr_warnings",
  124. ]
  125. # See https://crbug.com/1347085 --- older Android's NDK has different strerror_p.
  126. if (is_android && default_min_sdk_version < 23) {
  127. defines = [ "STRERROR_R_RC_INT" ]
  128. }
  129. }