Nikita Karetnikov <nik...@karetnikov.org> writes:

>> Some software (rightly or wrongly) tries to build with "lex" and "yacc" .  
>> Guix does not provide these.
>> Instead we have "flex" and "bison".  Most operating systems have symbolic 
>> links lex -> flex and yacc -> bison.
>> Shouldn't we provide these too?
>
> I guess this should solve the problem (untested):
>
> (inputs
>   `(("lex" ,flex)
>     ("yacc" ,bison)
>     ...))

No, this wouldn't work.  Those strings ("lex" and "yacc" above) do not
become commands on the filesystem, so they won't be visible to a build
system that's looking for lex or yacc.  They are merely used within the
derivation to refer to the inputs.

Implementing John's suggestion would involve installing symbolic links
in /nix/store/*-flex-* and /nix/store/*-bison-* in the flex and bison
recipes, which I guess means adding a new phase to those recipes.

      Mark

Reply via email to