HEADSUP: Adding auto*generated files to rtems-4.11's git

Ralf Corsepius ralf.corsepius at rtems.org
Thu Jul 26 15:45:24 UTC 2012


On 07/26/2012 05:13 PM, Pavel Pisa wrote:
> On Wednesday 25 July 2012 15:34:46 Ralf Corsepius wrote:
>> On 07/25/2012 02:42 PM, Sebastian Huber wrote:
>>> On 07/25/2012 02:32 PM, Ralf Corsepius wrote:
>>>> Hi,
>>>>
>>>> As mentioned several times before, I'll soon gradually add some more
>>>> auto*tools
>>>> generated source files (Makefile.in, configure, aclocal.m4) to the
>>>> rtems-4.11
>>>> source tree in git.
>>> What is the benefit?
>> No bootstrapping required, no autotools required for "occasional users",
>> certain classes of bugs and users-mistakes will become more visible,
>> because files are pregenerated.
> I would like express my humble vote against generated files in git.
> On the other hand they are fully appropriate and wanted in snapshots
> and releases. If the auto-tools invocation is integrated into
> snapshot automation tools than it is enough. Usual occasional
> user should use release or in the worst case snapshot.
>
> Generated files in GIT usually cause more problems than they solve
> in long term.
They don't cause any problems, if you ignore the dynamics  and treat 
them static. This means, don't use "--enable-maintainer-mode" and all 
these files will be treated as static and time stamps being ignored.

When modifying them, make sure to have the specified versions of the 
autotools installed and either "bootstrap", run autoreconf, or 
--enable-maintainer-mode.

>   But I agree that they can make life easier
> for newcomers sometimes as well. In RTEMS case, how big
> are problems with use of pre-installed auto-tool on different
> distributions.
Using a distribution's preinstalled autotools has _never_ been supported 
by RTEMS and will never work in general.

Whether using them will work in a particular set is random luck. They 
may work, they may work in some cases etc.

The only way to assure deterministic builds is package suppliers to fix 
their users on a particular set of versions of these tools. It's what 
gcc, binutils, newlib, gdb also do.
The step of adding the generated files to git only makes this dependency 
more visible. It has always existed.

>   I did not have much problems till now.
This only means you didn't look closely enough or have been lucky. I 
know about series of incompatiblities between between vendor supplied 
versions and between different versions of the FSF autotools. In RTEMS 
history, most didn't affect RTEMS, but some did.

Also, let me mention: I _KNOW_ using the upcoming automake-1.13 will not 
work with RTEMS.

Ralf





More information about the devel mailing list