xpcom/base/moz.build

Sat, 03 Jan 2015 20:18:00 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Sat, 03 Jan 2015 20:18:00 +0100
branch
TOR_BUG_3246
changeset 7
129ffea94266
permissions
-rw-r--r--

Conditionally enable double key logic according to:
private browsing mode or privacy.thirdparty.isolate preference and
implement in GetCookieStringCommon and FindCookie where it counts...
With some reservations of how to convince FindCookie users to test
condition and pass a nullptr when disabling double key logic.

     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     'nsIConsoleListener.idl',
     9     'nsIConsoleMessage.idl',
    10     'nsIConsoleService.idl',
    11     'nsICycleCollectorListener.idl',
    12     'nsIDebug.idl',
    13     'nsIDebug2.idl',
    14     'nsIErrorService.idl',
    15     'nsIException.idl',
    16     'nsIGZFileWriter.idl',
    17     'nsIInterfaceRequestor.idl',
    18     'nsIMemory.idl',
    19     'nsIMemoryInfoDumper.idl',
    20     'nsIMemoryReporter.idl',
    21     'nsIMessageLoop.idl',
    22     'nsIMutable.idl',
    23     'nsIProgrammingLanguage.idl',
    24     'nsISecurityConsoleMessage.idl',
    25     'nsIStatusReporter.idl',
    26     'nsISupports.idl',
    27     'nsIUUIDGenerator.idl',
    28     'nsIVersionComparator.idl',
    29     'nsIVisualEventTracer.idl',
    30     'nsIWeakReference.idl',
    31     'nsrootidl.idl',
    32 ]
    34 if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
    35     XPIDL_SOURCES += [
    36         'nsIMacUtils.idl',
    37     ]
    39 XPIDL_MODULE = 'xpcom_base'
    41 EXPORTS += [
    42     'ErrorList.h',
    43     'nsAgg.h',
    44     'nsAutoPtr.h',
    45     'nsAutoRef.h',
    46     'nsCom.h',
    47     'nscore.h',
    48     'nsCycleCollector.h',
    49     'nsDebugImpl.h',
    50     'nsError.h',
    51     'nsGZFileWriter.h',
    52     'nsIID.h',
    53     'nsInterfaceRequestorAgg.h',
    54     'nsISizeOf.h',
    55     'nsISupportsBase.h',
    56     'nsISupportsObsolete.h',
    57     'nsObjCExceptions.h',
    58     'nsStackWalk.h',
    59     'nsTraceRefcnt.h',
    60     'nsWeakPtr.h',
    61 ]
    63 if CONFIG['OS_ARCH'] == 'WINNT':
    64     EXPORTS += [
    65         'nsWindowsHelpers.h',
    66     ]
    67     if CONFIG['MOZ_DEBUG']:
    68         EXPORTS += ['pure.h']
    69         SOURCES += ['pure_api.c']
    71 EXPORTS.mozilla += [
    72     'AvailableMemoryTracker.h',
    73     'ClearOnShutdown.h',
    74     'CycleCollectedJSRuntime.h',
    75     'Debug.h',
    76     'nsMemoryInfoDumper.h',
    77     'StackWalk.h',
    78     'StaticMutex.h',
    79     'StaticPtr.h',
    80     'SystemMemoryReporter.h',
    81     'VisualEventTracer.h',
    82 ]
    84 # nsDebugImpl isn't unified because we disable PGO so that NS_ABORT_OOM isn't
    85 # optimized away oddly.
    86 SOURCES += [
    87     'nsDebugImpl.cpp',
    88 ]
    89 SOURCES['nsDebugImpl.cpp'].no_pgo = True
    91 UNIFIED_SOURCES += [
    92     'AvailableMemoryTracker.cpp',
    93     'ClearOnShutdown.cpp',
    94     'CycleCollectedJSRuntime.cpp',
    95     'Debug.cpp',
    96     'nsConsoleMessage.cpp',
    97     'nsConsoleService.cpp',
    98     'nsCycleCollector.cpp',
    99     'nsDumpUtils.cpp',
   100     'nsErrorService.cpp',
   101     'nsGZFileWriter.cpp',
   102     'nsInterfaceRequestorAgg.cpp',
   103     'nsMemoryImpl.cpp',
   104     'nsMemoryInfoDumper.cpp',
   105     'nsMemoryReporterManager.cpp',
   106     'nsMessageLoop.cpp',
   107     'nsSecurityConsoleMessage.cpp',
   108     'nsStatusReporterManager.cpp',
   109     'nsSystemInfo.cpp',
   110     'nsTraceRefcnt.cpp',
   111     'nsUUIDGenerator.cpp',
   112     'nsVersionComparatorImpl.cpp',
   113     'VisualEventTracer.cpp',
   114 ]
   116 # On Windows, NS_StackWalk will only work correctly if we have frame pointers available.
   117 # That will only be true for non-optimized builds, and for optimized builds with
   118 # --enable-profiling in the .mozconfig (which is turned on in Nightly by default.)
   119 # We exclude this file from other build configurations so that if somebody adds a
   120 # new usage of NS_StackWalk it will cause a link error, which is better than having
   121 # NS_StackWalk silently return garbage at runtime.
   122 if CONFIG['OS_TARGET'] != 'WINNT' or \
   123    (not CONFIG['MOZ_OPTIMIZE'] or CONFIG['MOZ_PROFILING'] or CONFIG['MOZ_DEBUG']):
   124     UNIFIED_SOURCES += [
   125         'nsStackWalk.cpp',
   126     ]
   128 if CONFIG['OS_ARCH'] == 'Linux':
   129     SOURCES += [
   130         'SystemMemoryReporter.cpp',
   131     ]
   133 if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
   134     SOURCES += [
   135         'nsMacUtilsImpl.cpp',
   136     ]
   137 elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'windows':
   138     SOURCES += [
   139         'nsCrashOnException.cpp',
   140     ]
   142 UNIFIED_SOURCES += [
   143     'nsErrorAssertsC.c',
   144 ]
   146 MSVC_ENABLE_PGO = True
   148 include('/ipc/chromium/chromium-config.mozbuild')
   150 FINAL_LIBRARY = 'xpcom_core'
   152 LOCAL_INCLUDES += [
   153     '../build',
   154     '/xpcom/ds',
   155 ]
   157 if CONFIG['MOZ_OPTIMIZE']:
   158     DEFINES['MOZ_OPTIMIZE'] = True
   160 if CONFIG['GNU_CC'] and CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android':
   161     # Work around bug 986928
   162     CXXFLAGS += ['-Wno-error=format']

mercurial