1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/xpcom/tests/static-checker/Makefile.in Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,146 @@ 1.4 +# This Source Code Form is subject to the terms of the Mozilla Public 1.5 +# License, v. 2.0. If a copy of the MPL was not distributed with this 1.6 +# file, You can obtain one at http://mozilla.org/MPL/2.0/. 1.7 + 1.8 +OUTPARAMS_WARNING_TESTCASES = \ 1.9 + e1.cpp \ 1.10 + e4.cpp \ 1.11 + e6.cpp \ 1.12 + e7.cpp \ 1.13 + e8.cpp \ 1.14 + e9.cpp \ 1.15 + e10.cpp \ 1.16 + e11.cpp \ 1.17 + e12.cpp \ 1.18 + e13.cpp \ 1.19 + $(NULL) 1.20 + 1.21 +OUTPARAMS_NS_FAILED_TESTCASES = \ 1.22 + e2.cpp \ 1.23 + e5.cpp \ 1.24 + $(NULL) 1.25 + 1.26 +OUTPARAMS_PASS_TESTCASES = \ 1.27 + o1.cpp \ 1.28 + o2.cpp \ 1.29 + o3.cpp \ 1.30 + o4.cpp \ 1.31 + o5.cpp \ 1.32 + o6.cpp \ 1.33 + o7.cpp \ 1.34 + o8.cpp \ 1.35 + o9.cpp \ 1.36 + o10.cpp \ 1.37 + o11.cpp \ 1.38 + o12.cpp \ 1.39 + o13.cpp \ 1.40 + o14.cpp \ 1.41 + o15.cpp \ 1.42 + o16.cpp \ 1.43 + onull.cpp \ 1.44 + onull2.cpp \ 1.45 + opmember.cpp \ 1.46 + $(NULL) 1.47 + 1.48 +FLOW_PASS_TESTCASES = \ 1.49 + flow_through_pass.cpp 1.50 + 1.51 +FLOW_FAILURE_TESTCASES = \ 1.52 + flow_through_fail.cpp 1.53 + 1.54 +MUST_OVERRIDE_PASS_TESTCASES = \ 1.55 + OverrideOK1.cpp \ 1.56 + OverrideOK2.cpp \ 1.57 + OverrideOK3-NamespaceTypedef.cpp \ 1.58 + $(NULL) 1.59 + 1.60 +MUST_OVERRIDE_FAILURE_TESTCASES = \ 1.61 + OverrideFail1.cpp \ 1.62 + OverrideFail2.cpp \ 1.63 + OverrideFail3.cpp \ 1.64 + OverrideFail4.cpp \ 1.65 + $(NULL) 1.66 + 1.67 +OVERRIDE_PASS_TESTCASES = \ 1.68 + override-pass.cpp \ 1.69 + override-namespace-typedef.cpp \ 1.70 + $(NULL) 1.71 + 1.72 +OVERRIDE_FAILURE_TESTCASES = \ 1.73 + override-global.cpp \ 1.74 + override-signature.cpp \ 1.75 + override-static.cpp \ 1.76 + override-virtual.cpp \ 1.77 + $(NULL) 1.78 + 1.79 +STATIC_INIT_PASS_TESTCASES = \ 1.80 + TestStaticInitStructOK.cpp \ 1.81 + $(NULL) 1.82 + 1.83 +STATIC_INIT_WARNING_TESTCASES = \ 1.84 + TestStaticInitAttr.cpp \ 1.85 + TestStaticInitConstructor.cpp \ 1.86 + TestStaticInitGlobal.cpp \ 1.87 + TestStaticInitGlobalConst.cpp \ 1.88 + $(NULL) 1.89 + 1.90 +STATIC_FAILURE_TESTCASES = \ 1.91 + $(FLOW_FAILURE_TESTCASES) \ 1.92 + $(MUST_OVERRIDE_FAILURE_TESTCASES) \ 1.93 + $(OVERRIDE_FAILURE_TESTCASES) \ 1.94 + $(NULL) 1.95 + 1.96 +STATIC_WARNING_TESTCASES = \ 1.97 + $(OUTPARAMS_WARNING_TESTCASES) \ 1.98 + $(STATIC_INIT_WARNING_TESTCASES) \ 1.99 + $(NULL) 1.100 + 1.101 +STATIC_PASS_TESTCASES = \ 1.102 + $(OUTPARAMS_NS_FAILED_TESTCASES) \ 1.103 + $(OUTPARAMS_PASS_TESTCASES) \ 1.104 + $(FLOW_PASS_TESTCASES) \ 1.105 + $(MUST_OVERRIDE_PASS_TESTCASES) \ 1.106 + $(OVERRIDE_PASS_TESTCASES) \ 1.107 + $(STATIC_INIT_PASS_TESTCASES) \ 1.108 + $(NULL) 1.109 + 1.110 + 1.111 +include $(topsrcdir)/config/rules.mk 1.112 + 1.113 +# We want to compile each file and invert the result to ensure that 1.114 +# compilation failed. 1.115 +check:: \ 1.116 + $(STATIC_FAILURE_TESTCASES:.cpp=.s-fail) \ 1.117 + $(STATIC_WARNING_TESTCASES:.cpp=.s-warn) \ 1.118 + $(STATIC_PASS_TESTCASES:.cpp=.s-pass) 1.119 + 1.120 +%.s-fail: %.cpp $(GLOBAL_DEPS) $(DEHYDRA_SCRIPTS) $(call mkdir_deps,$(MDDEPDIR)) 1.121 + @printf 'Compiling $(<F) to check that the static-analysis script is checking properly...' 1.122 + @if $(CCC) $(OUTOPTION)/dev/null -S $(COMPILE_CXXFLAGS) $(_VPATH_SRCS) >$(*F).errlog 2>&1; then \ 1.123 + printf 'fail:\nerror: compilation of $(<F) succeeded. It shouldn't have!\n'; \ 1.124 + exit 1; \ 1.125 + else \ 1.126 + printf 'ok.\n'; \ 1.127 + fi 1.128 + 1.129 +%.s-warn: %.cpp $(GLOBAL_DEPS) $(DEHYDRA_SCRIPTS) $(call mkdir_deps,$(MDDEPDIR)) 1.130 + @printf 'Compiling $(<F) to check that the static-analysis script is checking properly...' 1.131 + @if $(CCC) -Werror $(OUTOPTION)/dev/null -S $(COMPILE_CXXFLAGS) $(_VPATH_SRCS) >$(*F).errlog 2>&1; then \ 1.132 + printf 'fail:\nerror: compilation of $(<F) succeeded with -Werror. It shouldn't have!\n'; \ 1.133 + exit 1; \ 1.134 + fi 1.135 + @if $(CCC) $(OUTOPTION)/dev/null -S $(COMPILE_CXXFLAGS) $(_VPATH_SRCS) >$(*F).werrlog 2>&1; then \ 1.136 + printf 'ok.\n'; \ 1.137 + else \ 1.138 + printf 'fail:\nerror: compilation of $(<F) without -Werror failed. A warning should have been issued.\n'; \ 1.139 + exit 1; \ 1.140 + fi 1.141 + 1.142 +%.s-pass: %.cpp $(GLOBAL_DEPS) $(DEHYDRA_SCRIPTS) $(call mkdir_deps,$(MDDEPDIR)) 1.143 + @printf 'Compiling $(<F) to check that the static-analysis script is checking properly...' 1.144 + @if $(CCC) -Werror $(OUTOPTION)/dev/null -S $(COMPILE_CXXFLAGS) $(_VPATH_SRCS) >$(*F).errlog 2>&1; then \ 1.145 + printf 'ok.\n'; \ 1.146 + else \ 1.147 + printf 'fail:\nerror: compilation of $(<F) failed. It shouldn't have!\n'; \ 1.148 + exit 1; \ 1.149 + fi