Re: api.header.include and backward-compatible .y files

Kaz Kylheku <[email protected]>
Newsgroups gmane.comp.parsers.bison.bugs
Message-ID <[email protected]>
On 2020-09-08 12:18, Adam Novak wrote:
> It sounds like Bison is designed around the GNU project way of doing
> software development, where there exist "maintainers" who are
> different from end users, and who have an opportunity to prepare
> "releases" which either contain more files than are checked into
> version control (or at least an opportunity to update generated files
> which are checked in).

That turns out not to be the case, entirely. Like other Autotools
project, Bison ships the downstream user a generated ./configure
script which doesn't require Autotools or M4.

But Bison uses M4 to generate code from skeletons also.

Not only is that generation not done at the time a Bison version is
cut for shipping to people who build it (similarly to the configure
script), it's not actually done until the users who run bison
execute the program.

If you look into your distro's /usr/share/bison directory, you find
files like yacc.c that are not C, but M4 source.

That approach works smoothly because M4 is stable. Most users don't
even know about the M4 run-time dependency.
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.