Обсуждение: bison, flex and ./configure

Поиск
Список
Период
Сортировка

bison, flex and ./configure

От
salah jubeh
Дата:
Hello,

Today, I have noticed that ./configure does not return an error when bison and flex are missing.  Is this intended ?

OS: Ubuntu 13.04

Regards

Re: bison, flex and ./configure

От
Heikki Linnakangas
Дата:
On 01/28/2014 04:14 PM, salah jubeh wrote:
> Today, I have noticed that ./configure does not return an error when bison and flex are missing.  Is this intended ?

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.

- Heikki



Re: bison, flex and ./configure

От
salah jubeh
Дата:
<div style="color:#000; background-color:#fff; font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida
Grande,sans-serif;font-size:10pt">>Yes. Bison and flex are not required when building from a source <br clear="none"
/>>tarball,because the tarball includes the generated files. If you're <br clear="none" />>building from a git
checkout,however, then you need bison and flex. You <br clear="none" />>will get an error at make, and IIRC a
warningat ./configure<br /><br />Thanks for the quick reply. For curiosity reasons why the differentiation between tar
andgit.<br /><br />Regards<br /><div class="yahoo_quoted" style="display: block;"><br /><br /><div style="font-family:
HelveticaNeue,Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 10pt;"><div style="font-family:
HelveticaNeue,Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 12pt;"><div dir="ltr"><font
face="Arial"size="2"> On Tuesday, January 28, 2014 3:18 PM, Heikki Linnakangas <hlinnakangas@vmware.com>
wrote:<br/></font></div><div class="y_msg_container">On 01/28/2014 04:14 PM, salah jubeh wrote:<div
class="yqt1526475617"id="yqtfd54504"><br clear="none" />> Today, I have noticed that ./configure does not return an
errorwhen bison and flex are missing.  Is this intended ?</div><br clear="none" /><br clear="none" />Yes. Bison and
flexare not required when building from a source <br clear="none" />tarball, because the tarball includes the generated
files.If you're <br clear="none" />building from a git checkout, however, then you need bison and flex. You <br
clear="none"/>will get an error at make, and IIRC a warning at ./configure.<br clear="none" /><br clear="none" />-
Heikki<divclass="yqt1526475617" id="yqtfd35346"><br clear="none" /></div><br /><br /></div></div></div></div></div> 

Re: bison, flex and ./configure

От
Heikki Linnakangas
Дата:
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



Re: bison, flex and ./configure

От
salah jubeh
Дата:
Hello Heikki,

Thanks for sharing.

Reagrds



On Tuesday, January 28, 2014 3:48 PM, Heikki Linnakangas <hlinnakangas@vmware.com> wrote:
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