diff options
Diffstat (limited to 'comm/mail/app/moz.build')
-rw-r--r-- | comm/mail/app/moz.build | 132 |
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, + ) |