Output all symbols for applications on Windows to allow complicated programs

such a Gorm to work


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/tools/make/trunk@20956 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Nicola Pero 2005-03-22 04:21:57 +00:00
parent ff6a273c37
commit 10380f4067
2 changed files with 19 additions and 0 deletions

View file

@ -1,3 +1,9 @@
2005-03-22 Nicola Pero <n.pero@mi.flashnet.it>
* Instance/application.make (ALL_LDFLAGS): When on a platform
where DLLs are built (such as Mingw), automatically generate a
.exe.a library for the application. Required by Gorm.
2005-03-21 Adam Fedor <fedor@gnu.org>
* GNUmakefile.in: Don't install .GNUsteprc file

View file

@ -101,6 +101,19 @@ APP_FILE = $(GNUSTEP_BUILD_DIR)/$(APP_FILE_NAME)
# Internal targets
#
# If building on Windows, also generate an import library which can be
# used by loadable bundles to resolve symbols in the application. If
# a loadable bundle/palette needs to use symbols in the application,
# it just needs to link against this APP_NAME/APP_NAME.exe.a library.
# We add .exe to the application name to account for Gorm which is
# using the same name for the library (libGorm.dll.a) and for the
# application (Gorm.exe). Using this terminology, just add
# Gorm.app/Gorm.exe.a to the list of objects you link and you get it
# working. TODO: Move this into target.make
ifeq ($(BUILD_DLL), yes)
ALL_LDFLAGS += -Wl,--export-all-symbols -Wl,--out-implib,$(GNUSTEP_BUILD_DIR)/$(APP_DIR_NAME)/$(GNUSTEP_TARGET_LDIR)/$(GNUSTEP_INSTANCE).exe$(LIBEXT)
endif
$(APP_FILE): $(OBJ_FILES_TO_LINK)
$(ECHO_LINKING)$(LD) $(ALL_LDFLAGS) -o $(LDOUT)$@ $(OBJ_FILES_TO_LINK)\
$(ALL_GUI_LIBS)$(END_ECHO)