From 496235af8dfd373b54e5610f86bf1cada175ac23 Mon Sep 17 00:00:00 2001 From: "Neal H. Walfield" Date: Wed, 13 May 2015 21:47:11 +0200 Subject: [PATCH 1/1] Fix linking order to work when linked with --as-needed. * curses/Makefile.am (LDADD): Add $(COMMON_LIBS) after all of the local objects and object archives. * gnome3/Makefile.am (LDADD): Likewise. * gtk+-2/Makefile.am (LDADD): Likewise. * qt4/Makefile.am (pinentry_qt4_LDADD): Likewise. * tty/Makefile.am (LDADD): Likewise. Reported-by: Daniel Kahn Gillmor --- curses/Makefile.am | 5 ++--- gnome3/Makefile.am | 5 ++--- gtk+-2/Makefile.am | 5 ++--- qt4/Makefile.am | 6 +++--- tty/Makefile.am | 4 ++-- 5 files changed, 11 insertions(+), 14 deletions(-) diff --git a/curses/Makefile.am b/curses/Makefile.am index e8ea031..4d764c7 100644 --- a/curses/Makefile.am +++ b/curses/Makefile.am @@ -22,9 +22,8 @@ bin_PROGRAMS = pinentry-curses AM_CPPFLAGS = $(COMMON_CFLAGS) $(NCURSES_INCLUDE) -I$(top_srcdir)/pinentry -LDADD = $(COMMON_LIBS) \ - ../pinentry/libpinentry.a ../pinentry/libpinentry-curses.a \ +LDADD = ../pinentry/libpinentry.a ../pinentry/libpinentry-curses.a \ ../assuan/libassuan.a ../secmem/libsecmem.a \ - $(LIBCAP) $(LIBCURSES) $(LIBICONV) + $(COMMON_LIBS) $(LIBCAP) $(LIBCURSES) $(LIBICONV) pinentry_curses_SOURCES = pinentry-curses.c diff --git a/gnome3/Makefile.am b/gnome3/Makefile.am index 78df706..46639de 100644 --- a/gnome3/Makefile.am +++ b/gnome3/Makefile.am @@ -32,8 +32,7 @@ endif AM_CPPFLAGS = $(COMMON_CFLAGS) $(GNOME3CFLAGS) \ $(ncurses_include) -I$(top_srcdir)/assuan \ -I$(top_srcdir)/secmem -I$(top_srcdir)/pinentry -LDADD = $(COMMON_LIBS) \ - ../pinentry/libpinentry.a ../assuan/libassuan.a ../secmem/libsecmem.a \ - $(LIBCAP) $(GNOME3LIBS) $(libcurses) +LDADD = ../pinentry/libpinentry.a ../assuan/libassuan.a ../secmem/libsecmem.a \ + $(COMMON_LIBS) $(LIBCAP) $(GNOME3LIBS) $(libcurses) pinentry_gnome3_SOURCES = pinentry-gnome3.c diff --git a/gtk+-2/Makefile.am b/gtk+-2/Makefile.am index c98139f..7e37469 100644 --- a/gtk+-2/Makefile.am +++ b/gtk+-2/Makefile.am @@ -31,9 +31,8 @@ endif AM_CPPFLAGS = $(COMMON_CFLAGS) $(GTK2CFLAGS) $(ncurses_include) \ -I$(top_srcdir)/secmem -I$(top_srcdir)/pinentry -LDADD = $(COMMON_LIBS) \ - ../pinentry/libpinentry.a ../assuan/libassuan.a ../secmem/libsecmem.a \ - $(LIBCAP) $(GTK2LIBS) $(libcurses) +LDADD = ../pinentry/libpinentry.a ../assuan/libassuan.a ../secmem/libsecmem.a \ + $(COMMON_LIBS) $(LIBCAP) $(GTK2LIBS) $(libcurses) pinentry_gtk_2_SOURCES = pinentry-gtk-2.c \ gtksecentry.c gtksecentry.h gseal-gtk-compat.h diff --git a/qt4/Makefile.am b/qt4/Makefile.am index 31274bb..816aade 100644 --- a/qt4/Makefile.am +++ b/qt4/Makefile.am @@ -38,10 +38,10 @@ AM_CPPFLAGS = $(COMMON_CFLAGS) \ -I$(top_srcdir) -I$(top_srcdir)/assuan -I$(top_srcdir)/secmem \ $(ncurses_include) -I$(top_srcdir)/pinentry AM_CXXFLAGS = $(QT4_CORE_CFLAGS) $(QT4_GUI_CFLAGS) -pinentry_qt4_LDADD = $(COMMON_LIBS) \ - $(QT4_CORE_LIBS) $(QT4_GUI_LIBS) $(libcurses) \ +pinentry_qt4_LDADD = \ ../pinentry/libpinentry.a $(top_builddir)/assuan/libassuan.a \ - $(top_builddir)/secmem/libsecmem.a $(LIBCAP) + $(top_builddir)/secmem/libsecmem.a \ + $(COMMON_LIBS) $(QT4_CORE_LIBS) $(QT4_GUI_LIBS) $(libcurses) $(LIBCAP) BUILT_SOURCES = \ pinentryconfirm.moc qsecurelineedit.moc pinentrydialog.moc diff --git a/tty/Makefile.am b/tty/Makefile.am index 798c08f..aa805b2 100644 --- a/tty/Makefile.am +++ b/tty/Makefile.am @@ -21,8 +21,8 @@ bin_PROGRAMS = pinentry-tty AM_CPPFLAGS = $(COMMON_CFLAGS) -I$(top_srcdir)/pinentry -LDADD = $(COMMON_LIBS) ../pinentry/libpinentry.a \ +LDADD = ../pinentry/libpinentry.a \ ../assuan/libassuan.a ../secmem/libsecmem.a \ - $(LIBCAP) $(LIBICONV) + $(COMMON_LIBS) $(LIBCAP) $(LIBICONV) pinentry_tty_SOURCES = pinentry-tty.c -- 2.1.4