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