diff options
Diffstat (limited to 'build')
-rw-r--r-- | build/autoconf/compiler-opts.m4 | 9 | ||||
-rw-r--r-- | build/autoconf/icu.m4 | 2 | ||||
-rw-r--r-- | build/mach_bootstrap.py | 1 | ||||
-rw-r--r-- | build/moz.configure/init.configure | 24 | ||||
-rw-r--r-- | build/moz.configure/memory.configure | 3 | ||||
-rw-r--r-- | build/moz.configure/old.configure | 9 | ||||
-rw-r--r-- | build/moz.configure/warnings.configure | 11 | ||||
-rw-r--r-- | build/moz.configure/windows.configure | 12 |
8 files changed, 61 insertions, 10 deletions
diff --git a/build/autoconf/compiler-opts.m4 b/build/autoconf/compiler-opts.m4 index 82d0b43fc..77c2e85b5 100644 --- a/build/autoconf/compiler-opts.m4 +++ b/build/autoconf/compiler-opts.m4 @@ -176,8 +176,13 @@ if test "$GNU_CC"; then CFLAGS="$CFLAGS -ffunction-sections -fdata-sections" CXXFLAGS="$CXXFLAGS -ffunction-sections -fdata-sections" fi - CFLAGS="$CFLAGS -fno-math-errno -msse2 -mfpmath=sse" - CXXFLAGS="$CXXFLAGS -fno-exceptions -fno-math-errno -msse2 -mfpmath=sse" + CFLAGS="$CFLAGS -fno-math-errno" + CXXFLAGS="$CXXFLAGS -fno-exceptions -fno-math-errno" + + if test "$CPU_ARCH" = "x86" -o "$CPU_ARCH" = "x86_64"; then + CFLAGS="$CFLAGS -msse2 -mfpmath=sse" + CXXFLAGS="$CXXFLAGS -msse2 -mfpmath=sse" + fi if test -z "$CLANG_CC"; then case "$CC_VERSION" in diff --git a/build/autoconf/icu.m4 b/build/autoconf/icu.m4 index 89c53c52c..d3cc3113d 100644 --- a/build/autoconf/icu.m4 +++ b/build/autoconf/icu.m4 @@ -35,7 +35,7 @@ if test -n "$USE_ICU"; then fi fi - version=`sed -n 's/^[[[:space:]]]*#[[:space:]]*define[[:space:]][[:space:]]*U_ICU_VERSION_MAJOR_NUM[[:space:]][[:space:]]*\([0-9][0-9]*\)[[:space:]]*$/\1/p' "$icudir/common/unicode/uvernum.h"` + version=`${TOOLCHAIN_PREFIX}sed -n 's/^[[[:space:]]]*#[[:space:]]*define[[:space:]][[:space:]]*U_ICU_VERSION_MAJOR_NUM[[:space:]][[:space:]]*\([0-9][0-9]*\)[[:space:]]*$/\1/p' "$icudir/common/unicode/uvernum.h"` if test x"$version" = x; then AC_MSG_ERROR([cannot determine icu version number from uvernum.h header file $lineno]) fi diff --git a/build/mach_bootstrap.py b/build/mach_bootstrap.py index bdf7c9b03..48a71c669 100644 --- a/build/mach_bootstrap.py +++ b/build/mach_bootstrap.py @@ -127,7 +127,6 @@ MACH_MODULES = [ 'tools/lint/mach_commands.py', 'tools/mach_commands.py', 'tools/power/mach_commands.py', - 'mobile/android/mach_commands.py', ] if os.path.exists('addon-sdk/mach_commands.py'): diff --git a/build/moz.configure/init.configure b/build/moz.configure/init.configure index 7664591ad..a275957b7 100644 --- a/build/moz.configure/init.configure +++ b/build/moz.configure/init.configure @@ -336,6 +336,8 @@ def split_triplet(triplet): canonical_os = canonical_kernel = 'NetBSD' elif os.startswith('openbsd'): canonical_os = canonical_kernel = 'OpenBSD' + elif os.startswith('solaris'): + canonical_os = canonical_kernel = 'SunOS' else: die('Unknown OS: %s' % os) @@ -569,6 +571,28 @@ def target_is_linux(target): set_define('XP_LINUX', target_is_linux) +@depends(target) +def target_is_solaris(target): + if target.kernel == 'SunOS': + return True + +set_define('XP_SOLARIS', target_is_solaris) + +@depends(target) +def target_is_sparc(target): + if target.cpu == 'sparc': + return True + +set_define('SPARC', target_is_sparc) + +@depends(target) +def target_is_sparc64(target): + if target.cpu == 'sparc64': + return True + +set_define('SPARC64', target_is_sparc64) + + # The application/project to build # ============================================================== option('--enable-application', nargs=1, env='MOZ_BUILD_APP', diff --git a/build/moz.configure/memory.configure b/build/moz.configure/memory.configure index 398413b62..1292d7273 100644 --- a/build/moz.configure/memory.configure +++ b/build/moz.configure/memory.configure @@ -58,6 +58,9 @@ def jemalloc_os_define(jemalloc, target): return 'MOZ_MEMORY_DARWIN' if target.kernel in ('kFreeBSD', 'FreeBSD', 'NetBSD'): return 'MOZ_MEMORY_BSD' + if target.kernel == 'SunOS': + return 'MOZ_MEMORY_SOLARIS' + die('--enable-jemalloc is not supported on %s', target.kernel) set_define(jemalloc_os_define, '1') diff --git a/build/moz.configure/old.configure b/build/moz.configure/old.configure index 20bde1eee..552019a13 100644 --- a/build/moz.configure/old.configure +++ b/build/moz.configure/old.configure @@ -157,7 +157,6 @@ def old_configure_options(*options): '--enable-accessibility', '--enable-address-sanitizer', '--enable-alsa', - '--enable-android-omx', '--enable-b2g-bt', '--enable-b2g-camera', '--enable-b2g-ril', @@ -206,7 +205,6 @@ def old_configure_options(*options): '--enable-nspr-build', '--enable-official-branding', '--enable-official-vendor', - '--enable-omx-plugin', '--enable-oom-breakpoint', '--enable-optimize', '--enable-parental-controls', @@ -217,6 +215,7 @@ def old_configure_options(*options): '--enable-pref-extensions', '--enable-private-build', '--enable-pulseaudio', + '--enable-sndio', '--enable-raw', '--enable-readline', '--enable-reflow-perf', @@ -243,6 +242,7 @@ def old_configure_options(*options): '--enable-universalchardet', '--enable-updater', '--enable-url-classifier', + '--enable-userinfo', '--enable-valgrind', '--enable-verify-mar', '--enable-webrtc', @@ -308,6 +308,11 @@ def old_configure_options(*options): '--enable-calendar', '--enable-incomplete-external-linkage', + # Below are configure flags used by Pale Moon + '--disable-browser-statusbar', + '--disable-sync', + '--disable-personas', + # Below are configure flags used by Basilisk '--disable-webextensions', ) diff --git a/build/moz.configure/warnings.configure b/build/moz.configure/warnings.configure index 273a41bd9..567814632 100644 --- a/build/moz.configure/warnings.configure +++ b/build/moz.configure/warnings.configure @@ -101,11 +101,22 @@ check_and_add_gcc_warning('-Wno-error=coverage-mismatch', when='MOZ_PGO') # false positives during PGO check_and_add_gcc_warning('-Wno-error=free-nonheap-object', when='MOZ_PGO') +# Would be a pain to fix all occurrences, for very little gain +check_and_add_gcc_warning('-Wno-error=multistatement-macros') + # We use mix of both POSIX and Win32 printf format across the tree, so format # warnings are useless on mingw. check_and_add_gcc_warning('-Wno-format', when=depends(target)(lambda t: t.kernel == 'WINNT')) +# Disable a warning with GCC 7+. +# We are far from using C++17 and the impact of the warning will be +# limited to a potential public ABI. +# Currently only affecting js/ +check_and_add_gcc_warning('-Wno-noexcept-type', cxx_compiler, + when=depends(build_project) + (lambda build_project: build_project == 'js')) + # Please keep these last in this file add_old_configure_assignment('_WARNINGS_CFLAGS', warnings_cflags) add_old_configure_assignment('_WARNINGS_CXXFLAGS', warnings_cxxflags) diff --git a/build/moz.configure/windows.configure b/build/moz.configure/windows.configure index b9a3898a1..631049566 100644 --- a/build/moz.configure/windows.configure +++ b/build/moz.configure/windows.configure @@ -361,10 +361,10 @@ set_config('LIB', lib_path) option(env='MT', nargs=1, help='Path to the Microsoft Manifest Tool') -@depends_win(valid_windows_sdk_dir) +@depends_win(valid_windows_sdk_dir, valid_ucrt_sdk_dir) @imports(_from='os', _import='environ') @imports('platform') -def sdk_bin_path(valid_windows_sdk_dir): +def sdk_bin_path(valid_windows_sdk_dir, valid_ucrt_sdk_dir): if not valid_windows_sdk_dir: return @@ -373,13 +373,17 @@ def sdk_bin_path(valid_windows_sdk_dir): 'AMD64': 'x64', }.get(platform.machine()) + # From version 10.0.15063.0 onwards the bin path contains the version number. + versioned_bin = ('bin' if valid_ucrt_sdk_dir.version < '10.0.15063.0' + else os.path.join('bin', str(valid_ucrt_sdk_dir.version))) + result = [ environ['PATH'], - os.path.join(valid_windows_sdk_dir.path, 'bin', vc_host) + os.path.join(valid_windows_sdk_dir.path, versioned_bin, vc_host) ] if vc_host == 'x64': result.append( - os.path.join(valid_windows_sdk_dir.path, 'bin', 'x86')) + os.path.join(valid_windows_sdk_dir.path, versioned_bin, 'x86')) return result |