xpcom/ds/moz.build

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/xpcom/ds/moz.build	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,125 @@
     1.4 +# -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
     1.5 +# vim: set filetype=python:
     1.6 +# This Source Code Form is subject to the terms of the Mozilla Public
     1.7 +# License, v. 2.0. If a copy of the MPL was not distributed with this
     1.8 +# file, You can obtain one at http://mozilla.org/MPL/2.0/.
     1.9 +
    1.10 +XPIDL_SOURCES += [
    1.11 +    'nsIArray.idl',
    1.12 +    'nsIAtom.idl',
    1.13 +    'nsIAtomService.idl',
    1.14 +    'nsICollection.idl',
    1.15 +    'nsIEnumerator.idl',
    1.16 +    'nsIHashable.idl',
    1.17 +    'nsIINIParser.idl',
    1.18 +    'nsIMutableArray.idl',
    1.19 +    'nsIObserver.idl',
    1.20 +    'nsIObserverService.idl',
    1.21 +    'nsIPersistentProperties2.idl',
    1.22 +    'nsIProperties.idl',
    1.23 +    'nsIProperty.idl',
    1.24 +    'nsIPropertyBag.idl',
    1.25 +    'nsIPropertyBag2.idl',
    1.26 +    'nsISerializable.idl',
    1.27 +    'nsISimpleEnumerator.idl',
    1.28 +    'nsIStringEnumerator.idl',
    1.29 +    'nsISupportsArray.idl',
    1.30 +    'nsISupportsIterators.idl',
    1.31 +    'nsISupportsPrimitives.idl',
    1.32 +    'nsIVariant.idl',
    1.33 +    'nsIWritablePropertyBag.idl',
    1.34 +    'nsIWritablePropertyBag2.idl',
    1.35 +]
    1.36 +
    1.37 +if CONFIG['OS_ARCH'] == 'WINNT':
    1.38 +    XPIDL_SOURCES += [
    1.39 +        'nsIWindowsRegKey.idl',
    1.40 +    ]
    1.41 +    EXPORTS += ['nsWindowsRegKey.h']
    1.42 +    EXPORTS.mozilla += ['TimeStamp_windows.h']
    1.43 +    SOURCES += [
    1.44 +        'nsWindowsRegKey.cpp'
    1.45 +    ]
    1.46 +
    1.47 +XPIDL_MODULE = 'xpcom_ds'
    1.48 +
    1.49 +EXPORTS += [
    1.50 +    'nsArray.h',
    1.51 +    'nsAtomService.h',
    1.52 +    'nsCharSeparatedTokenizer.h',
    1.53 +    'nsCheapSets.h',
    1.54 +    'nsCRT.h',
    1.55 +    'nsExpirationTracker.h',
    1.56 +    'nsHashPropertyBag.h',
    1.57 +    'nsHashtable.h',
    1.58 +    'nsMathUtils.h',
    1.59 +    'nsStaticAtom.h',
    1.60 +    'nsStaticNameTable.h',
    1.61 +    'nsStringEnumerator.h',
    1.62 +    'nsSupportsArray.h',
    1.63 +    'nsSupportsPrimitives.h',
    1.64 +    'nsVariant.h',
    1.65 +    'nsWhitespaceTokenizer.h',
    1.66 +]
    1.67 +
    1.68 +EXPORTS.mozilla += [
    1.69 +    'CharTokenizer.h',
    1.70 +    'StringBuilder.h',
    1.71 +    'TimeStamp.h',
    1.72 +]
    1.73 +
    1.74 +UNIFIED_SOURCES += [
    1.75 +    'nsArray.cpp',
    1.76 +    'nsAtomService.cpp',
    1.77 +    'nsAtomTable.cpp',
    1.78 +    'nsCRT.cpp',
    1.79 +    'nsHashPropertyBag.cpp',
    1.80 +    'nsHashtable.cpp',
    1.81 +    'nsINIParserImpl.cpp',
    1.82 +    'nsObserverList.cpp',
    1.83 +    'nsObserverService.cpp',
    1.84 +    'nsProperties.cpp',
    1.85 +    'nsStringEnumerator.cpp',
    1.86 +    'nsSupportsArray.cpp',
    1.87 +    'nsSupportsArrayEnumerator.cpp',
    1.88 +    'nsSupportsPrimitives.cpp',
    1.89 +    'nsVariant.cpp',
    1.90 +    'TimeStamp.cpp',
    1.91 +]
    1.92 +
    1.93 +# These two files cannot be built in unified mode because they use the
    1.94 +# PL_ARENA_CONST_ALIGN_MASK macro with plarena.h.
    1.95 +SOURCES += [
    1.96 +    'nsPersistentProperties.cpp',
    1.97 +    'nsStaticNameTable.cpp',
    1.98 +]
    1.99 +
   1.100 +if CONFIG['OS_ARCH'] == 'WINNT':
   1.101 +    SOURCES += [
   1.102 +        'TimeStamp_windows.cpp',
   1.103 +    ]
   1.104 +elif CONFIG['HAVE_CLOCK_MONOTONIC']:
   1.105 +    SOURCES += [
   1.106 +        'TimeStamp_posix.cpp',
   1.107 +    ]
   1.108 +elif CONFIG['OS_ARCH'] == 'Darwin':
   1.109 +    SOURCES += [
   1.110 +        'TimeStamp_darwin.cpp',
   1.111 +    ]
   1.112 +elif CONFIG['COMPILE_ENVIRONMENT']:
   1.113 +    error('No TimeStamp implementation on this platform.  Build will not succeed')
   1.114 +
   1.115 +EXTRA_COMPONENTS += [
   1.116 +    'nsINIProcessor.js',
   1.117 +    'nsINIProcessor.manifest',
   1.118 +]
   1.119 +
   1.120 +FAIL_ON_WARNINGS = True
   1.121 +
   1.122 +MSVC_ENABLE_PGO = True
   1.123 +
   1.124 +LOCAL_INCLUDES += [
   1.125 +    '../io',
   1.126 +]
   1.127 +
   1.128 +FINAL_LIBRARY = 'xpcom_core'

mercurial