Generated files in Git

Joel Sherrill joel.sherrill at OARcorp.com
Wed May 16 14:18:16 UTC 2012


On 05/16/2012 08:59 AM, Sebastian Huber wrote:
> On 05/16/2012 03:54 PM, Joel Sherrill wrote:
>> On 05/16/2012 08:49 AM, Ralf Corsepius wrote:
>>> On 05/16/2012 03:41 PM, Joel Sherrill wrote:
>>>> On 05/16/2012 08:33 AM, Ralf Corsepius wrote:
>>>>> On 05/16/2012 12:35 PM, Sebastian Huber wrote:
>>>>>> Hello,
>>>>>>
>>>>>> we have found some files that are generated during build, and thus
>>>>>> should not be under configuration management (CM).
>>>>>>
>>>>>> If you put the RTEMS source tree under CM with for example Rational
>>>>>> Synergy, then this leads to problems.
>>>>>>
>>>>>> So, when trying to build from a Rational Synergy work area, which by
>>>>>> default is
>>>>>> write protected, we get some errors. There are .c files, that are
>>>>>> generated by
>>>>>> running sed on a .in file, but that fails because the generated files
>>>>>> were in
>>>>>> the original Git repository, and thus migrated into Synergy. Actually
>>>>>> only the
>>>>>> Makefile.am and the .in should be under CM.
>>>>>>
>>>>>> As you know, there are two flavours of CM systems, CVS style
>>>>>> (modify-commit)
>>>>>> and RCS style (lock-modify-commit). Synergy is “RCS style”, while
>>>>>> Git is
>>>>>> CVS
>>>>>> style. That is why we have bigger problems with this inconsistency.
>>>>>>
>>>>>> The “wrong” files are
>>>>>>
>>>>>> - 3 .c files in rtems/testsuites/libtests/complex/
>>>>>>
>>>>>> - 1 .c file in rtems/testsuites/libtests/math/
>>>>>>
>>>>>> - 1 .c file in rtems/testsuites/libtests/mathf/
>>>>>>
>>>>>> - 1 .c file in rtems/testsuites/libtests/mathl/
>>>>>>
>>>>>> Also, the Makefile does not clean the generated files on “make
>>>>>> distclean”.
>>>>>>
>>>>>> How to fix this? Remove the generated files from Git and add a
>>>>>> distclean
>>>>>> hook?
>>>>> Definitely no. Similar to Makefile.ins, bspopts.h.in, rpcgen-generted
>>>>> files, files are generated sources and should be part of the VCS.
>>>> Makefile.in's are not part of the RTEMS git repository. Are you
>>>> saying that they should be Ralf?
>>>>
>>> Correct. They are generated sources and should be part of the VCS.
>>>
>>> Like any other generated sources, they are supposed to be only
>>> updated/modified, when their sources change.
>> Any particular reason you haven't proposed adding a set
>> of files to git if this is the case?
>>
>> We just had a thread about the problems of switching
>> branches and bootstrapping and this was not brought up.
> They were not part of CVS, so why do we want to add them now?  The Autotools
> files are quite huge this only blows up the repository.
>
Ralf has pointed out that he added them to his to avoid problems.

But just counting characters in configure files, I find 23498191 bytes
which is ~25% of the size of the .git directory. So there would be
an increase in size. :)

I am just finding that the switch to git has made me more
aware of the time spent bootstrapping.

-- 
Joel Sherrill, Ph.D.             Director of Research&   Development
joel.sherrill at OARcorp.com        On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
     Support Available             (256) 722-9985





More information about the devel mailing list