mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
fda82181a7
We're going to change how e.g. CFLAGS are printed out in backend.mk, and to fit that model, the data in the corresponding moz.build variables need to be straightened up.
135 lines
3.6 KiB
Python
135 lines
3.6 KiB
Python
# -*- Mode: python; c-basic-offset: 4; 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/.
|
|
|
|
# Any changes that affect Android need to be made in pie/moz.build as well.
|
|
|
|
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android':
|
|
Program(CONFIG['MOZ_CHILD_PROCESS_NAME'])
|
|
SOURCES += [
|
|
'MozillaRuntimeMainAndroid.cpp',
|
|
]
|
|
|
|
DIRS += ['pie']
|
|
else:
|
|
kwargs = {
|
|
'linkage': None,
|
|
}
|
|
if CONFIG['MOZ_SANDBOX'] and CONFIG['OS_ARCH'] == 'WINNT' and not CONFIG['MOZ_ASAN']:
|
|
kwargs['msvcrt'] = 'static'
|
|
if not CONFIG['GNU_CC']:
|
|
USE_LIBS += [
|
|
'mozalloc_staticruntime',
|
|
]
|
|
GeckoProgram(CONFIG['MOZ_CHILD_PROCESS_NAME'], **kwargs)
|
|
|
|
SOURCES += [
|
|
'MozillaRuntimeMain.cpp',
|
|
]
|
|
USE_LIBS += [
|
|
'nspr',
|
|
'xul',
|
|
]
|
|
|
|
include('/ipc/chromium/chromium-config.mozbuild')
|
|
|
|
LOCAL_INCLUDES += [
|
|
'/toolkit/xre',
|
|
'/xpcom/base',
|
|
]
|
|
|
|
# We link GMPLoader into plugin-container on desktop so that its code is
|
|
# covered by the desktop DRM vendor's voucher.
|
|
if CONFIG['OS_TARGET'] != 'Android':
|
|
SOURCES += [
|
|
'../../dom/media/gmp/GMPLoader.cpp',
|
|
]
|
|
|
|
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 += [
|
|
'rlz',
|
|
]
|
|
|
|
if CONFIG['MOZ_ASAN']:
|
|
USE_LIBS += [
|
|
'sandbox_s',
|
|
]
|
|
else:
|
|
USE_LIBS += [
|
|
'sandbox_staticruntime_s',
|
|
]
|
|
|
|
# clang-cl can't deal with this delay-load due to bug 1188045
|
|
# (also filed as https://llvm.org/bugs/show_bug.cgi?id=24291)
|
|
if not CONFIG['CLANG_CL']:
|
|
DELAYLOAD_DLLS += [
|
|
'nss3.dll',
|
|
'xul.dll'
|
|
]
|
|
|
|
DEFINES['HASH_NODE_ID_WITH_DEVICE_ID'] = 1;
|
|
SOURCES += [
|
|
'sha256.c',
|
|
]
|
|
|
|
if CONFIG['MOZ_SANDBOX'] and CONFIG['OS_TARGET'] in ('Linux', 'Android'):
|
|
USE_LIBS += [
|
|
'mozsandbox',
|
|
]
|
|
|
|
# gcc lto likes to put the top level asm in syscall.cc in a different partition
|
|
# from the function using it which breaks the build. Work around that by
|
|
# forcing there to be only one partition.
|
|
if '-flto' in CONFIG['OS_CXXFLAGS'] and not CONFIG['CLANG_CXX']:
|
|
LDFLAGS += ['--param lto-partitions=1']
|
|
|
|
if CONFIG['MOZ_SANDBOX'] and CONFIG['OS_TARGET'] == 'Darwin':
|
|
# For sandbox includes and the include dependencies those have
|
|
LOCAL_INCLUDES += [
|
|
'/security/sandbox/chromium',
|
|
'/security/sandbox/chromium-shim',
|
|
]
|
|
USE_LIBS += [
|
|
'mozsandbox',
|
|
'rlz',
|
|
]
|
|
|
|
DEFINES['HASH_NODE_ID_WITH_DEVICE_ID'] = 1;
|
|
SOURCES += [
|
|
'sha256.c',
|
|
]
|
|
|
|
if CONFIG['_MSC_VER']:
|
|
# Always enter a Windows program through wmain, whether or not we're
|
|
# a console application.
|
|
WIN32_EXE_LDFLAGS += ['-ENTRY:wmainCRTStartup']
|
|
|
|
LDFLAGS += CONFIG['MOZ_ALLOW_HEAP_EXECUTE_FLAGS']
|
|
|
|
# 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 not CONFIG['GNU_CC']:
|
|
LDFLAGS += ['/HEAP:0x40000']
|
|
|
|
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk':
|
|
OS_LIBS += [
|
|
'binder',
|
|
'utils',
|
|
]
|
|
|
|
if CONFIG['GNU_CXX']:
|
|
CXXFLAGS += ['-Wshadow']
|