* Fixes for cygwin.

* Instance/rules.make: Add Windows resource files for cygwin
* config.make.in: Cygwin does not have ln-s
* rules.make: Add Windows resource rules for cygwin
* target.make (cygwin): Fix shared link cmd.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/tools/make/trunk@21781 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Adam Fedor 2005-10-07 02:39:08 +00:00
parent 5c057dd87d
commit 4d0e99ab89
5 changed files with 34 additions and 2 deletions

View file

@ -1,3 +1,11 @@
2005-10-06 Tom MacSween <macsweent@sympatico.ca>
* Fixes for cygwin.
* Instance/rules.make: Add Windows resource files for cygwin
* config.make.in: Cygwin does not have ln-s
* rules.make: Add Windows resource rules for cygwin
* target.make (cygwin): Fix shared link cmd.
2005-10-06 Nicola Pero <n.pero@mi.flashnet.it>
* rules.make (ALL_OBJCCFLAGS, $(GNUSTEP_OBJ_DIR)/%${OEXT}): When

View file

@ -222,9 +222,14 @@ CC_OBJ_FILES = $(addprefix $(GNUSTEP_OBJ_DIR)/,$(CC_OBJS))
ifeq ($(findstring mingw32, $(GNUSTEP_TARGET_OS)), mingw32)
WINDRES_OBJS = $(patsubst %.rc,%$(OEXT),$($(GNUSTEP_INSTANCE)_WINDRES_FILES))
WINDRES_OBJ_FILES = $(addprefix $(GNUSTEP_OBJ_DIR)/,$(WINDRES_OBJS))
else
ifeq ($(findstring cygwin, $(GNUSTEP_TARGET_OS)), cygwin)
WINDRES_OBJS = $(patsubst %.rc,%$(OEXT),$($(GNUSTEP_INSTANCE)_WINDRES_FILES))
WINDRES_OBJ_FILES = $(addprefix $(GNUSTEP_OBJ_DIR)/,$(WINDRES_OBJS))
else
WINDRES_OBJ_FILES =
endif
endif
OBJ_FILES = $($(GNUSTEP_INSTANCE)_OBJ_FILES)

View file

@ -57,6 +57,13 @@ endif
ifeq (@target_os@,mingw32)
HAS_LN_S = no
endif
# Special case - on cygwin, autoconf sets LN_S to 'ln -s', but then
# that does a recursive copy (ie, cp -r).
ifeq (@target_os@,cygwin)
HAS_LN_S = no
endif
# This is used to remove an existing symlink before creating a new
# one. We don't trust 'ln -s -f' as it's unportable so we remove

View file

@ -522,6 +522,18 @@ $(GNUSTEP_OBJ_DIR)/%${OEXT}: %.rc
$(ECHO_COMPILING)windres $< $@$(END_ECHO)
endif
#
# Special cygwin specific rules to compile Windows resource files (.rc files)
# into object files. (this is the same rule as mingw32)
#
ifeq ($(findstring cygwin, $(GNUSTEP_TARGET_OS)), cygwin)
# Add the .rc suffix on Windows.
.SUFFIXES: .rc
# A rule to generate a .o file from the .rc file.
$(GNUSTEP_OBJ_DIR)/%${OEXT}: %.rc
$(ECHO_COMPILING)windres $< $@$(END_ECHO)
endif
# The following dummy rules are needed for performance - we need to
# prevent make from spending time trying to compute how/if to rebuild

View file

@ -930,8 +930,8 @@ HAVE_SHARED_LIBS = yes
# symbols to export, creates the DLL (eg, obj/gnustep-base.dll) and
# the import library
SHARED_LIB_LINK_CMD = \
$(CC) $(SHARED_LD_PREFLAGS) -shared -o $(GNUSTEP_OBJ_DIR)/$(LIB_LINK_DLL_FILE) \
-Wl,--out-implib=$(GNUSTEP_OBJ_DIR)/$(LIB_LINK_VERSION_FILE) \
$(CC) $(SHARED_LD_PREFLAGS) -shared -o $(LIB_LINK_OBJ_DIR)/$(LIB_LINK_DLL_FILE) \
-Wl,--out-implib=$(LIB_LINK_OBJ_DIR)/$(LIB_LINK_VERSION_FILE) \
-Wl,--export-all-symbols \
-Wl,--enable-auto-import \
-Wl,--whole-archive $(OBJ_FILES_TO_LINK) $(ALL_LDFLAGS) \