80 lines
2 KiB
Python
80 lines
2 KiB
Python
# -*- 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/.
|
|
|
|
GeckoProgram("xpcshell", linkage="dependent")
|
|
|
|
SOURCES += [
|
|
"xpcshell.cpp",
|
|
]
|
|
|
|
if CONFIG["FUZZING_INTERFACES"]:
|
|
if CONFIG["LIBFUZZER"]:
|
|
USE_LIBS += ["fuzzer"]
|
|
else:
|
|
USE_LIBS += ["fuzzer-interface"]
|
|
|
|
if CONFIG["MOZ_WIDGET_TOOLKIT"] == "cocoa":
|
|
SOURCES += [
|
|
"xpcshellMacUtils.mm",
|
|
]
|
|
|
|
include("/ipc/chromium/chromium-config.mozbuild")
|
|
|
|
LOCAL_INCLUDES += [
|
|
"/toolkit/xre",
|
|
]
|
|
|
|
if CONFIG["CC_TYPE"] == "clang-cl":
|
|
# Always enter a Windows program through wmain, whether or not we're
|
|
# a console application.
|
|
WIN32_EXE_LDFLAGS += ["-ENTRY:wmainCRTStartup"]
|
|
|
|
# DELAYLOAD_DLLS in this block ensure that the DLL blocklist initializes
|
|
if CONFIG["OS_ARCH"] == "WINNT":
|
|
if CONFIG["MOZ_SANDBOX"]:
|
|
# For sandbox includes and the include dependencies those have
|
|
LOCAL_INCLUDES += [
|
|
"/security/sandbox/chromium",
|
|
"/security/sandbox/chromium-shim",
|
|
]
|
|
|
|
OS_LIBS += [
|
|
"advapi32",
|
|
"user32",
|
|
"version",
|
|
"winmm",
|
|
]
|
|
|
|
USE_LIBS += [
|
|
"sandbox_s",
|
|
]
|
|
|
|
DELAYLOAD_DLLS += [
|
|
"winmm.dll",
|
|
"user32.dll",
|
|
]
|
|
|
|
OS_LIBS += [
|
|
"ntdll",
|
|
]
|
|
|
|
DELAYLOAD_DLLS += [
|
|
"xul.dll",
|
|
]
|
|
|
|
# Don't build xpcshell.exe with CETCOMPAT, because we need to be able to
|
|
# only enable it for processes that are not using JIT in xul.dll.
|
|
LINK_FLAGS["CETCOMPAT"] = []
|
|
|
|
if CONFIG["OS_TARGET"] == "Darwin":
|
|
OS_LIBS += [
|
|
"-framework Foundation",
|
|
]
|
|
|
|
if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk":
|
|
CFLAGS += CONFIG["MOZ_GTK3_CFLAGS"]
|
|
CXXFLAGS += CONFIG["MOZ_GTK3_CFLAGS"]
|
|
OS_LIBS += CONFIG["MOZ_GTK3_LIBS"]
|