On Sat Nov 1, 2025 at 1:07 AM CET, Lilianna Smólska via Chicken-users wrote: > The csm build system egg doesn't seem to process cond-expand the options file > as described in the documentation, always falling back to the `else` branch. > Example all.options: > > -program test > (cond-expand > (release "-O3") > (else "-O0")) > > Passing -D release doesn't change the flag: > $ csm > '/usr/local/bin/csc' '-o' 'test' '-I' '/tmp/csm' '-C' '-I' '-C' '/tmp/csm' > '/tmp/csm/test.sld' '-O0' > $ csm -clean > $ csm -D release > '/usr/local/bin/csc' '-o' 'test' '-I' '/tmp/csm' '-C' '-I' '-C' '/tmp/csm' > '/tmp/csm/test.sld' '-O0' > > If an else branch is absent from the cond-expand, csm always signals an > error, even when the appropriate feature requirement is passed on the command > line. > The bug is present in both CHICKEN 5 and the development 6 version.
Indeed. The expansion of "cond-expand" was utterly broken and should be fixed now, new versions of csm for CHICKEN 5 and 6 will be available presently. Many thanks for reporting this bug. cheers, felix
