Package: addresses-for-gnustep
Version: 0.4.7-1
Severity: wishlist
Tags: patch

Hi,

addresses-for-gnustep fails to build from source, if --as-needed is used as a 
linker flag [1,2]. The reason is that --as-needed enforces a strict ordering
(symbol users in front of symbol definitions).

Attached is a patch that fixes the problem by sorting out the libraries from
_LDFLAGS into _OBJC_LIBS (the latter is added after the object files for 
linking).

Cheers,
   Stefan.
[1]:
<http://people.ubuntuwire.org/~lucas/ubuntu-nbs/32/addresses-for-gnustep_0.4.7-1build3_lubuntu32.buildlog>
[2]:
<http://people.ubuntuwire.org/~lucas/ubuntu-nbs/64/addresses-for-gnustep_0.4.7-1build3_lubuntu64.buildlog>

-- System Information:
Debian Release: squeeze/sid
  APT prefers natty-updates
  APT policy: (500, 'natty-updates'), (500, 'natty-security'), (500, 'natty')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.37-10-generic (SMP w/4 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
diff -u addresses-for-gnustep-0.4.7/Goodies/VCFViewer/GNUmakefile addresses-for-gnustep-0.4.7/Goodies/VCFViewer/GNUmakefile
--- addresses-for-gnustep-0.4.7/Goodies/VCFViewer/GNUmakefile
+++ addresses-for-gnustep-0.4.7/Goodies/VCFViewer/GNUmakefile
@@ -12,7 +12,7 @@
 VCFViewer_HAS_RESOURCE_BUNDLE = yes
 
 VCFViewer_OBJCFLAGS += -Wall
-VCFViewer_LDFLAGS += -lGWorkspace -lAddresses -lAddressView
+VCFViewer_OBJC_LIBS += -lGWorkspace -lAddresses -lAddressView
 
 VCFViewer_OBJC_FILES = VCFViewer.m 
 VCFViewer_PRINCIPAL_CLASS = VCFViewer
@@ -38 +38 @@
-	@echo -en "\007"
\ Kein Zeilenumbruch am Dateiende.
+	@echo -en "\007"
diff -u addresses-for-gnustep-0.4.7/debian/changelog addresses-for-gnustep-0.4.7/debian/changelog
diff -u addresses-for-gnustep-0.4.7/debian/control addresses-for-gnustep-0.4.7/debian/control
only in patch2:
unchanged:
--- addresses-for-gnustep-0.4.7.orig/AddressManager/GNUmakefile
+++ addresses-for-gnustep-0.4.7/AddressManager/GNUmakefile
@@ -24,8 +24,8 @@
 AddressManager_OBJCFLAGS=-I../Frameworks -Wall
 AddressManager_LDFLAGS=\
 	-L../Frameworks/AddressView/AddressView.framework/$(GNUSTEP_TARGET_LDIR) \
-	-L../Frameworks/Addresses/Addresses.framework/$(GNUSTEP_TARGET_LDIR)     \
-	-lAddressView -lAddresses
+	-L../Frameworks/Addresses/Addresses.framework/$(GNUSTEP_TARGET_LDIR)
+AddressManager_OBJC_LIBS=-lAddressView -lAddresses
 
 -include GNUmakefile.preamble
 -include GNUmakefile.local
only in patch2:
unchanged:
--- addresses-for-gnustep-0.4.7.orig/Test/GNUmakefile
+++ addresses-for-gnustep-0.4.7/Test/GNUmakefile
@@ -9,8 +9,8 @@
 ADSingleTest_OBJCFLAGS=-I../Frameworks -Wall
 ADSingleTest_LDFLAGS=\
 	-L../Frameworks/AddressView/AddressView.framework/Versions/A \
-	-L../Frameworks/Addresses/Addresses.framework/Versions/A     \
-	-lAddressView -lAddresses
+	-L../Frameworks/Addresses/Addresses.framework/Versions/A
+ADSingleTest_OBJC_LIBS=-lAddressView -lAddresses
 
 -include GNUmakefile.preamble
 -include GNUmakefile.local
only in patch2:
unchanged:
--- addresses-for-gnustep-0.4.7.orig/Goodies/adserver/GNUmakefile
+++ addresses-for-gnustep-0.4.7/Goodies/adserver/GNUmakefile
@@ -5,8 +5,8 @@
 adserver_OBJC_FILES=adserver.m
 adserver_OBJCFLAGS=-I../Frameworks -Wall
 adserver_LDFLAGS=\
-	-L../Frameworks/Addresses/Addresses.framework/Versions/A     \
-	-lAddresses
+	-L../Frameworks/Addresses/Addresses.framework/Versions/A
+adserver_OBJC_LIBS=-lAddresses
 -include GNUmakefile.preamble
 -include GNUmakefile.local
 include $(GNUSTEP_MAKEFILES)/tool.make
only in patch2:
unchanged:
--- addresses-for-gnustep-0.4.7.orig/Goodies/adgnumailconverter/GNUmakefile
+++ addresses-for-gnustep-0.4.7/Goodies/adgnumailconverter/GNUmakefile
@@ -3,7 +3,7 @@
 TOOL_NAME=adgnumailconverter
 
 adgnumailconverter_OBJC_FILES=main.m
-adgnumailconverter_LDFLAGS += -lAddresses
+adgnumailconverter_OBJC_LIBS += -lAddresses
 
 -include GNUmakefile.preamble
 -include GNUmakefile.local
only in patch2:
unchanged:
--- addresses-for-gnustep-0.4.7.orig/Goodies/adtool/GNUmakefile
+++ addresses-for-gnustep-0.4.7/Goodies/adtool/GNUmakefile
@@ -5,8 +5,8 @@
 adtool_OBJC_FILES=addresstool.m
 adtool_OBJCFLAGS=-I../Frameworks -Wall
 adtool_LDFLAGS=\
-	-L../Frameworks/Addresses/Addresses.framework/Versions/A     \
-	-lAddresses
+	-L../Frameworks/Addresses/Addresses.framework/Versions/A
+adtool_OBJC_LIBS=-lAddresses
 -include GNUmakefile.preamble
 -include GNUmakefile.local
 include $(GNUSTEP_MAKEFILES)/tool.make
only in patch2:
unchanged:
--- addresses-for-gnustep-0.4.7.orig/Goodies/LDAPAddressBook/LDAPAddressBookClass/GNUmakefile
+++ addresses-for-gnustep-0.4.7/Goodies/LDAPAddressBook/LDAPAddressBookClass/GNUmakefile
@@ -8,7 +8,8 @@
 LDAPAddressBook_MAIN_CLASS=LDAPAddressBook
 LDAPAddressBook_OBJCFLAGS=-I../../Frameworks -Wall
 LDAPAddressBook_LDFLAGS=\
-	-L../../Frameworks/Addresses/Addresses.framework/Versions/A     \
+	-L../../Frameworks/Addresses/Addresses.framework/Versions/A
+LDAPAddressBook_OBJC_LIBS=\
 	-lAddresses -lgsldap
 
 -include GNUmakefile.preamble

Reply via email to