mirror of
https://github.com/gnustep/tools-make.git
synced 2025-04-22 22:00:49 +00:00
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:
parent
db7b83db50
commit
5880af9b93
4 changed files with 198 additions and 169 deletions
|
@ -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.
|
||||
|
|
24
configure.in
24
configure.in
|
@ -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
|
||||
|
|
36
library.make
36
library.make
|
@ -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 \
|
||||
|
|
Loading…
Reference in a new issue