Blink roll 25b6bd3a7a131ffe68d809546ad1a20707915cdc:3a503f41ae42e5b79cfcd2ff10e65afde...
[chromium-blink-merge.git] / third_party / libevent / libevent.gyp
bloba785d34695fa2c4d280d771939489883ae97b454
1 # Copyright (c) 2012 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.
6   'targets': [
7     {
8       'target_name': 'libevent',
9       'product_name': 'event',
10       'type': 'static_library',
11       'toolsets': ['host', 'target'],
12       'sources': [
13         'buffer.c',
14         'evbuffer.c',
15         'evdns.c',
16         'event.c',
17         'event_tagging.c',
18         'evrpc.c',
19         'evutil.c',
20         'http.c',
21         'log.c',
22         'poll.c',
23         'select.c',
24         'signal.c',
25         'strlcpy.c',
26       ],
27       'defines': [
28         'HAVE_CONFIG_H',
29       ],
30       'conditions': [
31         # libevent has platform-specific implementation files.  Since its
32         # native build uses autoconf, platform-specific config.h files are
33         # provided and live in platform-specific directories.
34         [ 'OS == "linux" or (OS == "android" and _toolset == "host")', {
35           'sources': [ 'epoll.c' ],
36           'include_dirs': [ 'linux' ],
37           'link_settings': {
38             'libraries': [
39               # We need rt for clock_gettime().
40               # TODO(port) Maybe on FreeBSD as well?
41               '-lrt',
42             ],
43           },
44         }],
45         [ 'OS == "android" and _toolset == "target"', {
46           # On android, clock_gettime() is in libc.so, so no need to link librt.
47           'sources': [ 'epoll.c' ],
48           'include_dirs': [ 'android' ],
49         }],
50         [ 'OS == "mac" or OS == "ios" or os_bsd==1', {
51           'sources': [ 'kqueue.c' ],
52           'include_dirs': [ 'mac' ]
53         }],
54         [ 'OS == "solaris"', {
55           'sources': [ 'devpoll.c', 'evport.c' ],
56           'include_dirs': [ 'solaris' ]
57         }],
58       ],
59     },
60   ],