Re: bison, flex and ./configure

From: Heikki Linnakangas <hlinnakangas(at)vmware(dot)com>
To: salah jubeh <s_jubeh(at)yahoo(dot)com>
Cc: "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: bison, flex and ./configure
Date: 2014-01-28 14:48:03
Message-ID: 52E7C323.4050003@vmware.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 01/28/2014 04:28 PM, salah jubeh wrote:
>> Yes. Bison and flex are not required when building from a source
>> tarball, because the tarball includes the generated files. If you're
>> building from a git checkout, however, then you need bison and flex. You
>> will get an error at make, and IIRC a warning at ./configure
>
> Thanks for the quick reply. For curiosity reasons why the differentiation between tar and git.

We include the generated files in the tarballs for the convenience of
people who just want to download, compile, and install the software.
Fewer dependencies is good in that case. It also ensures that an
official version, ie. from a tarball, is always built using the same
version of bison/flex.

Whereas if you do a git checkout, you're probably a developer, and want
to modify the sources. It's not unreasonable to expect a developer to
have bison and flex installed. Also, including the generated files in
the git repository would cause unnecessary diffs when people have
different versions of bison/flex installed on their development boxes.

We've chosen a different approach with autoconf; the configure file is
generated from configure.in, but we include the configure file in the
git repository. It does add some extra effort to developers that need to
modify configure.in, but OTOH, if you don't modify it, you don't need to
have autoconf installed.
- Heikki

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 2014-01-28 14:55:15 Re: ALTER TABLE lock strength reduction patch is unsafe
Previous Message Merlin Moncure 2014-01-28 14:38:34 Re: jsonb and nested hstore