[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#607530: [advi]: FTBFS with linker flag --as-needed



Package: advi
Version: 1.9.0-1
Severity: wishlist
Tags: patch

Hi,

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

Attached is a patch that fixes the problem.

Cheers,
  Stefan.
[1]:
<http://people.ubuntuwire.org/~lucas/ubuntu-nbs/32/advi_1.9.0-1_lubuntu32.buildlog>
[2]:
<http://people.ubuntuwire.org/~lucas/ubuntu-nbs/64/advi_1.9.0-1_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
Index: advi-1.9.0/src/Makefile.am
===================================================================
--- advi-1.9.0.orig/src/Makefile.am	2010-03-24 08:52:41.000000000 +0100
+++ advi-1.9.0/src/Makefile.am	2010-12-19 15:32:36.392866917 +0100
@@ -75,7 +75,7 @@
 COBJS           = $(CSOURCES:.c=.o)
 
 AM_CFLAGS	= $(XINERAMA_CFLAGS) $(X_CFLAGS)
-AM_LINKFLAGS	= $(XINERAMA_LIBS)
+LDADD		= $(XINERAMA_LIBS)
 AM_OCAMLCFLAGS	= $(CAMLIMAGES_INCLUDES)
 
 OTHER_LIBS	= unix str
@@ -85,12 +85,12 @@
 advi$(EXEEXT): $(COBJS) $(OCAMLOPTOBJS)
 	$(OCAMLOPT) -o advi$(EXEEXT) \
 		$(OCAMLCFLAGS) $(AM_OCAMLCFLAGS) $(AM_LINKFLAGS) \
-		$(COBJS) $(OCAMLLIBS_OPT) $(OCAMLOPTOBJS)
+		$(COBJS) $(OCAMLLIBS_OPT) $(OCAMLOPTOBJS) $(LDADD)
 
 advi.byt$(EXEEXT): $(COBJS) $(OCAMLBYTOBJS)
 	$(OCAMLC) -o advi.byt$(EXEEXT) \
 		$(OCAMLCFLAGS) $(AM_OCAMLCFLAGS) $(AM_LINKFLAGS) -custom \
-		$(COBJS) $(OCAMLLIBS_BYT) $(OCAMLBYTOBJS)
+		$(COBJS) $(OCAMLLIBS_BYT) $(OCAMLBYTOBJS) $(LDADD)
 
 install_hook: $(INSTALLEXEC) installdata
 	- texhash
Index: advi-1.9.0/src/Makefile.in
===================================================================
--- advi-1.9.0.orig/src/Makefile.in	2010-12-19 15:33:10.582866917 +0100
+++ advi-1.9.0/src/Makefile.in	2010-12-19 15:34:47.332866917 +0100
@@ -253,7 +253,7 @@
 OCAMLOPTOBJS = $(OCAMLBUILTSOURCES:.ml=.cmx) $(OCAMLSOURCES:.ml=.cmx)
 COBJS = $(CSOURCES:.c=.o)
 AM_CFLAGS = $(XINERAMA_CFLAGS) $(X_CFLAGS)
-AM_LINKFLAGS = $(XINERAMA_LIBS)
+LDADD = $(XINERAMA_LIBS)
 AM_OCAMLCFLAGS = $(CAMLIMAGES_INCLUDES)
 OTHER_LIBS = unix str
 OCAMLLIBS_OPT = $(CAMLIMAGES_LIBS_NATIVE) $(OTHER_LIBS:=.cmxa)
@@ -519,12 +519,12 @@
 advi$(EXEEXT): $(COBJS) $(OCAMLOPTOBJS)
 	$(OCAMLOPT) -o advi$(EXEEXT) \
 		$(OCAMLCFLAGS) $(AM_OCAMLCFLAGS) $(AM_LINKFLAGS) \
-		$(COBJS) $(OCAMLLIBS_OPT) $(OCAMLOPTOBJS)
+		$(COBJS) $(OCAMLLIBS_OPT) $(OCAMLOPTOBJS) $(LDADD)
 
 advi.byt$(EXEEXT): $(COBJS) $(OCAMLBYTOBJS)
 	$(OCAMLC) -o advi.byt$(EXEEXT) \
 		$(OCAMLCFLAGS) $(AM_OCAMLCFLAGS) $(AM_LINKFLAGS) -custom \
-		$(COBJS) $(OCAMLLIBS_BYT) $(OCAMLBYTOBJS)
+		$(COBJS) $(OCAMLLIBS_BYT) $(OCAMLBYTOBJS) $(LDADD)
 
 install_hook: $(INSTALLEXEC) installdata
 	- texhash

Reply to: