Brian Silverman | aa65117 | 2015-09-26 17:39:06 -0400 | [diff] [blame] | 1 | licenses(['notice']) |
| 2 | |
Austin Schuh | 4f85729 | 2018-02-15 23:42:04 -0800 | [diff] [blame^] | 3 | load('//tools/build_rules:select.bzl', 'compiler_select', 'address_size_select') |
Austin Schuh | 23da18b | 2015-10-11 20:52:49 -0700 | [diff] [blame] | 4 | |
Brian Silverman | aa65117 | 2015-09-26 17:39:06 -0400 | [diff] [blame] | 5 | cc_library( |
| 6 | name = 'libevent', |
| 7 | visibility = ['//visibility:public'], |
| 8 | srcs = [ |
| 9 | 'select.c', |
| 10 | 'poll.c', |
| 11 | 'epoll.c', |
| 12 | 'signal.c', |
| 13 | |
| 14 | 'event.c', |
| 15 | 'evthread.c', |
| 16 | 'buffer.c', |
| 17 | 'bufferevent.c', |
| 18 | 'bufferevent_sock.c', |
| 19 | 'bufferevent_filter.c', |
| 20 | 'bufferevent_pair.c', |
| 21 | 'listener.c', |
| 22 | 'bufferevent_ratelim.c', |
| 23 | 'evmap.c', |
| 24 | 'log.c', |
| 25 | 'evutil.c', |
| 26 | 'evutil_rand.c', |
| 27 | 'strlcpy.c', |
| 28 | |
| 29 | 'event_tagging.c', |
| 30 | 'http.c', |
| 31 | 'evdns.c', |
| 32 | 'evrpc.c', |
| 33 | |
| 34 | 'evthread_pthread.c', |
| 35 | |
Brian Silverman | aa65117 | 2015-09-26 17:39:06 -0400 | [diff] [blame] | 36 | #'compat/sys/queue.h', |
| 37 | ] + glob([ |
| 38 | '*-internal.h', |
Brian Silverman | b2215d0 | 2015-11-23 19:10:15 -0500 | [diff] [blame] | 39 | 'include/event2/*.h', |
Brian Silverman | aa65117 | 2015-09-26 17:39:06 -0400 | [diff] [blame] | 40 | ]), |
Brian Silverman | b2215d0 | 2015-11-23 19:10:15 -0500 | [diff] [blame] | 41 | textual_hdrs = [ |
| 42 | 'arc4random.c', |
| 43 | ], |
Brian Silverman | aa65117 | 2015-09-26 17:39:06 -0400 | [diff] [blame] | 44 | hdrs = [ |
| 45 | 'event.h', |
| 46 | 'evhttp.h', |
| 47 | 'evdns.h', |
| 48 | 'evrpc.h', |
| 49 | 'evutil.h', |
| 50 | ], |
| 51 | includes = ['.', 'include'], |
Brian Silverman | e296d00 | 2015-10-12 02:28:11 -0400 | [diff] [blame] | 52 | defines = [ |
| 53 | '_EVENT_HAVE_ARPA_INET_H=1', |
| 54 | '_EVENT_HAVE_CLOCK_GETTIME=1', |
| 55 | '_EVENT_HAVE_DECL_CTL_KERN=1', |
| 56 | '_EVENT_HAVE_DECL_KERN_ARND=0', |
| 57 | '_EVENT_HAVE_DECL_KERN_RANDOM=1', |
| 58 | '_EVENT_HAVE_DECL_RANDOM_UUID=1', |
| 59 | '_EVENT_HAVE_DLFCN_H=1', |
| 60 | '_EVENT_HAVE_EPOLL=1', |
| 61 | '_EVENT_HAVE_EPOLL_CTL=1', |
| 62 | '_EVENT_HAVE_EVENTFD=1', |
| 63 | '_EVENT_HAVE_FCNTL=1', |
| 64 | '_EVENT_HAVE_FCNTL_H=1', |
| 65 | '_EVENT_HAVE_FD_MASK=1', |
| 66 | '_EVENT_HAVE_GETADDRINFO=1', |
| 67 | '_EVENT_HAVE_GETEGID=1', |
| 68 | '_EVENT_HAVE_GETEUID=1', |
| 69 | '_EVENT_HAVE_GETNAMEINFO=1', |
| 70 | '_EVENT_HAVE_GETPROTOBYNUMBER=1', |
| 71 | '_EVENT_HAVE_GETTIMEOFDAY=1', |
| 72 | '_EVENT_HAVE_INET_ATON=1', |
| 73 | '_EVENT_HAVE_INET_NTOP=1', |
| 74 | '_EVENT_HAVE_INET_PTON=1', |
| 75 | '_EVENT_HAVE_INTTYPES_H=1', |
| 76 | '_EVENT_HAVE_MEMORY_H=1', |
| 77 | '_EVENT_HAVE_MMAP=1', |
| 78 | '_EVENT_HAVE_NETDB_H=1', |
| 79 | '_EVENT_HAVE_NETINET_IN_H=1', |
| 80 | '_EVENT_HAVE_PIPE=1', |
| 81 | '_EVENT_HAVE_POLL=1', |
| 82 | '_EVENT_HAVE_POLL_H=1', |
| 83 | '_EVENT_HAVE_PTHREADS=1', |
| 84 | '_EVENT_HAVE_PUTENV=1', |
| 85 | '_EVENT_HAVE_SA_FAMILY_T=1', |
| 86 | '_EVENT_HAVE_SELECT=1', |
| 87 | '_EVENT_HAVE_SENDFILE=1', |
| 88 | '_EVENT_HAVE_SETENV=1', |
| 89 | '_EVENT_HAVE_SETFD=1', |
| 90 | '_EVENT_HAVE_SIGACTION=1', |
| 91 | '_EVENT_HAVE_SIGNAL=1', |
| 92 | '_EVENT_HAVE_SPLICE=1', |
| 93 | '_EVENT_HAVE_STDARG_H=1', |
| 94 | '_EVENT_HAVE_STDDEF_H=1', |
| 95 | '_EVENT_HAVE_STDINT_H=1', |
| 96 | '_EVENT_HAVE_STDLIB_H=1', |
| 97 | '_EVENT_HAVE_STRINGS_H=1', |
| 98 | '_EVENT_HAVE_STRING_H=1', |
| 99 | '_EVENT_HAVE_STRSEP=1', |
| 100 | '_EVENT_HAVE_STRTOK_R=1', |
| 101 | '_EVENT_HAVE_STRTOLL=1', |
| 102 | '_EVENT_HAVE_STRUCT_ADDRINFO=1', |
| 103 | '_EVENT_HAVE_STRUCT_IN6_ADDR=1', |
| 104 | '_EVENT_HAVE_STRUCT_IN6_ADDR_S6_ADDR16=1', |
| 105 | '_EVENT_HAVE_STRUCT_IN6_ADDR_S6_ADDR32=1', |
| 106 | '_EVENT_HAVE_STRUCT_SOCKADDR_IN6=1', |
| 107 | '_EVENT_HAVE_STRUCT_SOCKADDR_STORAGE=1', |
| 108 | '_EVENT_HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY=1', |
| 109 | '_EVENT_HAVE_SYSCTL=1', |
| 110 | '_EVENT_HAVE_SYS_EPOLL_H=1', |
| 111 | '_EVENT_HAVE_SYS_EVENTFD_H=1', |
| 112 | '_EVENT_HAVE_SYS_IOCTL_H=1', |
| 113 | '_EVENT_HAVE_SYS_MMAN_H=1', |
| 114 | '_EVENT_HAVE_SYS_PARAM_H=1', |
| 115 | '_EVENT_HAVE_SYS_QUEUE_H=1', |
| 116 | '_EVENT_HAVE_SYS_SELECT_H=1', |
| 117 | '_EVENT_HAVE_SYS_SENDFILE_H=1', |
| 118 | '_EVENT_HAVE_SYS_SOCKET_H=1', |
| 119 | '_EVENT_HAVE_SYS_STAT_H=1', |
| 120 | '_EVENT_HAVE_SYS_SYSCTL_H=1', |
| 121 | '_EVENT_HAVE_SYS_TIME_H=1', |
| 122 | '_EVENT_HAVE_SYS_TYPES_H=1', |
| 123 | '_EVENT_HAVE_SYS_UIO_H=1', |
| 124 | '_EVENT_HAVE_SYS_WAIT_H=1', |
Brian Silverman | e296d00 | 2015-10-12 02:28:11 -0400 | [diff] [blame] | 125 | '_EVENT_HAVE_TIMERADD=1', |
| 126 | '_EVENT_HAVE_TIMERCLEAR=1', |
| 127 | '_EVENT_HAVE_TIMERCMP=1', |
| 128 | '_EVENT_HAVE_TIMERISSET=1', |
| 129 | '_EVENT_HAVE_UINT16_T=1', |
| 130 | '_EVENT_HAVE_UINT32_T=1', |
| 131 | '_EVENT_HAVE_UINT64_T=1', |
| 132 | '_EVENT_HAVE_UINT8_T=1', |
| 133 | '_EVENT_HAVE_UINTPTR_T=1', |
| 134 | '_EVENT_HAVE_UMASK=1', |
| 135 | '_EVENT_HAVE_UNISTD_H=1', |
| 136 | '_EVENT_HAVE_UNSETENV=1', |
| 137 | '_EVENT_HAVE_VASPRINTF=1', |
Brian Silverman | e296d00 | 2015-10-12 02:28:11 -0400 | [diff] [blame] | 138 | '_EVENT_SIZEOF_INT=4', |
| 139 | '_EVENT_SIZEOF_LONG=8', |
| 140 | '_EVENT_SIZEOF_SHORT=2', |
| 141 | '_EVENT_STDC_HEADERS=1', |
| 142 | '_EVENT_TIME_WITH_SYS_TIME=1', |
| 143 | |
| 144 | '_EVENT_NUMERIC_VERSION=0x02001600', |
| 145 | '_EVENT_VERSION=\\"2.0.22-stable\\"', |
| 146 | ] + address_size_select({ |
| 147 | '32': [ |
| 148 | '_EVENT_SIZEOF_LONG_LONG=4', |
| 149 | '_EVENT_SIZEOF_OFF_T=4', |
| 150 | '_EVENT_SIZEOF_PTHREAD_T=4', |
| 151 | '_EVENT_SIZEOF_SIZE_T=4', |
| 152 | '_EVENT_SIZEOF_VOID_P=4', |
| 153 | ], |
| 154 | '64': [ |
| 155 | '_EVENT_SIZEOF_LONG_LONG=8', |
| 156 | '_EVENT_SIZEOF_OFF_T=8', |
| 157 | '_EVENT_SIZEOF_PTHREAD_T=8', |
| 158 | '_EVENT_SIZEOF_SIZE_T=8', |
| 159 | '_EVENT_SIZEOF_VOID_P=8', |
| 160 | ], |
| 161 | }), |
| 162 | |
Brian Silverman | aa65117 | 2015-09-26 17:39:06 -0400 | [diff] [blame] | 163 | copts = [ |
| 164 | '-Ithird_party/libevent/compat', |
| 165 | '-Ithird_party/libevent/include', |
Brian Silverman | f1cff39 | 2015-10-11 19:36:18 -0400 | [diff] [blame] | 166 | |
| 167 | # TODO(Brian): Fix the places in the code it uses char* as an intermediate |
| 168 | # type while doing offsetof stuff. |
| 169 | '-Wno-cast-align', |
| 170 | |
| 171 | '-Wno-unused-parameter', |
| 172 | '-Wno-format-nonliteral', |
| 173 | '-Wno-cast-qual', |
Brian Silverman | f1cff39 | 2015-10-11 19:36:18 -0400 | [diff] [blame] | 174 | '-Wno-unused-function', |
Austin Schuh | 23da18b | 2015-10-11 20:52:49 -0700 | [diff] [blame] | 175 | ] + compiler_select({ |
| 176 | 'gcc': [], |
| 177 | 'clang': ['-Wno-incompatible-pointer-types-discards-qualifiers'] |
| 178 | }), |
Brian Silverman | e296d00 | 2015-10-12 02:28:11 -0400 | [diff] [blame] | 179 | ) |