Add ability to place backend independant libs

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/tools/make/trunk@8661 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Adam Fedor 2001-01-17 18:20:26 +00:00
parent db7b83db50
commit 5880af9b93
4 changed files with 198 additions and 169 deletions

View file

@ -1,3 +1,10 @@
2001-01-17 Adam Fedor <fedor@gnu.org>
* library.make (LIBRARY_OBJ_DIR): New redefinable var to specify
where libraries go. Some packages can specify backend independant
libs to go in library_combo/..
* configure.in: Check for libobjc in new dir.
Wed Jan 17 16:49:54 2001 Nicola Pero <nicola@brainstorm.co.uk>
* rpm.make (rpm): Fixed typo in copying tar gz file.

300
configure vendored

File diff suppressed because it is too large Load diff

View file

@ -201,8 +201,9 @@ if test "$TAR" = ""; then
fi
#--------------------------------------------------------------------
# Strip '-g' off of CFLAGS, since debug=yes adds that anyway
# Miscellaneous flags
#--------------------------------------------------------------------
# Strip '-g' off of CFLAGS, since debug=yes adds that anyway
CFLAGS=`echo $CFLAGS | sed -e 's/-g //'`
# CPPFLAGS are used throughout for additional includes, which eventually
@ -213,6 +214,17 @@ if test "$FORCE_CPPFLAGS" = ""; then
fi
AC_SUBST(FORCE_CPPFLAGS)
# Set location of GNUstep dirs for later use
GNUSTEP_HDIR=$GNUSTEP_SYSTEM_ROOT/Headers
if test "$GNUSTEP_FLATTENED" = yes; then
GNUSTEP_LDIR=$GNUSTEP_SYSTEM_ROOT/Libraries
else
clean_target_os=`$srcdir/clean_os.sh $target_os`
clean_target_cpu=`$srcdir/clean_cpu.sh $target_cpu`
obj_dir=$clean_target_cpu/$clean_target_os
GNUSTEP_LDIR=$GNUSTEP_SYSTEM_ROOT/Libraries/$obj_dir
fi
#--------------------------------------------------------------------
# Miscellaneous headers (for make programs only)
#--------------------------------------------------------------------
@ -453,13 +465,9 @@ AC_MSG_CHECKING(for alternate objc library)
AC_CACHE_VAL(gs_cv_objc_libdir,
[dnl
gs_cv_objc_libdir=NONE
if test -f $GNUSTEP_SYSTEM_ROOT/Headers/objc/objc.h; then
clean_target_os=`$srcdir/clean_os.sh $target_os`
clean_target_cpu=`$srcdir/clean_cpu.sh $target_cpu`
obj_dir=$clean_target_cpu/$clean_target_os/$ac_cv_library_combo
if test -f $GNUSTEP_SYSTEM_ROOT/Libraries/$obj_dir/libobjc.a \
-o -f $GNUSTEP_SYSTEM_ROOT/Libraries/$obj_dir/libobjc.so; then
gs_cv_objc_libdir=$GNUSTEP_SYSTEM_ROOT/Libraries/$obj_dir
if test -f $GNUSTEP_HDIR/objc/objc.h; then
if test -f $GNUSTEP_LDIR/libobjc.a -o -f $GNUSTEP_LDIR/libobjc.so; then
gs_cv_objc_libdir=$GNUSTEP_LDIR
else
gs_cv_objc_libdir=NONE
fi

View file

@ -89,6 +89,12 @@ $(LIBRARY_NAME):
else
# This part gets included the second time make is invoked.
# This is the directory where the libs get installed. Normally this
# includes the target arch and os directory and library_combo.
ifeq ($(LIBRARY_OBJ_DIR),)
LIBRARY_OBJ_DIR = $(GNUSTEP_OBJ_DIR)
endif
ifeq ($(shared), yes)
ifneq ($(BUILD_DLL),yes)
@ -148,11 +154,11 @@ SHARED_CFLAGS += -DBUILD_$(CLEAN_library_NAME)_DLL=1
internal-library-all :: \
before-$(TARGET)-all \
$(GNUSTEP_OBJ_DIR) \
$(LIBRARY_OBJ_DIR) \
$(DERIVED_SOURCES) \
$(DERIVED_SOURCES)/$(INTERNAL_library_NAME).def \
$(GNUSTEP_OBJ_DIR)/$(DLL_NAME) \
$(GNUSTEP_OBJ_DIR)/$(DLL_EXP_LIB) \
$(LIBRARY_OBJ_DIR)/$(DLL_NAME) \
$(LIBRARY_OBJ_DIR)/$(DLL_EXP_LIB) \
after-$(TARGET)-all
internal-library-clean ::
@ -166,10 +172,10 @@ DLL_OFILES = $(C_OBJ_FILES) $(OBJC_OBJ_FILES) $(OBJ_FILES) $(SUBPROJECT_OBJ_FILE
$(DERIVED_SOURCES)/$(INTERNAL_library_NAME).def : $(DLL_OFILES) $(DLL_DEF)
$(DLLTOOL) $(DLL_DEF_FLAG) --output-def $@ $(DLL_OFILES)
$(GNUSTEP_OBJ_DIR)/$(DLL_EXP_LIB) : $(DERIVED_SOURCES)/$(INTERNAL_library_NAME).def
$(LIBRARY_OBJ_DIR)/$(DLL_EXP_LIB) : $(DERIVED_SOURCES)/$(INTERNAL_library_NAME).def
$(DLLTOOL) --dllname $(DLL_NAME) --def $< --output-lib $@
$(GNUSTEP_OBJ_DIR)/$(DLL_NAME) : $(DLL_OFILES) $(DERIVED_SOURCES)/$(INTERNAL_library_NAME).def
$(LIBRARY_OBJ_DIR)/$(DLL_NAME) : $(DLL_OFILES) $(DERIVED_SOURCES)/$(INTERNAL_library_NAME).def
$(DLLWRAP) --driver-name $(CC) \
$(SHARED_LD_PREFLAGS) \
--def $(DERIVED_SOURCES)/$(INTERNAL_library_NAME).def \
@ -179,11 +185,11 @@ $(GNUSTEP_OBJ_DIR)/$(DLL_NAME) : $(DLL_OFILES) $(DERIVED_SOURCES)/$(INTERNAL_lib
else # BUILD_DLL
internal-library-all:: before-$(TARGET)-all $(GNUSTEP_OBJ_DIR) \
$(GNUSTEP_OBJ_DIR)/$(VERSION_LIBRARY_FILE) import-library \
internal-library-all:: before-$(TARGET)-all $(LIBRARY_OBJ_DIR) \
$(LIBRARY_OBJ_DIR)/$(VERSION_LIBRARY_FILE) import-library \
after-$(TARGET)-all
$(GNUSTEP_OBJ_DIR)/$(VERSION_LIBRARY_FILE): $(C_OBJ_FILES) $(OBJC_OBJ_FILES) $(OBJ_FILES) $(SUBPROJECT_OBJ_FILES)
$(LIBRARY_OBJ_DIR)/$(VERSION_LIBRARY_FILE): $(C_OBJ_FILES) $(OBJC_OBJ_FILES) $(OBJ_FILES) $(SUBPROJECT_OBJ_FILES)
$(LIB_LINK_CMD)
endif # BUILD_DLL
@ -221,20 +227,20 @@ internal-install-headers::
ifeq ($(BUILD_DLL),yes)
internal-install-lib::
if [ -f $(GNUSTEP_OBJ_DIR)/$(DLL_NAME) ]; then \
$(INSTALL_PROGRAM) $(GNUSTEP_OBJ_DIR)/$(DLL_NAME) \
if [ -f $(LIBRARY_OBJ_DIR)/$(DLL_NAME) ]; then \
$(INSTALL_PROGRAM) $(LIBRARY_OBJ_DIR)/$(DLL_NAME) \
$(DLL_INSTALLATION_DIR) ; \
fi
if [ -f $(GNUSTEP_OBJ_DIR)/$(DLL_EXP_LIB) ]; then \
$(INSTALL_PROGRAM) $(GNUSTEP_OBJ_DIR)/$(DLL_EXP_LIB) \
if [ -f $(LIBRARY_OBJ_DIR)/$(DLL_EXP_LIB) ]; then \
$(INSTALL_PROGRAM) $(LIBRARY_OBJ_DIR)/$(DLL_EXP_LIB) \
$(GNUSTEP_LIBRARIES) ; \
fi
else
internal-install-lib::
if [ -f $(GNUSTEP_OBJ_DIR)/$(VERSION_LIBRARY_FILE) ]; then \
$(INSTALL_PROGRAM) $(GNUSTEP_OBJ_DIR)/$(VERSION_LIBRARY_FILE) \
if [ -f $(LIBRARY_OBJ_DIR)/$(VERSION_LIBRARY_FILE) ]; then \
$(INSTALL_PROGRAM) $(LIBRARY_OBJ_DIR)/$(VERSION_LIBRARY_FILE) \
$(GNUSTEP_LIBRARIES) ; \
$(AFTER_INSTALL_LIBRARY_CMD) \
fi
@ -272,7 +278,7 @@ internal-uninstall-import-lib::
# Cleaning targets
#
internal-library-clean::
rm -rf $(GNUSTEP_OBJ_DIR)
rm -rf $(LIBRARY_OBJ_DIR)
internal-library-distclean::
rm -rf shared_obj static_obj shared_debug_obj shared_profile_obj \