diff --git a/ChangeLog b/ChangeLog index 8275dde3c..f13dd04f8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,35 @@ +Wed Feb 4 09:11:49 1998 Adam Fedor + + * Changes to allow library to be compiled in a GNUstep package + without having previous libraries installed. + * GNUmakefile (GNUSTEP_MAKEFILE_DIR): New variable. Use it to + include makefiles. + (SUBPROJECTS): Remove Testing. + * GNUmakefile.postamble (before-all): Add header-links depend. + (header-links): New target to link in various header dirs. + * Documentation/GNUmakefile (GNUSTEP_MAKEFILE_DIR): New + variable. Use it to include makefiles. + * Images/GNUmakefile: Likewise. + * Model/GNUmakefile: Likewise. + * Testing/GNUmakefile: Likewise. + * Source/GNUmakefile: Likewise. + * Tools/GNUmakefile: Likewise. + * Source/GNUmakefile.postamble (header-links): Removed. + * Model/GNUmakefile (APP_NAME): Comment out. + (ADDITIONAL_INCLUDE_DIRS): New variable. + * Tools/GNUmakefile.preamble (ADDITIONAL_LIB_DIRS): Include Model + lib dir. + (ADDITIONAL_TOOL_LIBS): Include lgmodel, FoundationExt. + + * Tools/gpbs.m (initialize_gnustep_backend): New function. + + * Headers/gnustep/gui/IMCustomObject.h: Add Appkit/NSView.h. + * Headers/gnuste/NSDPSContext.h: Add stdarg.h + * Model/GMAppKit.m: Update includes. + * Model/IMConnectors.m: Likewise. + * Model/IMCustomObject.m: Likewise. + * Model/IMLoading.m: Likewise. + Thu Jan 29 12:02:08 Ovidiu Predescu * Model/IBClasses.h: New class NSCustomView. diff --git a/GNUmakefile b/GNUmakefile index 4eab9cd47..1a35cc492 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -27,15 +27,17 @@ GNUSTEP_INSTALLATION_DIR = $(GNUSTEP_SYSTEM_ROOT) -include $(GNUSTEP_SYSTEM_ROOT)/Makefiles/common.make +GNUSTEP_MAKEFILE_DIR = $(GNUSTEP_SYSTEM_ROOT)/Makefiles + +include $(GNUSTEP_MAKEFILE_DIR)/common.make # # The list of subproject directories # -SUBPROJECTS = Model Source Images Tools Testing +SUBPROJECTS = Model Source Images Tools -include GNUmakefile.preamble -include $(GNUSTEP_SYSTEM_ROOT)/Makefiles/aggregate.make +include $(GNUSTEP_MAKEFILE_DIR)/aggregate.make -include GNUmakefile.postamble diff --git a/Headers/gnustep/gui/IMCustomObject.h b/Headers/gnustep/gui/IMCustomObject.h index 6e34c2333..6320bc8a0 100644 --- a/Headers/gnustep/gui/IMCustomObject.h +++ b/Headers/gnustep/gui/IMCustomObject.h @@ -31,6 +31,7 @@ #define _GNUstep_H_IMCustomObject #import +#import /* Add an archiving category to object so every object can respond to -nibInstantiate diff --git a/Headers/gnustep/gui/NSDPSContext.h b/Headers/gnustep/gui/NSDPSContext.h index d31008c48..44f6aa38e 100644 --- a/Headers/gnustep/gui/NSDPSContext.h +++ b/Headers/gnustep/gui/NSDPSContext.h @@ -31,6 +31,7 @@ #include #include +#include @class NSData; @class NSMutableData; diff --git a/Images/GNUmakefile b/Images/GNUmakefile index 54934d30b..09d3c05fd 100644 --- a/Images/GNUmakefile +++ b/Images/GNUmakefile @@ -23,7 +23,9 @@ GNUSTEP_INSTALLATION_DIR = $(GNUSTEP_SYSTEM_ROOT) -include $(GNUSTEP_SYSTEM_ROOT)/Makefiles/common.make +GNUSTEP_MAKEFILE_DIR = $(GNUSTEP_SYSTEM_ROOT)/Makefiles + +include $(GNUSTEP_MAKEFILE_DIR)/common.make include ../Version @@ -58,6 +60,6 @@ nsmapping.strings # We don't actually build anything in this directory so # just include the common makefile rules -include $(GNUSTEP_SYSTEM_ROOT)/Makefiles/rules.make +include $(GNUSTEP_MAKEFILE_DIR)/rules.make -include GNUmakefile.postamble diff --git a/Model/GMAppKit.m b/Model/GMAppKit.m index 877b60243..5419b66ce 100644 --- a/Model/GMAppKit.m +++ b/Model/GMAppKit.m @@ -25,7 +25,7 @@ #import #import -#include "GMAppKit.h" +#include "AppKit/GMAppKit.h" void __dummy_GMAppKit_functionForLinking() {} diff --git a/Model/GNUmakefile b/Model/GNUmakefile index 9f766a40a..4b6668698 100644 --- a/Model/GNUmakefile +++ b/Model/GNUmakefile @@ -24,7 +24,9 @@ GNUSTEP_INSTALLATION_DIR = $(GNUSTEP_SYSTEM_ROOT) -include $(GNUSTEP_SYSTEM_ROOT)/Makefiles/common.make +GNUSTEP_MAKEFILE_DIR = $(GNUSTEP_SYSTEM_ROOT)/Makefiles + +include $(GNUSTEP_MAKEFILE_DIR)/common.make LIBRARY_NAME = libgmodel @@ -32,7 +34,7 @@ ifeq ($(GUI_LIB), nx) TOOL_NAME = nib2gmodel endif -APP_NAME = test +# APP_NAME = test libgmodel_OBJC_FILES = IMCustomObject.m IMConnectors.m IMLoading.m GMAppKit.m libgmodel_HEADER_FILES_DIR = . @@ -59,6 +61,9 @@ ADDITIONAL_LIB_DIRS += -L$(GNUSTEP_OBJ_DIR) ADDITIONAL_TOOL_LIBS += -lgmodel -lFoundationExt ADDITIONAL_OBJC_FLAGS += $(BACKEND_DEFINE) +# Additional include directories the compiler should search +ADDITIONAL_INCLUDE_DIRS = -I../Headers -I../Headers/gnustep + # What are the libraries this library depends upon. This is needed for some # systems where building a shared library requires to pass to the linker # all the libraries the target library depends upon. @@ -68,8 +73,8 @@ LIBRARIES_DEPEND_UPON = -lFoundationExt $(FND_LIBS) $(GUI_LIBS) \ -include GNUmakefile.local -include $(GNUSTEP_SYSTEM_ROOT)/Makefiles/library.make -include $(GNUSTEP_SYSTEM_ROOT)/Makefiles/tool.make -include $(GNUSTEP_SYSTEM_ROOT)/Makefiles/application.make +include $(GNUSTEP_MAKEFILE_DIR)/library.make +include $(GNUSTEP_MAKEFILE_DIR)/tool.make +include $(GNUSTEP_MAKEFILE_DIR)/application.make -include GNUmakefile.postamble diff --git a/Model/IMConnectors.m b/Model/IMConnectors.m index 85827450e..fc38b6877 100644 --- a/Model/IMConnectors.m +++ b/Model/IMConnectors.m @@ -28,7 +28,7 @@ #import #include #include -#include "IMCustomObject.h" +#include "AppKit/IMCustomObject.h" #include "IMConnectors.h" static void diff --git a/Model/IMCustomObject.m b/Model/IMCustomObject.m index e11e493e4..895624654 100644 --- a/Model/IMCustomObject.m +++ b/Model/IMCustomObject.m @@ -25,7 +25,7 @@ #import #include -#include "IMCustomObject.h" +#include "AppKit/IMCustomObject.h" @implementation NSObject(ModelUnarchiving) diff --git a/Model/IMLoading.m b/Model/IMLoading.m index 327caf6cd..9582de2e6 100644 --- a/Model/IMLoading.m +++ b/Model/IMLoading.m @@ -29,8 +29,8 @@ #import #include -#include "IMLoading.h" -#include "IMCustomObject.h" +#include "AppKit/IMLoading.h" +#include "AppKit/IMCustomObject.h" void __dummy_IMLoading_functionForLinking() { diff --git a/Source/GNUmakefile b/Source/GNUmakefile index f671fe673..d7acf48b3 100644 --- a/Source/GNUmakefile +++ b/Source/GNUmakefile @@ -26,7 +26,9 @@ GNUSTEP_INSTALLATION_DIR = $(GNUSTEP_SYSTEM_ROOT) -include $(GNUSTEP_SYSTEM_ROOT)/Makefiles/common.make +GNUSTEP_MAKEFILE_DIR = $(GNUSTEP_SYSTEM_ROOT)/Makefiles + +include $(GNUSTEP_MAKEFILE_DIR)/common.make include ../Version @@ -194,6 +196,6 @@ AppKit/DPSOperators.h -include GNUmakefile.preamble -include $(GNUSTEP_SYSTEM_ROOT)/Makefiles/library.make +include $(GNUSTEP_MAKEFILE_DIR)/library.make -include GNUmakefile.postamble diff --git a/Source/GNUmakefile.postamble b/Source/GNUmakefile.postamble index e2c6aa8c9..c3ece708d 100644 --- a/Source/GNUmakefile.postamble +++ b/Source/GNUmakefile.postamble @@ -36,7 +36,7 @@ # # Things to do before compiling -before-all:: header-links +# before-all:: # Things to do after compiling # after-all:: @@ -74,6 +74,3 @@ before-all:: header-links # # GNUstep GUI Library specific targets # -header-links: - -rm -rf ../Headers/AppKit - $(LN_S) ../Headers/gnustep/gui ../Headers/AppKit diff --git a/Testing/GNUmakefile b/Testing/GNUmakefile index 81cc639e8..e9717e6a2 100644 --- a/Testing/GNUmakefile +++ b/Testing/GNUmakefile @@ -25,7 +25,9 @@ # If not, write to the Free Software Foundation, # 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -include $(GNUSTEP_SYSTEM_ROOT)/Makefiles/common.make +GNUSTEP_MAKEFILE_DIR = $(GNUSTEP_SYSTEM_ROOT)/Makefiles + +include $(GNUSTEP_MAKEFILE_DIR)/common.make # The application to be compiled TEST_TOOL_NAME = testpb @@ -35,6 +37,6 @@ testpb_OBJC_FILES = testpb.m -include GNUmakefile.preamble -include $(GNUSTEP_SYSTEM_ROOT)/Makefiles/test-tool.make +include $(GNUSTEP_MAKEFILE_DIR)/test-tool.make -include GNUmakefile.postamble diff --git a/Tools/GNUmakefile b/Tools/GNUmakefile index d16f9454f..4f5a46cc3 100644 --- a/Tools/GNUmakefile +++ b/Tools/GNUmakefile @@ -27,7 +27,9 @@ GNUSTEP_INSTALLATION_DIR = $(GNUSTEP_SYSTEM_ROOT) -include $(GNUSTEP_SYSTEM_ROOT)/Makefiles/common.make +GNUSTEP_MAKEFILE_DIR = $(GNUSTEP_SYSTEM_ROOT)/Makefiles + +include $(GNUSTEP_MAKEFILE_DIR)/common.make # The application to be compiled TOOL_NAME = gpbs @@ -37,6 +39,6 @@ gpbs_OBJC_FILES = gpbs.m -include GNUmakefile.preamble -include $(GNUSTEP_SYSTEM_ROOT)/Makefiles/tool.make +include $(GNUSTEP_MAKEFILE_DIR)/tool.make -include GNUmakefile.postamble diff --git a/Tools/gpbs.m b/Tools/gpbs.m index b76fda31c..5c68980ea 100644 --- a/Tools/gpbs.m +++ b/Tools/gpbs.m @@ -50,6 +50,13 @@ #include +BOOL +initialize_gnustep_backend(void) +{ + /* Dummy replacement for the xdps function */ + return YES; +} + @class PasteboardServer; int debug = 0;