On 9 Apr 2011, at 23:17, Wolfgang Lux wrote:
Just tried to execute make check on a clean machine after executing
make but before installing via sudo make install. The result is
that all tests fail to build because the header file GNUstepBase/
GSConfig.h is not found. E.g.,
In file included from /home/wolfgang/Projects/GNUstep/base/Headers/
Foundation/NSAutoreleasePool.h:27
from /usr/GNUstep/System/Library/Makefiles/
TestFramework/Testing.h:26
from decoding.m:5:
/home/wolfgang/Projects/GNUstep/base/Headers/GNUstepBase/
GSVersionMacros.h:193:33: warning: GNUstepBase/GSConfig.h: No such
file or directory
This _could_ be solved by adding -I$(TOP_DIR)/Source to
ADDITIONAL_INCLUDE_DIRS in the check rule in Tests/GNUmakefile.
However, I do not understand why this file is moved to Source/
GNUstepBase from Headers/GNUstepBase in the first place, where it
is created by the configure script. If this file were left in
Headers/GNUstepBase no additional include flags would be needed
(the question applies to config.h as well of course). An additional
benefit of not moving the file is that configure would not touch it
when the configuration hasn't changed and thus could avoid needless
recompilation.
These headers are actually placed in $GNUSTEP_TARGET_DIR/GNUstepBase
when you build base. The GNUSTEP_TARGET_DIR part of that path
contains no architecture/os specific in a flattened setup, but
varies if you are using a non-flattened setup (because there are
different versions of the header for each of the different non-
flattened builds).