Wed, 31 Dec 2014 06:55:46 +0100
Added tag TORBROWSER_REPLICA for changeset 6474c204b198
1 # -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
2 # vim: set filetype=python:
3 # This Source Code Form is subject to the terms of the Mozilla Public
4 # License, v. 2.0. If a copy of the MPL was not distributed with this
5 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
7 EXPORTS.mozilla.net += [
8 'usrsctp.h',
9 ]
11 SOURCES += [
12 'netinet/sctp_asconf.c',
13 'netinet/sctp_auth.c',
14 'netinet/sctp_bsd_addr.c',
15 'netinet/sctp_callout.c',
16 'netinet/sctp_cc_functions.c',
17 'netinet/sctp_crc32.c',
18 'netinet/sctp_indata.c',
19 'netinet/sctp_input.c',
20 'netinet/sctp_output.c',
21 'netinet/sctp_pcb.c',
22 'netinet/sctp_peeloff.c',
23 'netinet/sctp_sha1.c',
24 'netinet/sctp_ss_functions.c',
25 'netinet/sctp_sysctl.c',
26 'netinet/sctp_timer.c',
27 'netinet/sctp_userspace.c',
28 'netinet/sctp_usrreq.c',
29 'netinet/sctputil.c',
30 'netinet6/sctp6_usrreq.c',
31 'user_environment.c',
32 'user_mbuf.c',
33 'user_recv_thread.c',
34 'user_socket.c',
35 ]
37 if CONFIG['OS_TARGET'] == 'Android':
38 SOURCES += [
39 'ifaddrs_android.cpp',
40 ]
42 LIBRARY_NAME = 'nksctp_s'
44 include('/ipc/chromium/chromium-config.mozbuild')
46 FINAL_LIBRARY = 'necko'
48 LOCAL_INCLUDES += [
49 '../../base/src',
50 '/content/base/src',
51 ]
53 for var in ('SCTP_SIMPLE_ALLOCATOR',
54 'SCTP_PROCESS_LEVEL_LOCKS', '__Userspace__', 'INET',
55 'CALLBACK_API', 'SCTP_DEBUG'):
56 DEFINES[var] = 1
58 # Android NDK r5c, used on the builders at the time of this writing, doesn't
59 # have the headers we need for IPv6
60 if CONFIG['OS_TARGET'] != 'Android':
61 DEFINES['INET6'] = 1
63 if CONFIG['OS_TARGET'] == 'WINNT':
64 DEFINES['__Userspace_os_Windows'] = 1
65 DEFINES['_LIB'] = 1
66 elif CONFIG['OS_TARGET'] == 'Android':
67 DEFINES['__Userspace_os_Linux'] = 1
68 else:
69 DEFINES['__Userspace_os_%s' % CONFIG['OS_TARGET']] = 1
71 if CONFIG['OS_TARGET'] == 'Darwin':
72 DEFINES['__APPLE_USE_RFC_2292'] = 1
73 DEFINES['__APPLE__'] = False
75 if CONFIG['OS_TARGET'] in ('Linux', 'Android'):
76 # to make sure that in6_pktinfo gets defined on all distros
77 DEFINES['_GNU_SOURCE'] = True
79 if CONFIG['OS_TARGET'] == 'FreeBSD':
80 DEFINES['__FreeBSD__'] = False
82 if CONFIG['OS_TARGET'] == 'NetBSD':
83 DEFINES['__NetBSD__'] = False
85 if CONFIG['OS_TARGET'] == 'OpenBSD':
86 DEFINES['__OpenBSD__'] = False
88 if CONFIG['OS_TARGET'] == 'DragonFly':
89 DEFINES['__DragonFly__'] = False
91 NO_PGO = True # Don't PGO