/* 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