summaryrefslogtreecommitdiffstats
path: root/third_party/libevent/libevent.gyp
blob: 1e2ce2063459a21083227dcb3f0358fb4bd6cbb4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# Copyright (c) 2009 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# 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',
      ],
      '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' ] } ],
      ],
    },
  ],
}

# Local Variables:
# tab-width:2
# indent-tabs-mode:nil
# End:
# vim: set expandtab tabstop=2 shiftwidth=2: