| Index: third_party/libevent/libevent.gyp
|
| diff --git a/third_party/libevent/libevent.gyp b/third_party/libevent/libevent.gyp
|
| index 20ac4d6465910aece8b50004ddb2931b685a1a81..6d03930faae0485b791e2dcc62a7fe5dd3418fbc 100644
|
| --- a/third_party/libevent/libevent.gyp
|
| +++ b/third_party/libevent/libevent.gyp
|
| @@ -3,54 +3,78 @@
|
| # found in the LICENSE file.
|
|
|
| {
|
| - 'targets': [
|
| - {
|
| - 'target_name': 'libevent',
|
| - 'product_name': 'event',
|
| - 'type': '<(library)',
|
| - 'sources': [
|
| - 'buffer.c',
|
| - 'evbuffer.c',
|
| - 'evdns.c',
|
| - 'event.c',
|
| - 'event_tagging.c',
|
| - 'evrpc.c',
|
| - 'evutil.c',
|
| - 'http.c',
|
| - 'log.c',
|
| - 'poll.c',
|
| - 'select.c',
|
| - 'signal.c',
|
| - 'strlcpy.c',
|
| + 'variables': {
|
| + 'use_system_libevent%': 0,
|
| + },
|
| + 'conditions': [
|
| + ['use_system_libevent==0', {
|
| + 'targets': [
|
| + {
|
| + 'target_name': 'libevent',
|
| + 'product_name': 'event',
|
| + 'type': '<(library)',
|
| + 'sources': [
|
| + 'buffer.c',
|
| + 'evbuffer.c',
|
| + 'evdns.c',
|
| + 'event.c',
|
| + 'event_tagging.c',
|
| + 'evrpc.c',
|
| + 'evutil.c',
|
| + 'http.c',
|
| + 'log.c',
|
| + 'poll.c',
|
| + 'select.c',
|
| + 'signal.c',
|
| + 'strlcpy.c',
|
| + ],
|
| + 'defines': [
|
| + 'HAVE_CONFIG_H',
|
| + ],
|
| + 'include_dirs': [
|
| + '.', # libevent includes some of its own headers with
|
| + # #include <...> instead of #include "..."
|
| + ],
|
| + 'conditions': [
|
| + # libevent has platform-specific implementation files. Since its
|
| + # native build uses autoconf, platform-specific config.h files are
|
| + # provided and live in platform-specific directories.
|
| + [ 'OS == "linux"', {
|
| + 'sources': [ 'epoll.c', 'epoll_sub.c' ],
|
| + 'include_dirs': [ 'linux' ],
|
| + 'link_settings': {
|
| + 'libraries': [
|
| + # We need rt for clock_gettime().
|
| + # TODO(port) Maybe on FreeBSD as well?
|
| + '-lrt',
|
| + ],
|
| + },
|
| + }],
|
| + [ 'OS == "mac" or OS == "freebsd"', {
|
| + 'sources': [ 'kqueue.c' ],
|
| + 'include_dirs': [ 'mac' ]
|
| + }],
|
| + ],
|
| + },
|
| ],
|
| - 'defines': [
|
| - 'HAVE_CONFIG_H',
|
| - ],
|
| - 'include_dirs': [
|
| - '.', # libevent includes some of its own headers with #include <...>
|
| - # instead of #include "..."
|
| - ],
|
| - 'conditions': [
|
| - # libevent has platform-specific implementation files. Since its
|
| - # native build uses autoconf, platform-specific config.h files are
|
| - # provided and live in platform-specific directories.
|
| - [ 'OS == "linux"', {
|
| - 'sources': [ 'epoll.c', 'epoll_sub.c' ],
|
| - 'include_dirs': [ 'linux' ],
|
| + }, { # use_system_libevent != 0
|
| + 'targets': [
|
| + {
|
| + 'target_name': 'libevent',
|
| + 'type': 'settings',
|
| + 'direct_dependent_settings': {
|
| + 'defines': [
|
| + 'USE_SYSTEM_LIBEVENT',
|
| + ],
|
| + },
|
| 'link_settings': {
|
| 'libraries': [
|
| - # We need rt for clock_gettime().
|
| - # TODO(port) Maybe on FreeBSD as well?
|
| - '-lrt',
|
| + '-levent',
|
| ],
|
| },
|
| - }],
|
| - [ 'OS == "mac" or OS == "freebsd"', {
|
| - 'sources': [ 'kqueue.c' ],
|
| - 'include_dirs': [ 'mac' ]
|
| - }],
|
| + }
|
| ],
|
| - },
|
| + }],
|
| ],
|
| }
|
|
|
|
|