From 1ba0b487a24e151edd8865a87569f5392ef996d7 Mon Sep 17 00:00:00 2001 From: P. J. McDermott Date: Wed, 21 May 2014 00:35:25 -0400 Subject: patches/02_fix-mconf-linking.patch: New file. --- (limited to 'patches') diff --git a/patches/02_fix-mconf-linking.patch b/patches/02_fix-mconf-linking.patch new file mode 100644 index 0000000..4549fde --- /dev/null +++ b/patches/02_fix-mconf-linking.patch @@ -0,0 +1,30 @@ +Author: "P. J. McDermott" +Subject: Fix mconf linking + +Recent versions of GNU ld no longer resolve references to symbols in implicitly +linked shared objects. + +The object "scripts/kconfig/lxdialog/checklist.o" references the symbol +"acs_map", which is defined in libtinfo.so.5, which is only implicitly linked. + +This hack causes libtinfo.so.5 to be explicitly linked (added to mconf's +DT_NEEDED) for the symbol to be resolved. + +See for a general +description of ld's behavior. + +(Of course this is only needed to run `make menuconfig`. Normal preconfigured +builds don't need this.) + +diff -Naur src.orig/scripts/kconfig/lxdialog/check-lxdialog.sh src/scripts/kconfig/lxdialog/check-lxdialog.sh +--- src.orig/scripts/kconfig/lxdialog/check-lxdialog.sh ++++ src/scripts/kconfig/lxdialog/check-lxdialog.sh +@@ -10,7 +10,7 @@ + for lib in ncursesw ncurses curses ; do + $cc -print-file-name=lib${lib}.${ext} | grep -q / + if [ $? -eq 0 ]; then +- echo "-l${lib}" ++ echo "-l${lib} -ltinfo" + exit + fi + done -- cgit v0.9.1