Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
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 XPIDL_SOURCES += [
8 'nsIArray.idl',
9 'nsIAtom.idl',
10 'nsIAtomService.idl',
11 'nsICollection.idl',
12 'nsIEnumerator.idl',
13 'nsIHashable.idl',
14 'nsIINIParser.idl',
15 'nsIMutableArray.idl',
16 'nsIObserver.idl',
17 'nsIObserverService.idl',
18 'nsIPersistentProperties2.idl',
19 'nsIProperties.idl',
20 'nsIProperty.idl',
21 'nsIPropertyBag.idl',
22 'nsIPropertyBag2.idl',
23 'nsISerializable.idl',
24 'nsISimpleEnumerator.idl',
25 'nsIStringEnumerator.idl',
26 'nsISupportsArray.idl',
27 'nsISupportsIterators.idl',
28 'nsISupportsPrimitives.idl',
29 'nsIVariant.idl',
30 'nsIWritablePropertyBag.idl',
31 'nsIWritablePropertyBag2.idl',
32 ]
34 if CONFIG['OS_ARCH'] == 'WINNT':
35 XPIDL_SOURCES += [
36 'nsIWindowsRegKey.idl',
37 ]
38 EXPORTS += ['nsWindowsRegKey.h']
39 EXPORTS.mozilla += ['TimeStamp_windows.h']
40 SOURCES += [
41 'nsWindowsRegKey.cpp'
42 ]
44 XPIDL_MODULE = 'xpcom_ds'
46 EXPORTS += [
47 'nsArray.h',
48 'nsAtomService.h',
49 'nsCharSeparatedTokenizer.h',
50 'nsCheapSets.h',
51 'nsCRT.h',
52 'nsExpirationTracker.h',
53 'nsHashPropertyBag.h',
54 'nsHashtable.h',
55 'nsMathUtils.h',
56 'nsStaticAtom.h',
57 'nsStaticNameTable.h',
58 'nsStringEnumerator.h',
59 'nsSupportsArray.h',
60 'nsSupportsPrimitives.h',
61 'nsVariant.h',
62 'nsWhitespaceTokenizer.h',
63 ]
65 EXPORTS.mozilla += [
66 'CharTokenizer.h',
67 'StringBuilder.h',
68 'TimeStamp.h',
69 ]
71 UNIFIED_SOURCES += [
72 'nsArray.cpp',
73 'nsAtomService.cpp',
74 'nsAtomTable.cpp',
75 'nsCRT.cpp',
76 'nsHashPropertyBag.cpp',
77 'nsHashtable.cpp',
78 'nsINIParserImpl.cpp',
79 'nsObserverList.cpp',
80 'nsObserverService.cpp',
81 'nsProperties.cpp',
82 'nsStringEnumerator.cpp',
83 'nsSupportsArray.cpp',
84 'nsSupportsArrayEnumerator.cpp',
85 'nsSupportsPrimitives.cpp',
86 'nsVariant.cpp',
87 'TimeStamp.cpp',
88 ]
90 # These two files cannot be built in unified mode because they use the
91 # PL_ARENA_CONST_ALIGN_MASK macro with plarena.h.
92 SOURCES += [
93 'nsPersistentProperties.cpp',
94 'nsStaticNameTable.cpp',
95 ]
97 if CONFIG['OS_ARCH'] == 'WINNT':
98 SOURCES += [
99 'TimeStamp_windows.cpp',
100 ]
101 elif CONFIG['HAVE_CLOCK_MONOTONIC']:
102 SOURCES += [
103 'TimeStamp_posix.cpp',
104 ]
105 elif CONFIG['OS_ARCH'] == 'Darwin':
106 SOURCES += [
107 'TimeStamp_darwin.cpp',
108 ]
109 elif CONFIG['COMPILE_ENVIRONMENT']:
110 error('No TimeStamp implementation on this platform. Build will not succeed')
112 EXTRA_COMPONENTS += [
113 'nsINIProcessor.js',
114 'nsINIProcessor.manifest',
115 ]
117 FAIL_ON_WARNINGS = True
119 MSVC_ENABLE_PGO = True
121 LOCAL_INCLUDES += [
122 '../io',
123 ]
125 FINAL_LIBRARY = 'xpcom_core'