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