browser/app/moz.build
author Tiberius Oros <toros@mozilla.com>
Wed, 03 Oct 2018 09:39:01 +0300
changeset 495073 d770ea2a1b257febbbbe07a38163d66bdc47e1fd
parent 495036 db6b7ee0418703dab9ef0b1aa5bd7efc1d6b5e81
child 496624 2a635530dfa369e3ba186776ab6f8b698baea84a
permissions -rw-r--r--
Backed out 5 changesets (bug 1431441) for failing devtools at client/debugger/new/test/mochitest/browser_dbg_rr_breakpoints-01.js on OSX opt a=backout Backed out changeset 94a1d1d67191 (bug 1431441) Backed out changeset be7ec7438701 (bug 1431441) Backed out changeset db6b7ee04187 (bug 1431441) Backed out changeset f61ec0f140c2 (bug 1431441) Backed out changeset ac51f86f5cac (bug 1431441)

# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
# vim: set filetype=python:
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

with Files("**"):
    BUG_COMPONENT = ("Firefox", "General")

with Files("blocklist.xml"):
    BUG_COMPONENT = ("Toolkit", "Blocklist Implementation")

with Files("firefox.exe.manifest"):
    BUG_COMPONENT = ("Core", "Widget: Win32")
with Files("module.ver"):
    BUG_COMPONENT = ("Core", "Widget: Win32")
with Files("splash.rc"):
    BUG_COMPONENT = ("Core", "Widget: Win32")

with Files("macversion.py"):
    BUG_COMPONENT = ("Core", "Widget: Cocoa")
with Files("macbuild/**"):
    BUG_COMPONENT = ("Core", "Widget: Cocoa")

with Files("moz.build"):
    BUG_COMPONENT = ("Firefox Build System", "General")
with Files("Makefile.in"):
    BUG_COMPONENT = ("Firefox Build System", "General")

with Files("profile/channel-prefs.js"):
    BUG_COMPONENT = ("Firefox", "Installer")
with Files("profile/firefox.js"):
    BUG_COMPONENT = ("Firefox", "General")

if CONFIG['MOZ_NO_PIE_COMPAT']:
    GeckoProgram(CONFIG['MOZ_APP_NAME'] + '-bin')

    DIRS += ['no-pie']
else:
    GeckoProgram(CONFIG['MOZ_APP_NAME'])

SOURCES += [
    'nsBrowserApp.cpp',
]

# Neither channel-prefs.js nor firefox.exe want to end up in dist/bin/browser.
DIST_SUBDIR = ""

LOCAL_INCLUDES += [
    '!/build',
    '/toolkit/xre',
    '/xpcom/base',
    '/xpcom/build',
]

if CONFIG['LIBFUZZER']:
    USE_LIBS += [ 'fuzzer' ]
    LOCAL_INCLUDES += [
        '/tools/fuzzing/libfuzzer',
    ]

if CONFIG['ENABLE_GECKODRIVER']:
    DEFINES['MOZ_GECKODRIVER'] = True

if CONFIG['CC_TYPE'] in ('msvc', 'clang-cl'):
    # Always enter a Windows program through wmain, whether or not we're
    # a console application.
    WIN32_EXE_LDFLAGS += ['-ENTRY:wmainCRTStartup']

if CONFIG['OS_ARCH'] == 'WINNT':
    RCINCLUDE = 'splash.rc'
    DEFINES['MOZ_PHOENIX'] = True
    DIRS += [
        'winlauncher',
    ]
    USE_LIBS += [
        'winlauncher',
    ]
    LOCAL_INCLUDES += [
        '/browser/app/winlauncher',
    ]
    DELAYLOAD_DLLS += [
        'oleaut32.dll',
        'ole32.dll',
    ]

if CONFIG['MOZ_SANDBOX'] and CONFIG['OS_ARCH'] == 'WINNT':
    # For sandbox includes and the include dependencies those have
    LOCAL_INCLUDES += [
        '/security/sandbox/chromium',
        '/security/sandbox/chromium-shim',
    ]

    USE_LIBS += [
        'sandbox_s',
    ]

    DELAYLOAD_DLLS += [
        'winmm.dll',
        'user32.dll',
    ]

    if CONFIG['CC_TYPE'] == "msvc":
        CFLAGS += ['-guard:cf']
        CXXFLAGS += ['-guard:cf']
        LDFLAGS += ['-guard:cf']

# Control the default heap size.
# This is the heap returned by GetProcessHeap().
# As we use the CRT heap, the default size is too large and wastes VM.
#
# The default heap size is 1MB on Win32.
# The heap will grow if need be.
#
# Set it to 256k.  See bug 127069.
if CONFIG['OS_ARCH'] == 'WINNT' and CONFIG['CC_TYPE'] not in ('clang', 'gcc'):
    LDFLAGS += ['/HEAP:0x40000']

DisableStlWrapping()

if CONFIG['MOZ_LINKER']:
    OS_LIBS += CONFIG['MOZ_ZLIB_LIBS']

if CONFIG['HAVE_CLOCK_MONOTONIC']:
    OS_LIBS += CONFIG['REALTIME_LIBS']

if CONFIG['MOZ_LINUX_32_SSE2_STARTUP_ERROR']:
    DEFINES['MOZ_LINUX_32_SSE2_STARTUP_ERROR'] = True
    COMPILE_FLAGS['OS_CXXFLAGS'] = [
        f for f in COMPILE_FLAGS.get('OS_CXXFLAGS', [])
        if not f.startswith('-march=') and f not in ('-msse', '-msse2', '-mfpmath=sse')
    ] + [
        '-mno-sse', '-mno-sse2', '-mfpmath=387',
    ]

for icon in ('firefox', 'document', 'newwindow', 'newtab', 'pbmode'):
    DEFINES[icon.upper() + '_ICO'] = '"%s/%s/%s.ico"' % (
        TOPSRCDIR, CONFIG['MOZ_BRANDING_DIRECTORY'], icon)