|
From: | Adrian Robert |
Subject: | Re: build system observations |
Date: | Wed, 6 Aug 2008 21:36:47 -0400 |
# define GNU_OBJC_CFLAGS -fgnu-runtime -Wno-import -fconstant- string-class=NSConstantString -DGNUSTEP_BASE_LIBRARY=1 - DGNU_GUI_LIBRARY=1 -DGNU_RUNTIME=1 -DGSWARN -DGSDIAGNOSE This is a new flag, better use autoconf substitions instead of the preprocessor.I'm not sure how to do this, but have no objection to someone else making the change if it simplifies things.In configure.in: GNU_OBJC_CFLAGS=... AC_SUBST(GNU_OBJC_CFLAGS) and use @GNU_OBJC_CFLAGS@ in Makefile.in
OK. Looking more closely there seems to be no pattern to when to use @...@ or #define. In configure.in there is:
# ifdef NS_IMPL_GNUSTEP # define C_SWITCH_X_SYSTEM -D_REENTRANT -fPIC -fno-strict-aliasing # define GNU_OBJC_CFLAGS -fgnu-runtime -Wno-import ... ...Since C_SWITCH_X_SYSTEM is a #define, it seems simpler to keep them both the same, instead of adding several lines in various places to do autoconf substitution. Getting rid of the Makefile.c system should be an explicit project, done all at once.
# ifdef C_SWITCH_SYSTEM # undef C_SWITCH_SYSTEM # endif This sequence has not effect, it can be removed.This actually comes BEFORE the above definitions, and is to prevent redefinition errors. Some files under src/s define this, but they do so for X-Windows purposes. The NS port using GNUstep can be built on these systems and therefore needs to change the switch.Please look at how src/config.h is generated, it will have /* # undef C_SWITCH_SYSTEM */so I think this never did anything.
OK, I see your point. Removed.
I'd welcome help on this one. I guess the Carbon port didn't need it,but despite NS using identical "path shenanigans" to the Carbon port, it didn't work there. Not sure what the problem is.First take it out, and then when people see the problem, someone might help. It's just a warning, so it should not harm anyone.
Out.
[Prev in Thread] | Current Thread | [Next in Thread] |