[Bf-committers] intern and source issue

Michel Selten bf-committers@blender.org
28 Mar 2003 19:02:45 +0100


Hi,

It has always been the purpose to let the source files from source/
never refer to .h files in intern/.
However, with the new auto* build system, this gives some trouble.
Currently, various Makefile.am's refer to intern/ just because the
source files depend on it. So this practice is in fact breaking the
rule. With the auto* build getting better every day, and almost to a
point where the NaN build system becomes obsolete, the issue about
source and intern may need to be addressed. Below I have summed up four
possible solutions to this problem:

1 - Split off intern to a seperate lib
    Create a new component which will result in a libblender_intern
    library. This implies that a user who wants to build blender, has to
    download one additional package.
2 - Create new include directory in blender/
    In the root directory of blender, create a new directory include/
    that contains all necessary header files for intern/. Of course we
    don't want to maintain any duplicate headerfiles, so this means the
    files need to be removed. This does not apply for header files that
    are only used from within the intern/ directory.
3 - Pass along -I flags to intern from source
    Leave the situation as it is. Pass any include directory to the
    compiler via the -I flag in Makefile.am. This only applies for
    files in source/ to include anything from intern/ and not the other
    way (intern/ needing .h files from source/).
4 - The "I don't know if this works" option
    Somehow update the auto* system so that it does a 'make install'
    of intern/ _before_ it starts compiling source/

I don't really have a preference of one or the other. I just think it's
something that we need to have consensus on.

With regards,
	Michel