# This patch sets the build processs 'ld --as-needed' compliant # # First chunck corrects the linking order so that libpe_status is linked # after libpengine. This is needed because the linker evaluates statements # sequentially starting from the inner most lib and libpengine uses functions # that are defined in libpe_status. # # Second chunck explicitly adds CURSESLIBS dependency to libpe_status. # This is requested from the configure.ac upon ncurses detection so we # need to provide 'printw' or any linking with libpe_status will fail. --- pengine/Makefile.am +++ pengine/Makefile.am @@ -58,6 +58,7 @@ # -L$(top_builddir)/lib/pils -lpils -export-dynamic -module -avoid-version libpengine_la_SOURCES = pengine.c allocate.c utils.c constraints.c \ native.c group.c clone.c master.c graph.c +libpengine_la_LIBADD = $(top_builddir)/lib/pengine/libpe_status.la pengine_SOURCES = main.c pengine_LDADD = $(COMMONLIBS) $(top_builddir)/lib/cib/libcib.la --- lib/pengine/Makefile.am +++ lib/pengine/Makefile.am @@ -34,7 +34,7 @@ libpe_status_la_LDFLAGS = -version-info 2:0:0 libpe_status_la_SOURCES = $(rule_files) $(status_files) -libpe_status_la_LIBADD = -llrm +libpe_status_la_LIBADD = -llrm @CURSESLIBS@ clean-generic: rm -f *.log *.debug *~