.include KYUA_CONFDIR= /etc/kyua KYUA_DOCDIR= /usr/share/doc/kyua KYUA_EGDIR= /usr/share/examples/kyua KYUA_MISCDIR= /usr/share/kyua/misc KYUA_STOREDIR= /usr/share/kyua/store KYUA_VERSION= 0.13 KYUA_SRCDIR= ${SRCTOP}/contrib/kyua .PATH: ${KYUA_SRCDIR} PACKAGE= tests PROG_CXX= kyua SRCS= main.cpp LIBADD= lutok sqlite3 MAN= kyua-about.1 \ kyua-config.1 \ kyua-db-exec.1 \ kyua-db-migrate.1 \ kyua-debug.1 \ kyua-help.1 \ kyua-list.1 \ kyua-report-html.1 \ kyua-report-junit.1 \ kyua-report.1 \ kyua-test.1 \ kyua.1 \ kyua.conf.5 \ kyuafile.5 CFLAGS+= -I${KYUA_SRCDIR} -I${.CURDIR} CFLAGS+= -I${SRCTOP}/contrib/lutok/include CFLAGS+= -I${SRCTOP}/contrib/sqlite3 # kyua uses auto_ptr CFLAGS+= -Wno-deprecated-declarations CXXSTD= c++11 CFLAGS+= -DHAVE_CONFIG_H # We compile the kyua libraries as part of the main executable as this saves # compile time and we don't install them anyway. CFLAGS+= -DGDB=\"/usr/local/bin/gdb\" \ -DKYUA_ARCHITECTURE=\"${MACHINE_ARCH}\" \ -DKYUA_CONFDIR=\"${KYUA_CONFDIR}\" \ -DKYUA_DOCDIR=\"${KYUA_DOCDIR}\" \ -DKYUA_MISCDIR=\"${KYUA_MISCDIR}\" \ -DKYUA_PLATFORM=\"${MACHINE}\" \ -DKYUA_STOREDIR=\"${KYUA_STOREDIR}\" \ -DPACKAGE=\"kyua\" \ -DPACKAGE_NAME=\"Kyua\" \ -DPACKAGE_VERSION=\"${KYUA_VERSION}\" \ -DVERSION=\"${KYUA_VERSION}\" SRCS+= utils/datetime.cpp \ utils/env.cpp \ utils/memory.cpp \ utils/passwd.cpp \ utils/sanity.cpp \ utils/stacktrace.cpp \ utils/stream.cpp \ utils/units.cpp \ utils/cmdline/base_command.cpp \ utils/cmdline/exceptions.cpp \ utils/cmdline/globals.cpp \ utils/cmdline/options.cpp \ utils/cmdline/parser.cpp \ utils/cmdline/ui.cpp \ utils/cmdline/ui_mock.cpp \ utils/config/exceptions.cpp \ utils/config/keys.cpp \ utils/config/lua_module.cpp \ utils/config/nodes.cpp \ utils/config/parser.cpp \ utils/config/tree.cpp \ utils/format/exceptions.cpp \ utils/format/formatter.cpp \ utils/fs/auto_cleaners.cpp \ utils/fs/directory.cpp \ utils/fs/exceptions.cpp \ utils/fs/lua_module.cpp \ utils/fs/operations.cpp \ utils/fs/path.cpp \ utils/logging/operations.cpp \ utils/process/child.cpp \ utils/process/deadline_killer.cpp \ utils/process/exceptions.cpp \ utils/process/executor.cpp \ utils/process/fdstream.cpp \ utils/process/isolation.cpp \ utils/process/operations.cpp \ utils/process/status.cpp \ utils/process/system.cpp \ utils/process/systembuf.cpp \ utils/signals/exceptions.cpp \ utils/signals/interrupts.cpp \ utils/signals/misc.cpp \ utils/signals/programmer.cpp \ utils/signals/timer.cpp \ utils/sqlite/c_gate.cpp \ utils/sqlite/database.cpp \ utils/sqlite/exceptions.cpp \ utils/sqlite/statement.cpp \ utils/sqlite/transaction.cpp \ utils/text/exceptions.cpp \ utils/text/operations.cpp \ utils/text/regex.cpp \ utils/text/table.cpp \ utils/text/templates.cpp SRCS+= model/context.cpp \ model/exceptions.cpp \ model/metadata.cpp \ model/test_case.cpp \ model/test_program.cpp \ model/test_result.cpp SRCS+= engine/atf.cpp \ engine/atf_list.cpp \ engine/atf_result.cpp \ engine/config.cpp \ engine/exceptions.cpp \ engine/filters.cpp \ engine/kyuafile.cpp \ engine/plain.cpp \ engine/requirements.cpp \ engine/scanner.cpp \ engine/tap.cpp \ engine/tap_parser.cpp \ engine/scheduler.cpp \ engine/execenv/execenv.cpp \ engine/execenv/execenv_host.cpp SRCS+= os/freebsd/execenv_jail_manager.cpp \ os/freebsd/main.cpp SRCS+= store/dbtypes.cpp \ store/exceptions.cpp \ store/layout.cpp \ store/metadata.cpp \ store/migrate.cpp \ store/read_backend.cpp \ store/read_transaction.cpp \ store/write_backend.cpp \ store/write_transaction.cpp SRCS+= drivers/debug_test.cpp \ drivers/list_tests.cpp \ drivers/report_junit.cpp \ drivers/run_tests.cpp \ drivers/scan_results.cpp SRCS+= cli/cmd_about.cpp \ cli/cmd_config.cpp \ cli/cmd_db_exec.cpp \ cli/cmd_db_migrate.cpp \ cli/cmd_debug.cpp \ cli/cmd_help.cpp \ cli/cmd_list.cpp \ cli/cmd_report.cpp \ cli/cmd_report_html.cpp \ cli/cmd_report_junit.cpp \ cli/cmd_test.cpp \ cli/common.cpp \ cli/config.cpp \ cli/main.cpp .if ${MK_JAIL} == "no" SRCS+= os/freebsd/execenv_jail_stub.cpp .else SRCS+= os/freebsd/execenv_jail.cpp \ os/freebsd/utils/jail.cpp LIBADD+= jail .endif FILESGROUPS= DOCS MISC STORE .if ${MK_EXAMPLES} != "no" FILESGROUPS+= EXAMPLES .endif # Install a minimal default config that uses the 'tests' user. # The examples config is not appropriate for general use. CONFS= kyua.conf-default CONFSDIR= ${KYUA_CONFDIR} CONFSNAME= kyua.conf CONFSDIRTAGS= package=tests DOCS= AUTHORS CONTRIBUTORS LICENSE DOCSDIR= ${KYUA_DOCDIR} DOCSTAGS= package=tests EXAMPLES= Kyuafile.top kyua.conf EXAMPLESDIR= ${KYUA_EGDIR} EXAMPLESTAGS= package=tests .PATH: ${KYUA_SRCDIR}/examples MISC= context.html index.html report.css test_result.html MISCDIR= ${KYUA_MISCDIR} MISCTAGS= package=tests .PATH: ${KYUA_SRCDIR}/misc STORE= migrate_v1_v2.sql migrate_v2_v3.sql schema_v3.sql STOREDIR= ${KYUA_STOREDIR} STORETAGS= package=tests .PATH: ${KYUA_SRCDIR}/store CLEANFILES+= ${MAN} .PATH: ${KYUA_SRCDIR}/doc .for man in ${MAN} ${man}: ${man}.in sh ${KYUA_SRCDIR}/doc/manbuild.sh \ -v "CONFDIR=${KYUA_CONFDIR}" \ -v "DOCDIR=${KYUA_DOCDIR}" \ -v "EGDIR=${KYUA_EGDIR}" \ -v "MISCDIR=${KYUA_MISCDIR}" \ -v "PACKAGE=kyua" \ -v "STOREDIR=${KYUA_STOREDIR}" \ -v "TESTSDIR=${TESTSBASE}" \ -v "VERSION=${KYUA_VERSION}" \ ${.ALLSRC} ${.TARGET} .endfor .include