Template
38 lines
1.3 KiB
KDL
38 lines
1.3 KiB
KDL
/* project-fail.kdl - the FAILURE variant of project.kdl (plan todo 26).
|
|
*
|
|
* Same shape as project.kdl, but the pthread feature is replaced by a
|
|
* feature checking a header that does not exist on any system:
|
|
*
|
|
* feature "nope" { header "nope_missing_xyz.h" }
|
|
*
|
|
* The generated ./configure must handle the failed probe CLEANLY under
|
|
* every shell in the matrix: the failure is recorded (have_nope=no), the
|
|
* check is named in config.log (the compiler's diagnostic), config.h gets
|
|
* NO HAVE_NOPE define, and no shell reports a syntax error. A healthy
|
|
* second feature ("posix", unistd.h) proves configure continues after a
|
|
* failed check and the healthy feature still resolves.
|
|
*
|
|
* NOTE (deviation, tracked in .omo/notepads/stupidtools/issues.md): the
|
|
* v1 generator (todos 16/17, frozen to todo 26) follows autoconf
|
|
* semantics - a failed OPTIONAL check records have_<name>=no and
|
|
* configure still exits 0; it does not abort. The plan/todo text expected
|
|
* rc!=0 here. run.sh asserts the generator's REAL contract and exercises
|
|
* the genuinely-non-zero configure-error path via an unrecognized option.
|
|
*/
|
|
|
|
project "hellothreads-fail" version "1.0.0"
|
|
|
|
feature "nope" {
|
|
header "nope_missing_xyz.h"
|
|
}
|
|
|
|
feature "posix" {
|
|
header "unistd.h"
|
|
}
|
|
|
|
target "default" {
|
|
src "main.c"
|
|
feature "nope"
|
|
feature "posix"
|
|
}
|