gecko-dev/build/clang-plugin/tests/moz.build

87 строки
2.9 KiB
Python

# -*- 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/.
# dummy library name to avoid skipping building the sources here.
Library('clang-plugin-tests')
SOURCES += [
'TestAssertWithAssignment.cpp',
'TestBadImplicitConversionCtor.cpp',
'TestCanRunScript.cpp',
'TestCustomHeap.cpp',
'TestDanglingOnTemporary.cpp',
'TestExplicitOperatorBool.cpp',
'TestGlobalClass.cpp',
'TestHeapClass.cpp',
'TestInheritTypeAnnotationsFromTemplateArgs.cpp',
'TestKungFuDeathGrip.cpp',
'TestMultipleAnnotations.cpp',
'TestMustOverride.cpp',
'TestMustReturnFromCaller.cpp',
'TestMustUse.cpp',
'TestNANTestingExpr.cpp',
'TestNANTestingExprC.c',
'TestNeedsNoVTableType.cpp',
'TestNoAddRefReleaseOnReturn.cpp',
'TestNoArithmeticExprInArgument.cpp',
'TestNoAutoType.cpp',
'TestNoDuplicateRefCntMember.cpp',
'TestNoExplicitMoveConstructor.cpp',
'TestNoNewThreadsChecker.cpp',
'TestNonHeapClass.cpp',
'TestNonMemMovable.cpp',
'TestNonMemMovableStd.cpp',
'TestNonMemMovableStdAtomic.cpp',
'TestNonParameterChecker.cpp',
'TestNonTemporaryClass.cpp',
'TestNonTrivialTypeInFfi.cpp',
'TestNoPrincipalGetUri.cpp',
'TestNoRefcountedInsideLambdas.cpp',
'TestNoUsingNamespaceMozillaJava.cpp',
'TestOverrideBaseCall.cpp',
'TestOverrideBaseCallAnnotation.cpp',
'TestParamTraitsEnum.cpp',
'TestRefCountedCopyConstructor.cpp',
'TestSprintfLiteral.cpp',
'TestStackClass.cpp',
'TestStaticLocalClass.cpp',
'TestTemporaryClass.cpp',
'TestTemporaryLifetimeBound.cpp',
'TestTrivialCtorDtor.cpp',
'TestTrivialDtor.cpp',
]
if CONFIG['OS_ARCH'] == 'WINNT':
SOURCES += [
'TestFopenUsage.cpp',
'TestLoadLibraryUsage.cpp',
]
include('../external/tests/sources.mozbuild')
if CONFIG['ENABLE_CLANG_PLUGIN_ALPHA']:
DEFINES["MOZ_CLANG_PLUGIN_ALPHA"] = "1"
include('../alpha/tests/sources.mozbuild')
DisableStlWrapping()
NoVisibilityFlags()
# Build without any warning flags, and with clang verify flag for a
# syntax-only build (no codegen), without a limit on the number of errors.
COMPILE_FLAGS['OS_CXXFLAGS'] = (
[f for f in COMPILE_FLAGS.get('OS_CXXFLAGS', []) if not f.startswith('-W')] +
['-fsyntax-only', '-Xclang', '-verify', '-ferror-limit=0', '-Wno-invalid-noreturn']
)
COMPILE_FLAGS['OS_CFLAGS'] = (
[f for f in COMPILE_FLAGS.get('OS_CFLAGS', []) if not f.startswith('-W')] +
['-fsyntax-only', '-Xclang', '-verify', '-ferror-limit=0', '-Xclang', '-std=c11',
'-Wno-invalid-noreturn']
)
# Don't reflect WARNINGS_CFLAGS into CFLAGS, as the warnings flags should be
# as specified in OS_CFLAGS above.
DisableCompilerWarnings()