diff options
-rw-r--r-- | js/src/builtin/moz.build | 73 | ||||
-rw-r--r-- | js/src/moz.build | 64 |
2 files changed, 60 insertions, 77 deletions
diff --git a/js/src/builtin/moz.build b/js/src/builtin/moz.build deleted file mode 100644 index ebf9318db2..0000000000 --- a/js/src/builtin/moz.build +++ /dev/null @@ -1,73 +0,0 @@ -# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- -# 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/. - -include('../js-config.mozbuild') -include('../js-cxxflags.mozbuild') - -FINAL_LIBRARY = "js" - -# Includes should be relative to parent path -LOCAL_INCLUDES += ["!..", ".."] - -SOURCES += [ - 'AtomicsObject.cpp', - 'Eval.cpp', - 'Intl.cpp', - 'MapObject.cpp', - 'ModuleObject.cpp', - 'Object.cpp', - 'Profilers.cpp', - 'Promise.cpp', - 'Reflect.cpp', - 'ReflectParse.cpp', - 'RegExp.cpp', - 'SIMD.cpp', - 'SymbolObject.cpp', - 'TestingFunctions.cpp', - 'TypedObject.cpp', - 'WeakMapObject.cpp', - 'WeakSetObject.cpp', -] - -if CONFIG['_MSC_VER']: - if CONFIG['CPU_ARCH'] == 'x86': - SOURCES['RegExp.cpp'].no_pgo = True # Bug 772303 - -# Prepare self-hosted JS code for embedding -GENERATED_FILES += [('selfhosted.out.h', 'selfhosted.js')] -selfhosted = GENERATED_FILES[('selfhosted.out.h', 'selfhosted.js')] -selfhosted.script = 'embedjs.py:generate_selfhosted' -selfhosted.inputs = [ - '../js.msg', - 'TypedObjectConstants.h', - 'SelfHostingDefines.h', - 'Utilities.js', - 'Array.js', - 'AsyncIteration.js', - 'Classes.js', - 'Date.js', - 'Error.js', - 'Function.js', - 'Generator.js', - 'Intl.js', - 'IntlData.js', - 'Iterator.js', - 'Map.js', - 'Module.js', - 'Number.js', - 'Object.js', - 'Promise.js', - 'Reflect.js', - 'RegExp.js', - 'RegExpGlobalReplaceOpt.h.js', - 'RegExpLocalReplaceOpt.h.js', - 'String.js', - 'Set.js', - 'Sorting.js', - 'TypedArray.js', - 'TypedObject.js', - 'WeakMap.js', - 'WeakSet.js', -] diff --git a/js/src/moz.build b/js/src/moz.build index 22b8d01992..93e1a4ec50 100644 --- a/js/src/moz.build +++ b/js/src/moz.build @@ -7,9 +7,7 @@ include('js-config.mozbuild') include('js-cxxflags.mozbuild') include('js-testing.mozbuild') -DIRS += [ - 'builtin', -] +FILES_PER_UNIFIED_FILE = 6 if CONFIG['JS_BUNDLED_EDITLINE']: DIRS += ['editline'] @@ -117,6 +115,22 @@ EXPORTS.js += [ ] SOURCES += [ + 'builtin/AtomicsObject.cpp', + 'builtin/Eval.cpp', + 'builtin/Intl.cpp', + 'builtin/MapObject.cpp', + 'builtin/ModuleObject.cpp', + 'builtin/Object.cpp', + 'builtin/Profilers.cpp', + 'builtin/Promise.cpp', + 'builtin/Reflect.cpp', + 'builtin/ReflectParse.cpp', + 'builtin/SIMD.cpp', + 'builtin/SymbolObject.cpp', + 'builtin/TestingFunctions.cpp', + 'builtin/TypedObject.cpp', + 'builtin/WeakMapObject.cpp', + 'builtin/WeakSetObject.cpp', 'devtools/sharkctl.cpp', 'ds/LifoAlloc.cpp', 'ds/MemoryProtectionExceptionHandler.cpp', @@ -331,6 +345,8 @@ SOURCES += [ # jsarray.cpp and jsatom.cpp cannot be built in unified mode because # xpcshell is broken during packaging when compiled with gcc-4.8.2 +# builtin/RegExp.cpp cannot be built in unified mode because it is built +# without PGO # frontend/Parser.cpp cannot be built in unified mode because of explicit # template instantiations. # jsdtoa.cpp cannot be built in unified mode because we want to suppress @@ -343,6 +359,7 @@ SOURCES += [ # instantiations may or may not be needed depending on what it gets bundled # with. SOURCES += [ + 'builtin/RegExp.cpp', 'frontend/Parser.cpp', 'gc/StoreBuffer.cpp', 'jsarray.cpp', @@ -602,7 +619,9 @@ USE_LIBS += [ if CONFIG['_MSC_VER']: - if CONFIG['CPU_ARCH'] == 'x86_64' and CONFIG['JS_HAS_CTYPES']: + if CONFIG['CPU_ARCH'] == 'x86': + SOURCES['builtin/RegExp.cpp'].no_pgo = True # Bug 772303 + elif CONFIG['CPU_ARCH'] == 'x86_64' and CONFIG['JS_HAS_CTYPES']: SOURCES['ctypes/CTypes.cpp'].no_pgo = True # Bug 810661 if CONFIG['OS_ARCH'] not in ('WINNT'): @@ -628,6 +647,43 @@ NO_EXPAND_LIBS = True DIST_INSTALL = True +# Prepare self-hosted JS code for embedding +GENERATED_FILES += [('selfhosted.out.h', 'selfhosted.js')] +selfhosted = GENERATED_FILES[('selfhosted.out.h', 'selfhosted.js')] +selfhosted.script = 'builtin/embedjs.py:generate_selfhosted' +selfhosted.inputs = [ + 'js.msg', + 'builtin/TypedObjectConstants.h', + 'builtin/SelfHostingDefines.h', + 'builtin/Utilities.js', + 'builtin/Array.js', + 'builtin/AsyncIteration.js', + 'builtin/Classes.js', + 'builtin/Date.js', + 'builtin/Error.js', + 'builtin/Function.js', + 'builtin/Generator.js', + 'builtin/Intl.js', + 'builtin/IntlData.js', + 'builtin/Iterator.js', + 'builtin/Map.js', + 'builtin/Module.js', + 'builtin/Number.js', + 'builtin/Object.js', + 'builtin/Promise.js', + 'builtin/Reflect.js', + 'builtin/RegExp.js', + 'builtin/RegExpGlobalReplaceOpt.h.js', + 'builtin/RegExpLocalReplaceOpt.h.js', + 'builtin/String.js', + 'builtin/Set.js', + 'builtin/Sorting.js', + 'builtin/TypedArray.js', + 'builtin/TypedObject.js', + 'builtin/WeakMap.js', + 'builtin/WeakSet.js' +] + # Suppress warnings in third-party code. # We are keeping this in the main moz.build because it is file specific if CONFIG['CLANG_CXX'] or CONFIG['GNU_CXX']: |