summaryrefslogtreecommitdiffstats
path: root/comm/mail/app/moz.build
diff options
context:
space:
mode:
Diffstat (limited to 'comm/mail/app/moz.build')
-rw-r--r--comm/mail/app/moz.build132
1 files changed, 132 insertions, 0 deletions
diff --git a/comm/mail/app/moz.build b/comm/mail/app/moz.build
new file mode 100644
index 0000000000..14c7789de7
--- /dev/null
+++ b/comm/mail/app/moz.build
@@ -0,0 +1,132 @@
+# 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/.
+
+if CONFIG["MOZ_MACBUNDLE_NAME"]:
+ DIRS += ["macbuild/Contents"]
+
+if CONFIG["MOZ_NO_PIE_COMPAT"]:
+ GeckoProgram(CONFIG["MOZ_APP_NAME"] + "-bin")
+
+ DIRS += ["no-pie"]
+else:
+ GeckoProgram(CONFIG["MOZ_APP_NAME"])
+
+USE_LIBS += ["mozglue"]
+SOURCES += ["nsMailApp.cpp"]
+LOCAL_INCLUDES += [
+ "!/build",
+ "/ipc/contentproc/",
+ "/toolkit/xre",
+ "/xpcom/base",
+ "/xpcom/build",
+]
+
+if CONFIG["LIBFUZZER"]:
+ USE_LIBS += ["fuzzer"]
+ LOCAL_INCLUDES += [
+ "/tools/fuzzing/libfuzzer",
+ ]
+
+if CONFIG["OS_ARCH"] == "WINNT":
+ RCINCLUDE = "splash.rc"
+ DEFINES["MOZ_THUNDERBIRD"] = True
+
+ # Don't build thunderbird.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_ARCH"] == "Darwin":
+ OS_LIBS += [
+ "-framework CoreFoundation",
+ ]
+
+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",
+ ]
+
+ OS_LIBS += [
+ "version",
+ ]
+
+ USE_LIBS += [
+ "sandbox_s",
+ ]
+
+ OS_LIBS += [
+ "advapi32",
+ "winmm",
+ "user32",
+ ]
+
+ DELAYLOAD_DLLS += [
+ "winmm.dll",
+ "user32.dll",
+ ]
+
+if CONFIG["OS_ARCH"] == "WINNT":
+ OS_LIBS += [
+ "ntdll",
+ ]
+
+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"]
+
+# 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"] in ("msvc", "clang-cl"):
+ LDFLAGS += ["/HEAP:0x40000"]
+
+DisableStlWrapping()
+
+if CONFIG["MOZ_LINKER"]:
+ OS_LIBS += CONFIG["MOZ_ZLIB_LIBS"]
+
+if CONFIG["HAVE_CLOCK_MONOTONIC"]:
+ OS_LIBS += CONFIG["REALTIME_LIBS"]
+
+DEFINES["APP_VERSION"] = CONFIG["MOZ_APP_VERSION"]
+
+if CONFIG["MOZILLA_OFFICIAL"]:
+ DEFINES["MOZILLA_OFFICIAL"] = True
+
+if CONFIG["MOZ_GPSD"]:
+ DEFINES["MOZ_GPSD"] = True
+
+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",
+ ]
+
+JS_PREFERENCE_PP_FILES += [
+ "profile/all-thunderbird.js",
+]
+
+DIRS += ["settings"]
+
+for icon in ("messengerWindow", "newmail", "writeMessage", "addressbook"):
+ DEFINES[icon.upper() + "_ICO"] = '"%s/%s/%s.ico"' % (
+ TOPSRCDIR,
+ CONFIG["MOZ_BRANDING_DIRECTORY"],
+ icon,
+ )