1e95ea21bSJan KneschkeImport('env') 2e95ea21bSJan Kneschke 3e95ea21bSJan Kneschketests = Split('prepare.sh \ 4e95ea21bSJan Kneschke run-tests.pl \ 5e95ea21bSJan Kneschke cleanup.sh') 6e95ea21bSJan Kneschke 7e95ea21bSJan Kneschkeextra_dist = Split('fastcgi-10.conf \ 8e95ea21bSJan Kneschke fastcgi-responder.conf \ 9e95ea21bSJan Kneschke core-var-include.t \ 10e95ea21bSJan Kneschke var-include.conf \ 11e95ea21bSJan Kneschke var-include-sub.conf \ 12e95ea21bSJan Kneschke condition.conf \ 13e95ea21bSJan Kneschke core-condition.t \ 14e95ea21bSJan Kneschke core-request.t \ 15e95ea21bSJan Kneschke core-response.t \ 16e95ea21bSJan Kneschke core-keepalive.t \ 1707517ff3SGlenn Strauss mod-auth.conf \ 18e95ea21bSJan Kneschke mod-auth.t \ 19e95ea21bSJan Kneschke mod-cgi.t \ 20de9e2f98SGlenn Strauss mod-deflate.t \ 21de9e2f98SGlenn Strauss mod-deflate.conf \ 22e95ea21bSJan Kneschke mod-fastcgi.t \ 23e95ea21bSJan Kneschke request.t \ 24e95ea21bSJan Kneschke mod-ssi.t \ 25e95ea21bSJan Kneschke LightyTest.pm \ 26e95ea21bSJan Kneschke mod-setenv.t') 27e95ea21bSJan Kneschke 28*fc01b820SGlenn Straussfcgi_responder = env.Program("fcgi-responder", "fcgi-responder.c") 294a68780eSGlenn Straussscgi_responder = env.Program("scgi-responder", "scgi-responder.c") 30e95ea21bSJan Kneschke 3168284bd7SStefan Bühlerdef CopyTestBinary(env, binary): 3268284bd7SStefan Bühler return env.Command(target = env['ENV']['top_builddir'] + '/tests/' + binary, source = binary, action = Copy("$TARGET", "$SOURCE")) 3368284bd7SStefan Bühler 3468284bd7SStefan Bühlerdef BuildTestEnv(env, build_type): 3568284bd7SStefan Bühler builddir = build_type 3668284bd7SStefan Bühler dependencies = [build_type] 3768284bd7SStefan Bühler if build_type == 'dynamic': 3868284bd7SStefan Bühler builddir = '.' 3968284bd7SStefan Bühler dependencies += ['modules'] 4068284bd7SStefan Bühler 4168284bd7SStefan Bühler testenv = env.Clone() 4268284bd7SStefan Bühler testenv['ENV']['srcdir']='tests' 4368284bd7SStefan Bühler testenv['ENV']['top_builddir']='sconsbuild/' + builddir 4468284bd7SStefan Bühler prepare = testenv.AlwaysBuild(testenv.Command(build_type + '/prepare', 'prepare.sh', 'tests/prepare.sh')) 4568284bd7SStefan Bühler runtests = testenv.AlwaysBuild(testenv.Command(build_type + '/run-tests', 'run-tests.pl', 'tests/run-tests.pl')) 4668284bd7SStefan Bühler cleanup = testenv.AlwaysBuild(testenv.Command(build_type + '/cleanup', 'cleanup.sh', 'tests/cleanup.sh')) 4768284bd7SStefan Bühler testenv.Depends(runtests, prepare) 4868284bd7SStefan Bühler testenv.Depends(cleanup, runtests) 4968284bd7SStefan Bühler SideEffect('dummy-file-prevent-running-tests-in-parallel', runtests) 5068284bd7SStefan Bühler 5168284bd7SStefan Bühler testenv.Depends(runtests, dependencies) 5268284bd7SStefan Bühler 53*fc01b820SGlenn Strauss fcgis = [CopyTestBinary(testenv, 'fcgi-responder'), CopyTestBinary(testenv, 'scgi-responder')] 5468284bd7SStefan Bühler testenv.Depends(runtests, fcgis) 5568284bd7SStefan Bühler 5668284bd7SStefan Bühler return [prepare, runtests, cleanup] 5768284bd7SStefan Bühler 5868284bd7SStefan Bühlercheck_dynamic = env.Alias('check_dynamic', BuildTestEnv(env, 'dynamic')) 5968284bd7SStefan Bühlerenv.Depends(check_dynamic, 'modules') 6068284bd7SStefan Bühlercheck_static = env.Alias('check_static', BuildTestEnv(env, 'static')) 6168284bd7SStefan Bühlercheck_fullstatic = env.Alias('check_fullstatic', BuildTestEnv(env, 'fullstatic')) 6268284bd7SStefan Bühler 6368284bd7SStefan Bühlerchecks = [] 6468284bd7SStefan Bühler 6568284bd7SStefan Bühlerif env['build_dynamic']: 6668284bd7SStefan Bühler checks += check_dynamic 6768284bd7SStefan Bühler 6868284bd7SStefan Bühlerif env['build_static']: 6968284bd7SStefan Bühler checks += check_static 7068284bd7SStefan Bühler 7168284bd7SStefan Bühlerif env['build_fullstatic']: 7268284bd7SStefan Bühler checks += check_fullstatic 7368284bd7SStefan Bühler 7468284bd7SStefan Bühlerenv.Alias('check', checks) 75