# -*- Mode: python; 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/. GeckoProgram('jsapi-tests', linkage=None) UNIFIED_SOURCES += [ 'selfTest.cpp', 'testAddPropertyPropcache.cpp', 'testArgumentsObject.cpp', 'testArrayBuffer.cpp', 'testArrayBufferView.cpp', 'testBoundFunction.cpp', 'testBug604087.cpp', 'testCallArgs.cpp', 'testCallNonGenericMethodOnProxy.cpp', 'testChromeBuffer.cpp', 'testClassGetter.cpp', 'testCloneScript.cpp', 'testDateToLocaleString.cpp', 'testDebugger.cpp', 'testDeepFreeze.cpp', 'testDefineGetterSetterNonEnumerable.cpp', 'testDefineProperty.cpp', 'testDefinePropertyIgnoredAttributes.cpp', 'testDeflateStringToUTF8Buffer.cpp', 'testDifferentNewTargetInvokeConstructor.cpp', 'testEnclosingFunction.cpp', 'testErrorCopying.cpp', 'testException.cpp', 'testExternalArrayBuffer.cpp', 'testExternalStrings.cpp', 'testFindSCCs.cpp', 'testForceLexicalInitialization.cpp', 'testForOfIterator.cpp', 'testForwardSetProperty.cpp', 'testFreshGlobalEvalRedefinition.cpp', 'testFunctionBinding.cpp', 'testFunctionProperties.cpp', 'testGCAllocator.cpp', 'testGCCellPtr.cpp', 'testGCChunkPool.cpp', 'testGCExactRooting.cpp', 'testGCFinalizeCallback.cpp', 'testGCHeapPostBarriers.cpp', 'testGCHooks.cpp', 'testGCMarking.cpp', 'testGCOutOfMemory.cpp', 'testGCStoreBufferRemoval.cpp', 'testGCUniqueId.cpp', 'testGCWeakCache.cpp', 'testGCWeakRef.cpp', 'testGetPropertyDescriptor.cpp', 'testHashTable.cpp', 'testIndexToString.cpp', 'testIntern.cpp', 'testIntlAvailableLocales.cpp', 'testIntString.cpp', 'testIntTypesABI.cpp', 'testIsInsideNursery.cpp', 'testIteratorObject.cpp', 'testJSEvaluateScript.cpp', 'testLookup.cpp', 'testLooselyEqual.cpp', 'testMappedArrayBuffer.cpp', 'testMutedErrors.cpp', 'testNewObject.cpp', 'testNewTargetInvokeConstructor.cpp', 'testNullRoot.cpp', 'testObjectEmulatingUndefined.cpp', 'testOOM.cpp', 'testParseJSON.cpp', 'testPersistentRooted.cpp', 'testPreserveJitCode.cpp', 'testPrintf.cpp', 'testPrivateGCThingValue.cpp', 'testProfileStrings.cpp', 'testPromise.cpp', 'testPropCache.cpp', 'testRegExp.cpp', 'testResolveRecursion.cpp', 'tests.cpp', 'testSameValue.cpp', 'testSavedStacks.cpp', 'testScriptInfo.cpp', 'testScriptObject.cpp', 'testSetProperty.cpp', 'testSetPropertyIgnoringNamedGetter.cpp', 'testSharedImmutableStringsCache.cpp', 'testSourcePolicy.cpp', 'testStringBuffer.cpp', 'testStructuredClone.cpp', 'testSymbol.cpp', 'testThreadingConditionVariable.cpp', 'testThreadingExclusiveData.cpp', 'testThreadingMutex.cpp', 'testThreadingThread.cpp', 'testToIntWidth.cpp', 'testTypedArrays.cpp', 'testUbiNode.cpp', 'testUncaughtSymbol.cpp', 'testUTF8.cpp', 'testWasmLEB128.cpp', 'testWeakMap.cpp', 'testXDR.cpp', ] SOURCES += [ # There are clashing definitions of js::jit::AssemblerBuffer. 'testAssemblerBuffer.cpp', ] if CONFIG['ENABLE_ION']: UNIFIED_SOURCES += [ 'testJitDCEinGVN.cpp', 'testJitFoldsTo.cpp', 'testJitGVN.cpp', 'testJitMacroAssembler.cpp', 'testJitMoveEmitterCycles-mips32.cpp', 'testJitMoveEmitterCycles.cpp', 'testJitRangeAnalysis.cpp', 'testJitRegisterSet.cpp', 'testJitRValueAlloc.cpp', ] DEFINES['EXPORT_JS_API'] = True LOCAL_INCLUDES += [ '!..', '..', ] if CONFIG['MOZ_ICU_DATA_ARCHIVE']: # The ICU libraries linked into libmozjs will not include the ICU data, # so link it directly. USE_LIBS += ['icudata'] USE_LIBS += [ 'static:js', ] OS_LIBS += CONFIG['MOZ_ZLIB_LIBS'] if CONFIG['GNU_CXX']: CXXFLAGS += ['-Wno-shadow', '-Werror=format', '-fno-strict-aliasing'] # This is intended as a temporary workaround to enable VS2015. if CONFIG['_MSC_VER']: CXXFLAGS += ['-wd4312'] DEFINES['topsrcdir'] = '%s/js/src' % TOPSRCDIR OBJDIR_PP_FILES.js.src['jsapi-tests'] += ['jsapi-tests-gdb.py.in']