mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
357 lines
9.7 KiB
Python
357 lines
9.7 KiB
Python
# -*- Mode: python; c-basic-offset: 4; 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/.
|
|
|
|
DIRS += ['config']
|
|
|
|
if CONFIG['DEHYDRA_PATH']:
|
|
DIRS += ['analysis-tests']
|
|
|
|
if CONFIG['JS_NATIVE_EDITLINE']:
|
|
DIRS += ['editline']
|
|
|
|
# editline needs to get built before the shell
|
|
if not CONFIG['JS_DISABLE_SHELL']:
|
|
DIRS += ['shell']
|
|
|
|
TEST_DIRS += ['jsapi-tests', 'tests', 'gdb']
|
|
|
|
MODULE = 'js'
|
|
|
|
if CONFIG['JS_STANDALONE']:
|
|
LIBRARY_NAME = 'mozjs-%s.%s%s' % (CONFIG['MOZJS_MAJOR_VERSION'], CONFIG['MOZJS_MINOR_VERSION'], CONFIG['MOZJS_ALPHA'])
|
|
else:
|
|
LIBRARY_NAME = 'mozjs'
|
|
|
|
CONFIGURE_SUBST_FILES += ['devtools/rootAnalysis/Makefile']
|
|
|
|
# Changes to internal header files, used externally, massively slow down
|
|
# browser builds. Don't add new files here unless you know what you're
|
|
# doing!
|
|
EXPORTS += [
|
|
'js.msg',
|
|
'jsalloc.h',
|
|
'jsapi.h',
|
|
'jsbytecode.h',
|
|
'jsclist.h',
|
|
'jscpucfg.h',
|
|
'jsfriendapi.h',
|
|
'jsprf.h',
|
|
'jsprototypes.h',
|
|
'jsproxy.h',
|
|
'jspubtd.h',
|
|
'jstypes.h',
|
|
'jsversion.h',
|
|
'jswrapper.h',
|
|
'perf/jsperf.h',
|
|
]
|
|
|
|
# If you add a header here, add it to js/src/jsapi-tests/testIntTypesABI.cpp so
|
|
# that we ensure we don't over-expose our internal integer typedefs. Note that
|
|
# LegacyIntTypes.h below is deliberately exempted from this requirement.
|
|
EXPORTS.js += [
|
|
'../public/Anchor.h',
|
|
'../public/CallArgs.h',
|
|
'../public/CallNonGenericMethod.h',
|
|
'../public/CharacterEncoding.h',
|
|
'../public/Class.h',
|
|
'../public/Date.h',
|
|
'../public/GCAPI.h',
|
|
'../public/HashTable.h',
|
|
'../public/HeapAPI.h',
|
|
'../public/Id.h',
|
|
'../public/LegacyIntTypes.h',
|
|
'../public/MemoryMetrics.h',
|
|
'../public/OldDebugAPI.h',
|
|
'../public/ProfilingStack.h',
|
|
'../public/PropertyKey.h',
|
|
'../public/RequiredDefines.h',
|
|
'../public/RootingAPI.h',
|
|
'../public/StructuredClone.h',
|
|
'../public/Tracer.h',
|
|
'../public/TypeDecls.h',
|
|
'../public/Utility.h',
|
|
'../public/Value.h',
|
|
'../public/Vector.h',
|
|
]
|
|
|
|
CPP_SOURCES += [
|
|
'vm/ArgumentsObject.cpp',
|
|
'gc/Barrier.cpp',
|
|
'frontend/BytecodeCompiler.cpp',
|
|
'frontend/BytecodeEmitter.cpp',
|
|
'vm/CallNonGenericMethod.cpp',
|
|
'vm/CharacterEncoding.cpp',
|
|
'vm/DateTime.cpp',
|
|
'vm/Debugger.cpp',
|
|
'builtin/Eval.cpp',
|
|
'assembler/jit/ExecutableAllocator.cpp',
|
|
'frontend/FoldConstants.cpp',
|
|
'vm/ForkJoin.cpp',
|
|
'vm/GlobalObject.cpp',
|
|
'vm/Id.cpp',
|
|
'vm/Interpreter.cpp',
|
|
'builtin/Intl.cpp',
|
|
'gc/Iteration.cpp',
|
|
'ds/LifoAlloc.cpp',
|
|
'builtin/MapObject.cpp',
|
|
'gc/Marking.cpp',
|
|
'gc/Memory.cpp',
|
|
'vm/MemoryMetrics.cpp',
|
|
'builtin/Module.cpp',
|
|
'vm/Monitor.cpp',
|
|
'frontend/NameFunctions.cpp',
|
|
'gc/Nursery.cpp',
|
|
'builtin/Object.cpp',
|
|
'vm/ObjectImpl.cpp',
|
|
'vm/OldDebugAPI.cpp',
|
|
'yarr/PageBlock.cpp',
|
|
'builtin/ParallelArray.cpp',
|
|
'frontend/ParseMaps.cpp',
|
|
'frontend/ParseNode.cpp',
|
|
'frontend/Parser.cpp',
|
|
'vm/Probes.cpp',
|
|
'builtin/Profilers.cpp',
|
|
'vm/PropertyKey.cpp',
|
|
'vm/ProxyObject.cpp',
|
|
'builtin/RegExp.cpp',
|
|
'vm/RegExpObject.cpp',
|
|
'vm/RegExpStatics.cpp',
|
|
'gc/RootMarking.cpp',
|
|
'vm/Runtime.cpp',
|
|
'vm/SPSProfiler.cpp',
|
|
'vm/ScopeObject.cpp',
|
|
'vm/SelfHosting.cpp',
|
|
'vm/Shape.cpp',
|
|
'vm/Stack.cpp',
|
|
'gc/Statistics.cpp',
|
|
'gc/StoreBuffer.cpp',
|
|
'vm/String.cpp',
|
|
'vm/StringBuffer.cpp',
|
|
'vm/StructuredClone.cpp',
|
|
'builtin/TestingFunctions.cpp',
|
|
'vm/ThreadPool.cpp',
|
|
'frontend/TokenStream.cpp',
|
|
'gc/Tracer.cpp',
|
|
'builtin/TypeRepresentation.cpp',
|
|
'vm/TypedArrayObject.cpp',
|
|
'builtin/TypedObject.cpp',
|
|
'vm/Unicode.cpp',
|
|
'vm/Value.cpp',
|
|
'gc/Verifier.cpp',
|
|
'vm/Xdr.cpp',
|
|
'yarr/YarrCanonicalizeUCS2.cpp',
|
|
'yarr/YarrInterpreter.cpp',
|
|
'yarr/YarrPattern.cpp',
|
|
'yarr/YarrSyntaxChecker.cpp',
|
|
'gc/Zone.cpp',
|
|
'jsalloc.cpp',
|
|
'jsanalyze.cpp',
|
|
'jsapi.cpp',
|
|
'jsarray.cpp',
|
|
'jsatom.cpp',
|
|
'jsbool.cpp',
|
|
'jscntxt.cpp',
|
|
'jscompartment.cpp',
|
|
'jscrashreport.cpp',
|
|
'jsdate.cpp',
|
|
'jsdtoa.cpp',
|
|
'jsexn.cpp',
|
|
'jsfriendapi.cpp',
|
|
'jsfun.cpp',
|
|
'jsgc.cpp',
|
|
'jsinfer.cpp',
|
|
'jsiter.cpp',
|
|
'jsmath.cpp',
|
|
'jsnativestack.cpp',
|
|
'jsnum.cpp',
|
|
'jsobj.cpp',
|
|
'json.cpp',
|
|
'jsonparser.cpp',
|
|
'jsopcode.cpp',
|
|
'perf/jsperf.cpp',
|
|
'jsprf.cpp',
|
|
'jspropertytree.cpp',
|
|
'jsproxy.cpp',
|
|
'jsreflect.cpp',
|
|
'jsscript.cpp',
|
|
'jsstr.cpp',
|
|
'jsutil.cpp',
|
|
'jswatchpoint.cpp',
|
|
'jsweakmap.cpp',
|
|
'jsworkers.cpp',
|
|
'jswrapper.cpp',
|
|
'prmjtime.cpp',
|
|
'devtools/sharkctl.cpp',
|
|
]
|
|
|
|
if CONFIG['MOZ_INSTRUMENTS']:
|
|
CPP_SOURCES += [
|
|
'devtools/Instruments.cpp',
|
|
]
|
|
|
|
if CONFIG['ENABLE_TRACE_LOGGING']:
|
|
CPP_SOURCES += [
|
|
'TraceLogging.cpp',
|
|
]
|
|
|
|
if CONFIG['ENABLE_ION']:
|
|
CPP_SOURCES += [
|
|
'jit/AliasAnalysis.cpp',
|
|
'jit/AsmJS.cpp',
|
|
'jit/AsmJSLink.cpp',
|
|
'jit/AsmJSModule.cpp',
|
|
'jit/AsmJSSignalHandlers.cpp',
|
|
'jit/BacktrackingAllocator.cpp',
|
|
'jit/Bailouts.cpp',
|
|
'jit/BaselineBailouts.cpp',
|
|
'jit/shared/BaselineCompiler-shared.cpp',
|
|
'jit/BaselineCompiler.cpp',
|
|
'jit/BaselineFrame.cpp',
|
|
'jit/BaselineFrameInfo.cpp',
|
|
'jit/BaselineIC.cpp',
|
|
'jit/BaselineInspector.cpp',
|
|
'jit/BaselineJIT.cpp',
|
|
'jit/BitSet.cpp',
|
|
'jit/BytecodeAnalysis.cpp',
|
|
'jit/C1Spewer.cpp',
|
|
'jit/shared/CodeGenerator-shared.cpp',
|
|
'jit/CodeGenerator.cpp',
|
|
'jit/EdgeCaseAnalysis.cpp',
|
|
'jit/EffectiveAddressAnalysis.cpp',
|
|
'jit/Ion.cpp',
|
|
'jit/IonAnalysis.cpp',
|
|
'jit/IonBuilder.cpp',
|
|
'jit/IonCaches.cpp',
|
|
'jit/IonFrames.cpp',
|
|
'jit/IonMacroAssembler.cpp',
|
|
'jit/IonSpewer.cpp',
|
|
'jit/JSONSpewer.cpp',
|
|
'jit/PerfSpewer.cpp',
|
|
'jit/LICM.cpp',
|
|
'jit/LIR.cpp',
|
|
'jit/LinearScan.cpp',
|
|
'jit/LiveRangeAllocator.cpp',
|
|
'jit/shared/Lowering-shared.cpp',
|
|
'jit/Lowering.cpp',
|
|
'jit/MCallOptimize.cpp',
|
|
'jit/MIR.cpp',
|
|
'jit/MIRGraph.cpp',
|
|
'jit/MoveResolver.cpp',
|
|
'jit/ParallelSafetyAnalysis.cpp',
|
|
'jit/ParallelFunctions.cpp',
|
|
'jit/RangeAnalysis.cpp',
|
|
'jit/RegisterAllocator.cpp',
|
|
'jit/Safepoints.cpp',
|
|
'jit/Snapshots.cpp',
|
|
'jit/StupidAllocator.cpp',
|
|
'jit/TypePolicy.cpp',
|
|
'jit/TypeRepresentationSet.cpp',
|
|
'jit/UnreachableCodeElimination.cpp',
|
|
'jit/VMFunctions.cpp',
|
|
'jit/ValueNumbering.cpp',
|
|
]
|
|
if CONFIG['TARGET_CPU'].find('86') != -1:
|
|
CPP_SOURCES += [
|
|
'jit/shared/Assembler-x86-shared.cpp',
|
|
'jit/shared/BaselineCompiler-x86-shared.cpp',
|
|
'jit/shared/BaselineIC-x86-shared.cpp',
|
|
'jit/shared/CodeGenerator-x86-shared.cpp',
|
|
'jit/shared/IonFrames-x86-shared.cpp',
|
|
'jit/shared/Lowering-x86-shared.cpp',
|
|
'jit/shared/MoveEmitter-x86-shared.cpp',
|
|
]
|
|
if CONFIG['TARGET_CPU'] == 'x86_64':
|
|
CPP_SOURCES += [
|
|
'jit/x64/Assembler-x64.cpp',
|
|
'jit/x64/Bailouts-x64.cpp',
|
|
'jit/x64/BaselineCompiler-x64.cpp',
|
|
'jit/x64/BaselineIC-x64.cpp',
|
|
'jit/x64/CodeGenerator-x64.cpp',
|
|
'jit/x64/Lowering-x64.cpp',
|
|
'jit/x64/MacroAssembler-x64.cpp',
|
|
'jit/x64/Trampoline-x64.cpp',
|
|
]
|
|
else:
|
|
CPP_SOURCES += [
|
|
'jit/x86/Assembler-x86.cpp',
|
|
'jit/x86/Bailouts-x86.cpp',
|
|
'jit/x86/BaselineCompiler-x86.cpp',
|
|
'jit/x86/BaselineIC-x86.cpp',
|
|
'jit/x86/CodeGenerator-x86.cpp',
|
|
'jit/x86/Lowering-x86.cpp',
|
|
'jit/x86/MacroAssembler-x86.cpp',
|
|
'jit/x86/Trampoline-x86.cpp',
|
|
]
|
|
elif CONFIG['TARGET_CPU'].find('arm') != -1:
|
|
CPP_SOURCES += [
|
|
'jit/arm/Architecture-arm.cpp',
|
|
'jit/arm/Assembler-arm.cpp',
|
|
'jit/arm/Bailouts-arm.cpp',
|
|
'jit/arm/BaselineCompiler-arm.cpp',
|
|
'jit/arm/BaselineIC-arm.cpp',
|
|
'jit/arm/CodeGenerator-arm.cpp',
|
|
'jit/arm/IonFrames-arm.cpp',
|
|
'jit/arm/Lowering-arm.cpp',
|
|
'jit/arm/MacroAssembler-arm.cpp',
|
|
'jit/arm/MoveEmitter-arm.cpp',
|
|
'jit/arm/Trampoline-arm.cpp',
|
|
]
|
|
|
|
if CONFIG['OS_ARCH'] == 'WINNT':
|
|
CPP_SOURCES += [
|
|
'assembler/jit/ExecutableAllocatorWin.cpp',
|
|
'yarr/OSAllocatorWin.cpp',
|
|
]
|
|
elif CONFIG['OS_ARCH'] == 'OS2':
|
|
CPP_SOURCES += [
|
|
'assembler/jit/ExecutableAllocatorOS2.cpp',
|
|
'yarr/OSAllocatorOS2.cpp',
|
|
]
|
|
else:
|
|
CPP_SOURCES += [
|
|
'assembler/jit/ExecutableAllocatorPosix.cpp',
|
|
'yarr/OSAllocatorPosix.cpp',
|
|
]
|
|
|
|
if CONFIG['ENABLE_ION'] or CONFIG['ENABLE_YARR_JIT']:
|
|
CPP_SOURCES += [
|
|
'assembler/assembler/ARMAssembler.cpp',
|
|
'assembler/assembler/MacroAssemblerARM.cpp',
|
|
'assembler/assembler/MacroAssemblerX86Common.cpp',
|
|
]
|
|
|
|
if CONFIG['ENABLE_YARR_JIT']:
|
|
CPP_SOURCES += [
|
|
'yarr/YarrJIT.cpp'
|
|
]
|
|
|
|
if CONFIG['JS_HAS_CTYPES']:
|
|
CPP_SOURCES += [
|
|
'ctypes/CTypes.cpp',
|
|
'ctypes/Library.cpp',
|
|
]
|
|
|
|
if CONFIG['MOZ_VTUNE']:
|
|
CSRCS += [
|
|
'vtune/jitprofiling.c'
|
|
]
|
|
|
|
if CONFIG['HAVE_LINUX_PERF_EVENT_H']:
|
|
CPP_SOURCES += [
|
|
'perf/pm_linux.cpp'
|
|
]
|
|
else:
|
|
CPP_SOURCES += [
|
|
'perf/pm_stub.cpp'
|
|
]
|
|
|
|
MSVC_ENABLE_PGO = True
|
|
|
|
HOST_CPPSRCS += [
|
|
'jskwgen.cpp',
|
|
'jsoplengen.cpp',
|
|
]
|