[Insight-developers] Preventing Out Of Source Builds -- http://review.source.kitware.com/#change, 157

Bill Lorensen bill.lorensen at gmail.com
Wed Oct 20 14:38:20 EDT 2010


I prefer that in-source builds be banned. I have had to help several
beginners recover from them.

Can an ITK developer come up with a practical reason to allow in-source builds?



On Wed, Oct 20, 2010 at 2:09 PM, David Cole <david.cole at kitware.com> wrote:
> That's fine, (mirroring NIFTI exactly sounds like a good idea) -- but that's
> a very good reason why in-source builds should *absolutely* and
> *permanently* be a thing of the past for the ITK source tree. CMake will
> simply overwrite any Makefile files in the tree when generating a make-based
> in-source build tree.
> Kent, I'd prefer if you didn't even provide the OPTION and just disallow
> them entirely.
> People who *need* them (I haven't actually met one of these people yet) can
> always simply comment out one line of CMakeLists code to enable them.
>
> David C.
>
> On Wed, Oct 20, 2010 at 1:57 PM, Hans Johnson <hans-johnson at uiowa.edu>
> wrote:
>>
>> Kent,
>>
>> The nifti Makefiles are there so that ITK has an EXACT duplicate of the
>> nifti tree.  This could even be replaced by an Add_External_Project()
>> option
>> as of CMAKE 2.8.
>>
>> Removing those Makefiles will make it more difficult to syncronize between
>> ITK and NIFTI.  (Note:  The syncronizations have gone both ways, and both
>> communities have benefited).
>>
>> I would really prefer if they were not removed.
>>
>> Hans
>>
>>
>>
>> On 10/20/10 12:48 PM, "kent williams" <norman-k-williams at uiowa.edu> wrote:
>>
>> > This came up on the 16th, and I was out until yesterday. I just spent 45
>> > minutes catching up on ITK Developer list e-mail.
>> >
>> > First off -- I hate in-source builds in general.  They're so 1987.  I
>> > can't
>> > think of a single reason to do them with ITK.  That being said, I don't
>> > personally care whether someone wants to do one.
>> >
>> > Therefore I just pushed a small change that adds a option named
>> > ALLOW_IN_SOURCE_BUILDS
>> >
>> > The scenario at configure time -- for the fan of in-source builds:
>> >
>> > 1. Configure in-source. CMake complains loudly about it.
>> > 2. In the Cache (and visible in the GUI) there is now
>> >     ALLOW_IN_SOURCE_BUILDS:BOOL=OFF
>> > 3. User toggles that option, and now he or she can go on their merry way
>> >     with an in-source build.
>> >
>> > There's another issue I don't really understand, which is there are 4
>> > files
>> > that get modified by an in-source build that are actually tracked by
>> > git:
>> >
>> > #    modified:   Utilities/gdcm/Copyright.txt
>> > #    modified:   Utilities/nifti/Makefile
>> > #    modified:   Utilities/nifti/niftilib/Makefile
>> > #    modified:   Utilities/nifti/znzlib/Makefile
>> >
>> > A die hard in-source build guy might check those in by accident. It
>> > wouldn't
>> > matter that much since I think those Makefiles are ignored by CMake in
>> > favor
>> > of using the CMakeLists.txt file.
>> >
>> > But as far as I'm concerned those could be removed from the ITK
>> > repository.
>> > ITK does track those external packages, but any merging is done manually
>> > and
>> > carefully.  Having them in ITK just confuses the issue.
>> >
>> > _______________________________________________
>> > Powered by www.kitware.com
>> >
>> > Visit other Kitware open-source projects at
>> > http://www.kitware.com/opensource/opensource.html
>> >
>> > Kitware offers ITK Training Courses, for more information visit:
>> > http://kitware.com/products/protraining.html
>> >
>> > Please keep messages on-topic and check the ITK FAQ at:
>> > http://www.itk.org/Wiki/ITK_FAQ
>> >
>> > Follow this link to subscribe/unsubscribe:
>> > http://www.itk.org/mailman/listinfo/insight-developers
>>
>> _______________________________________________
>> Powered by www.kitware.com
>>
>> Visit other Kitware open-source projects at
>> http://www.kitware.com/opensource/opensource.html
>>
>> Kitware offers ITK Training Courses, for more information visit:
>> http://kitware.com/products/protraining.html
>>
>> Please keep messages on-topic and check the ITK FAQ at:
>> http://www.itk.org/Wiki/ITK_FAQ
>>
>> Follow this link to subscribe/unsubscribe:
>> http://www.itk.org/mailman/listinfo/insight-developers
>
>
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Kitware offers ITK Training Courses, for more information visit:
> http://kitware.com/products/protraining.html
>
> Please keep messages on-topic and check the ITK FAQ at:
> http://www.itk.org/Wiki/ITK_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.itk.org/mailman/listinfo/insight-developers
>
>


More information about the Insight-developers mailing list