Files
stupidtools/tests/integration/fixture/project.kdl
T

40 lines
1.3 KiB
KDL

/* project.kdl - integration-fixture build file (plan todo 26).
*
* A small but REAL C project exercising the DSL the way a user would:
* - feature "pthread": a header check (pthread.h) AND a library check
* (pthread -> -lpthread), like the classic autoconf AC_CHECK_HEADER +
* AC_CHECK_LIB pair;
* - feature "math": an optional library check (m -> -lm). Not strictly
* required by every build (an option maps to --enable-math/--disable
* --math), but present so the generated Makefile accumulates -lm
* when it resolves;
* - target "default": the real source list of the fixture (descriptive
* in v1 - the generated configure substitutes @VAR@ into Makefile.in,
* it does not generate Makefiles);
* - option "debug": an option node, proving the --enable-debug /
* --disable-debug surface shows up in the generated --help.
*
* DSL grammar (src/kdl/schema.h): `project` first, then targets/features/
* options; feature children are checks (header/library/... from the 8
* registry kinds). */
project "hellothreads" version "1.0.0"
feature "pthread" {
header "pthread.h"
library "pthread"
}
feature "math" {
library "m"
}
target "default" {
src "main.c"
src "demo.c"
feature "pthread"
feature "math"
}
option "debug" default=#false