Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • tests/Makefile.am

    re3a5a73 re16797c  
    2323installed=no
    2424
    25 INSTALL_FLAGS=-in-tree
    26 DEBUG_FLAGS=-debug -O0
    27 
    2825quick_test=avl_test operators numericConstants expression enum array typeof cast raii/dtor-early-exit raii/init_once attributes
    2926
     
    4441CC = @CFACC@
    4542
    46 PRETTY_PATH=cd ${srcdir} &&
     43PRETTY_PATH=mkdir -p $(dir $(abspath ${@})) && cd ${srcdir} &&
    4744
    4845.PHONY: list .validate
     
    8582#----------------------------------------------------------------------------------------------------------------
    8683
     84# Use for all tests, make sure the path are correct and all flags are added
     85CFACOMPILETEST=$(PRETTY_PATH) $(CFACOMPILE) $(shell realpath --relative-to=${srcdir} ${<}) $($(shell echo "${@}_FLAGS" | sed 's/-\|\//_/g'))
     86
     87# Use for tests that either generate an executable, print directyl to stdout or the make command is expected to fail
     88CFATEST_STDOUT=$(CFACOMPILETEST) -o $(abspath ${@})
     89
     90# Use for tests where the make command is expecte to succeed but the expected.txt should be compared to stderr
     91CFATEST_STDERR=$(CFACOMPILETEST) 2> $(abspath ${@})
     92
     93#----------------------------------------------------------------------------------------------------------------
     94
    8795# implicit rule so not all test require a rule
    8896% : %.cfa $(CFACC)
    89         $(PRETTY_PATH) $(CFACOMPILE) $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})
     97        $(CFATEST_STDOUT)
    9098
    9199% : %.cpp
    92100        $(PRETTY_PATH) $(CXXCOMPILE) $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})
    93101
    94 declarationSpecifier: declarationSpecifier.cfa $(CFACC)
    95         $(PRETTY_PATH) $(CFACOMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})
     102#------------------------------------------------------------------------------
     103# TARGET WITH STANDARD RULE BUT CUSTOM FLAGS
     104#------------------------------------------------------------------------------
     105# Expected failures
     106declarationSpecifier_FLAGS= -CFA -XCFA -p
     107gccExtensions_FLAGS= -CFA -XCFA -p
     108extension_FLAGS= -CFA -XCFA -p
     109attributes_FLAGS= -CFA -XCFA -p
     110functions_FLAGS= -CFA -XCFA -p
     111KRfunctions_FLAGS= -CFA -XCFA -p
     112gmp_FLAGS= -lgmp
    96113
    97 gccExtensions : gccExtensions.cfa $(CFACC)
    98         $(PRETTY_PATH) $(CFACOMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})
     114#------------------------------------------------------------------------------
     115# Expected failures
     116completeTypeError_FLAGS= -DERR1
    99117
    100 extension : extension.cfa $(CFACC)
    101         $(PRETTY_PATH) $(CFACOMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})
     118#------------------------------------------------------------------------------
     119# CUSTOM TARGET
     120#------------------------------------------------------------------------------
     121typedefRedef-ERR1: typedefRedef.cfa $(CFACC)
     122        $(CFATEST_STDOUT) -DERR1
    102123
    103 attributes : attributes.cfa $(CFACC)
    104         $(PRETTY_PATH) $(CFACOMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})
     124alloc-ERROR: alloc.cfa $(CFACC)
     125        $(CFATEST_STDOUT) -DERR1
    105126
    106 functions: functions.cfa $(CFACC)
    107         $(PRETTY_PATH) $(CFACOMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})
     127nested-types-ERR1: nested-types.cfa $(CFACC)
     128        $(CFATEST_STDOUT) -DERR1
    108129
    109 KRfunctions : KRfunctions.cfa $(CFACC)
    110         $(PRETTY_PATH) $(CFACOMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})
     130nested-types-ERR2: nested-types.cfa $(CFACC)
     131        $(CFATEST_STDOUT) -DERR2
    111132
    112 sched-ext-parse : sched-ext-parse.c $(CFACC)
    113         $(PRETTY_PATH) $(CFACOMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})
     133raii/dtor-early-exit-ERR1: raii/dtor-early-exit.cfa $(CFACC)
     134        $(CFATEST_STDOUT) -DERR1
    114135
    115 gmp : gmp.cfa $(CFACC)
    116         $(PRETTY_PATH) $(CFACOMPILE) -lgmp $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})
     136raii/dtor-early-exit-ERR2: raii/dtor-early-exit.cfa $(CFACC)
     137        $(CFATEST_STDOUT) -DERR2
     138
     139raii/memberCtors-ERR1: raii/memberCtors.cfa $(CFACC)
     140        $(CFATEST_STDOUT) -DERR1
     141
     142raii/ctor-autogen-ERR1: raii/ctor-autogen.cfa $(CFACC)
     143        $(CFATEST_STDOUT) -DERR1
    117144
    118145#builtins
    119146builtins/sync: builtins/sync.cfa $(CFACC)
    120         $(PRETTY_PATH) $(CFACOMPILE) $(shell realpath --relative-to=${srcdir} ${<}) 2> $(abspath ${@}) -fsyntax-only
    121 
    122 #------------------------------------------------------------------------------
    123 
    124 #To make errors path independent we need to cd into the correct directories
    125 completeTypeError : completeTypeError.cfa $(CFACC)
    126         $(PRETTY_PATH) $(CFACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})
    127 
    128 typedefRedef-ERR1: typedefRedef.cfa $(CFACC)
    129         $(PRETTY_PATH) $(CFACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})
    130 
    131 alloc-ERROR: alloc.cfa $(CFACC)
    132         $(PRETTY_PATH) $(CFACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})
    133 
    134 fallthrough-ERROR: fallthrough.cfa $(CFACC)
    135         $(PRETTY_PATH) $(CFACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})
    136 
    137 nested-types-ERR1: nested-types.cfa $(CFACC)
    138         $(PRETTY_PATH) $(CFACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})
    139 
    140 nested-types-ERR2: nested-types.cfa $(CFACC)
    141         $(PRETTY_PATH) $(CFACOMPILE) -DERR2 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})
    142 
    143 # Constructor/destructor tests
    144 raii/dtor-early-exit-ERR1: raii/dtor-early-exit.cfa $(CFACC)
    145         $(PRETTY_PATH) $(CFACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})
    146 
    147 raii/dtor-early-exit-ERR2: raii/dtor-early-exit.cfa $(CFACC)
    148         $(PRETTY_PATH) $(CFACOMPILE) -DERR2 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})
    149 
    150 raii/memberCtors-ERR1: raii/memberCtors.cfa $(CFACC)
    151         $(PRETTY_PATH) $(CFACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})
    152 
    153 raii/ctor-autogen-ERR1: raii/ctor-autogen.cfa $(CFACC)
    154         $(PRETTY_PATH) $(CFACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})
     147        $(CFATEST_STDERR) -fsyntax-only
    155148
    156149# Warnings
    157150warnings/self-assignment: warnings/self-assignment.cfa $(CFACC)
    158         $(PRETTY_PATH) $(CFACOMPILE) $(shell realpath --relative-to=${srcdir} ${<}) 2> $(abspath ${@}) -fsyntax-only
     151        $(CFATEST_STDERR) -fsyntax-only
Note: See TracChangeset for help on using the changeset viewer.