diff options
author | P. J. McDermott <pj@pehjota.net> | 2014-05-21 00:35:25 (EDT) |
---|---|---|
committer | P. J. McDermott <pj@pehjota.net> | 2014-05-21 00:37:40 (EDT) |
commit | 1ba0b487a24e151edd8865a87569f5392ef996d7 (patch) | |
tree | bc4c018e70c790fabb7820502e02195b3397cb76 /patches | |
parent | c762ee2d5c6e50494b89b9659856e7428e96c4cf (diff) |
patches/02_fix-mconf-linking.patch: New file.
Diffstat (limited to 'patches')
-rw-r--r-- | patches/02_fix-mconf-linking.patch | 30 |
1 files changed, 30 insertions, 0 deletions
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" <pj@pehjota.net> +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 <https://fedoraproject.org/wiki/UnderstandingDSOLinkChange> 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 |