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 \ 20*de9e2f98SGlenn Strauss mod-deflate.t \ 21*de9e2f98SGlenn 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 2868284bd7SStefan Bühlerfcgi_auth = None 2968284bd7SStefan Bühlerfcgi_responder = None 304a68780eSGlenn Straussscgi_responder = env.Program("scgi-responder", "scgi-responder.c") 31e95ea21bSJan Kneschke 32809199f9SmOoif env['LIBFCGI']: 3368284bd7SStefan Bühler fcgi_auth = env.Program("fcgi-auth", "fcgi-auth.c", LIBS=[env['LIBFCGI'], env['APPEND_LIBS']]) 3468284bd7SStefan Bühler fcgi_responder = env.Program("fcgi-responder", "fcgi-responder.c", LIBS=[env['LIBFCGI'], env['APPEND_LIBS']]) 35809199f9SmOo 3668284bd7SStefan Bühlerdef CopyTestBinary(env, binary): 3768284bd7SStefan Bühler return env.Command(target = env['ENV']['top_builddir'] + '/tests/' + binary, source = binary, action = Copy("$TARGET", "$SOURCE")) 3868284bd7SStefan Bühler 3968284bd7SStefan Bühlerdef BuildTestEnv(env, build_type): 4068284bd7SStefan Bühler builddir = build_type 4168284bd7SStefan Bühler dependencies = [build_type] 4268284bd7SStefan Bühler if build_type == 'dynamic': 4368284bd7SStefan Bühler builddir = '.' 4468284bd7SStefan Bühler dependencies += ['modules'] 4568284bd7SStefan Bühler 4668284bd7SStefan Bühler testenv = env.Clone() 4768284bd7SStefan Bühler testenv['ENV']['srcdir']='tests' 4868284bd7SStefan Bühler testenv['ENV']['top_builddir']='sconsbuild/' + builddir 4968284bd7SStefan Bühler prepare = testenv.AlwaysBuild(testenv.Command(build_type + '/prepare', 'prepare.sh', 'tests/prepare.sh')) 5068284bd7SStefan Bühler runtests = testenv.AlwaysBuild(testenv.Command(build_type + '/run-tests', 'run-tests.pl', 'tests/run-tests.pl')) 5168284bd7SStefan Bühler cleanup = testenv.AlwaysBuild(testenv.Command(build_type + '/cleanup', 'cleanup.sh', 'tests/cleanup.sh')) 5268284bd7SStefan Bühler testenv.Depends(runtests, prepare) 5368284bd7SStefan Bühler testenv.Depends(cleanup, runtests) 5468284bd7SStefan Bühler SideEffect('dummy-file-prevent-running-tests-in-parallel', runtests) 5568284bd7SStefan Bühler 5668284bd7SStefan Bühler testenv.Depends(runtests, dependencies) 5768284bd7SStefan Bühler 5868284bd7SStefan Bühler if env['LIBFCGI']: 5968284bd7SStefan Bühler fcgis = [CopyTestBinary(testenv, 'fcgi-auth'), CopyTestBinary(testenv, 'fcgi-responder')] 6068284bd7SStefan Bühler testenv.Depends(runtests, fcgis) 6168284bd7SStefan Bühler 6268284bd7SStefan Bühler return [prepare, runtests, cleanup] 6368284bd7SStefan Bühler 6468284bd7SStefan Bühlercheck_dynamic = env.Alias('check_dynamic', BuildTestEnv(env, 'dynamic')) 6568284bd7SStefan Bühlerenv.Depends(check_dynamic, 'modules') 6668284bd7SStefan Bühlercheck_static = env.Alias('check_static', BuildTestEnv(env, 'static')) 6768284bd7SStefan Bühlercheck_fullstatic = env.Alias('check_fullstatic', BuildTestEnv(env, 'fullstatic')) 6868284bd7SStefan Bühler 6968284bd7SStefan Bühlerchecks = [] 7068284bd7SStefan Bühler 7168284bd7SStefan Bühlerif env['build_dynamic']: 7268284bd7SStefan Bühler checks += check_dynamic 7368284bd7SStefan Bühler 7468284bd7SStefan Bühlerif env['build_static']: 7568284bd7SStefan Bühler checks += check_static 7668284bd7SStefan Bühler 7768284bd7SStefan Bühlerif env['build_fullstatic']: 7868284bd7SStefan Bühler checks += check_fullstatic 7968284bd7SStefan Bühler 8068284bd7SStefan Bühlerenv.Alias('check', checks) 81