Description: Build with the ld --as-needed option
 Libraries should appear after all objects on the gcc command line, which
 generally means using LDADD macros instead of LDFLAGS for libraries
Author: Stefano Rivera <stefanor@ubuntu.com>
Bug-Upstream: https://sourceforge.net/tracker/?func=detail&aid=3584851&group_id=386093&atid=1604686
Last-Updated: 2012-11-06

--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -45,7 +45,10 @@
 pepper_SOURCES = \
 	main.cpp
 pepper_LDADD = \
-	libpepper.a
+	libpepper.a \
+	$(PTHREAD_LIBS) \
+	$(LUA_LIB) \
+	$(FRAMEWORKS)
 
 AM_CXXFLAGS = \
 	-Wall -W -pipe \
@@ -55,10 +58,7 @@
 AM_CPPFLAGS = \
 	$(LUA_INCLUDE) \
 	-DDATADIR=\"$(pkgdatadir)\"
-AM_LDFLAGS = \
-	$(PTHREAD_LIBS) \
-	$(LUA_LIB) \
-	$(FRAMEWORKS)
+AM_LDFLAGS = 
 
 # Debugging?
 if DEBUG
@@ -84,7 +84,7 @@
 	-DUSE_MERCURIAL
 AM_CXXFLAGS += \
 	$(PYTHON_CPPFLAGS)
-AM_LDFLAGS += \
+pepper_LDADD += \
 	$(PYTHON_LDFLAGS)
 endif
 
@@ -100,7 +100,8 @@
 	$(APR_CFLAGS) \
 	$(SVN_CFLAGS)
 AM_LDFLAGS += \
-	$(SVN_LDFLAGS) \
+	$(SVN_LDFLAGS)
+pepper_LDADD += \
 	$(SVN_LIBS) \
 	$(APR_LIBS)
 endif
--- a/m4/configure_backends.m4
+++ b/m4/configure_backends.m4
@@ -70,8 +70,9 @@
 				AC_CHECK_LIB([svn_diff-1], [svn_diff_file_diff_2], ,[AC_MSG_ERROR([Neccessary Subversion libraries are missing])]) 
 				AC_CHECK_LIB([svn_delta-1], [svn_txdelta_apply], ,[AC_MSG_ERROR([Neccessary Subversion libraries are missing])]) 
 				AC_CHECK_LIB([svn_repos-1], [svn_repos_create], ,[AC_MSG_ERROR([Neccessary Subversion libraries are missing])]) 
+				SVN_LDFLAGS=$LDFLAGS
 				LDFLAGS=$OLD_LDFLAGS
-				SVN_LDFLAGS=$LIBS
+				SVN_LIBS=$LIBS
 				LIBS=$OLD_LIBS
 				AC_SUBST(SVN_CFLAGS)
 				AC_SUBST(SVN_LDFLAGS)
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -104,7 +104,9 @@
 @SVN_BACKEND_TRUE@	$(SVN_CFLAGS)
 
 @SVN_BACKEND_TRUE@am__append_12 = \
-@SVN_BACKEND_TRUE@	$(SVN_LDFLAGS) \
+@SVN_BACKEND_TRUE@	$(SVN_LDFLAGS)
+
+@SVN_BACKEND_TRUE@am__append_12b = \
 @SVN_BACKEND_TRUE@	$(SVN_LIBS) \
 @SVN_BACKEND_TRUE@	$(APR_LIBS)
 
@@ -359,7 +361,12 @@
 	main.cpp
 
 pepper_LDADD = \
-	libpepper.a
+	libpepper.a \
+	$(PTHREAD_LIBS) \
+	$(LUA_LIB) \
+	$(FRAMEWORKS) \
+	$(am__append_8) \
+	$(am__append_12b)
 
 AM_CXXFLAGS = -Wall -W -pipe $(PTHREAD_CFLAGS) $(am__append_1) \
 	$(am__append_7) $(am__append_11) $(am__append_16)
@@ -369,8 +376,8 @@
 AM_CPPFLAGS = $(LUA_INCLUDE) -DDATADIR=\"$(pkgdatadir)\" \
 	$(am__append_4) $(am__append_6) $(am__append_10) \
 	$(am__append_14) $(am__append_18)
-AM_LDFLAGS = $(PTHREAD_LIBS) $(LUA_LIB) $(FRAMEWORKS) $(am__append_2) \
-	$(am__append_8) $(am__append_12)
+AM_LDFLAGS = $(am__append_2) \
+	$(am__append_12)
 
 # Last but not least, the CFLAGS
 AM_CFLAGS = $(AM_CXXFLAGS)
--- a/configure
+++ b/configure
@@ -8439,8 +8439,9 @@
   as_fn_error $? "Neccessary Subversion libraries are missing" "$LINENO" 5
 fi
 
+				SVN_LDFLAGS=$LDFLAGS
 				LDFLAGS=$OLD_LDFLAGS
-				SVN_LDFLAGS=$LIBS
+				SVN_LIBS=$LIBS
 				LIBS=$OLD_LIBS
 
 
