Re: cond-expand in csm all.options file

Felix Winkelmann via Chicken-users <[email protected]>
Newsgroups gmane.lisp.scheme.chicken
Message-ID <[email protected]>
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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.