[Bf-committers] GHOST and autoconf

Jonathan Merritt bf-committers@blender.org
Tue, 10 Jun 2003 10:52:01 +1000


Hi Everyone,

>>In reply to Douglas Bischoff (bischofftep@mac.com):
>>    
>>
>>>I really don't object to NaN makefiles, but I just want to know if, as 
>>>someone hoping to learn enough to contribute someday, I should forget 
>>>autoconf and focus on NaN makefiles, or if it is okay to keep using 
>>>autoconf because someday it will be "the way."
>>>      
>>>
>>I think I've said this before, and its only my opinion but I personally
>>would like to see both systems around for as long as possible.  (As well
>>as the Microsoft and the project builder way of doing things)
>>As long as we can keep them all up to date, its nice to have options.
>>That way if someone isn't comfortable with dealing with autoconf they
>>can use the NAN Makefiles if they want.  (and the other way around of course)
>>Also there may be bugs introduced in one build system that only affect one
>>platform.  If there is an alternate build system then development won't
>>stop on that platform until "the" build system gets fixed.
>>    
>>
>
>Great idea, but it'll cost lots of resources. At NaN we struggled with
>the makefiles vs. windows project files. Some ppl generate the windows
>project files from makefiles as well, but we never tried it.
>

IMHO, this is the major point.  Using GNU autotools means that you're 
leveraging a build system employed across countless projects and 
familiar to most Open Source developers (at least, most Open Source 
Linux developers who don't live with their head in a bucket! :-).  You 
therefore have a framework which is constantly being improved and 
updated without any internal effort from the Blender developers.

Could somebody with more experience perhaps comment on what the benefit 
is of keeping the NAN makefiles in the long run?  As far as I can tell, 
the main reasons seem to be that: a) there's a lot of work required to 
shift to GNU autotools, and b) previous NAN developers are familiar with 
the system.  While these are good reasons initially, I don't think they 
seem to be justified in the long run.  (Just IMHO - there may be other 
reasons for keeping the NAN makefiles that I don't really understand yet.)

It's been my (perhaps limited) experience so far that "custom" build 
systems for projects seem to cause more problems than they're worth.  I 
feel my heart sink every time I come across one since I know it will 
typically require ploughing through documentation and hacking in the 
locations of various libraries, etc, before I can even get a project 
built!  To me, putting extra obstacles in the way of even a simple build 
is not a good way to attract developers.

Jonathan Merritt.