[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: GNUstep-base: make check fails on a clean machine
From: |
Richard Frith-Macdonald |
Subject: |
Re: GNUstep-base: make check fails on a clean machine |
Date: |
Sun, 10 Apr 2011 08:09:32 +0100 |
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).
I guess nobody else tried running the tests on an uninstalled base on a clean
machine (which is precisely where it's most important to run them) ... thanks
for doing that.
I've added the appropriate include directory in the makefile so that it should
now work (I hope) for both flattened and non-flattened builds.