summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorScott Garman <scott.a.garman@intel.com>2012-01-04 22:30:29 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-01-05 11:17:41 +0000
commit796c3d038fb7892a5e5206fb10217623de18853f (patch)
treeb033a0566ed179e91bb39ef0a443175276930093
parent6f4268682c33df7537a32f6e52d3698ebfa14e4e (diff)
downloadopenembedded-core-796c3d038fb7892a5e5206fb10217623de18853f.tar.gz
openembedded-core-796c3d038fb7892a5e5206fb10217623de18853f.tar.bz2
openembedded-core-796c3d038fb7892a5e5206fb10217623de18853f.zip
ncurses: move libraries to base_libdir
Various utilities (including bash and the util-linux programs) located in base_bindir (/bin) or base_sbindir (/sbin) dynamically link against many of the ncurses libraries. So move these libraries from libdir (/usr/lib) to base_libdir (/lib). Signed-off-by: Scott Garman <scott.a.garman@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-core/ncurses/ncurses.inc27
1 files changed, 18 insertions, 9 deletions
diff --git a/meta/recipes-core/ncurses/ncurses.inc b/meta/recipes-core/ncurses/ncurses.inc
index 583dad7204..8321d7b021 100644
--- a/meta/recipes-core/ncurses/ncurses.inc
+++ b/meta/recipes-core/ncurses/ncurses.inc
@@ -26,6 +26,9 @@ ENABLE_WIDEC ?= "true"
# builds.
BUILD_CPPFLAGS += "-D_GNU_SOURCE"
+# tic from the -native build cannot run without setting this explicitly
+BUILD_LDFLAGS_virtclass-native += "-Wl,-rpath,${base_libdir}"
+
# Helper function for do_configure to allow multiple configurations
# $1 the directory to run configure in
# $@ the arguments to pass to configure
@@ -41,6 +44,7 @@ ncurses_configure() {
--enable-hard-tabs \
--enable-xmc-glitch \
--enable-colorfgbg \
+ --libdir=${base_libdir} \
--with-termpath='${sysconfdir}/termcap:${datadir}/misc/termcap' \
--with-terminfo-dirs='${sysconfdir}/terminfo:${datadir}/terminfo' \
--with-shared \
@@ -120,7 +124,6 @@ do_install() {
! ${ENABLE_WIDEC} || \
oe_runmake -C widec ${_install_opts}
-
cd narrowc
# include some basic terminfo files
@@ -155,28 +158,29 @@ do_install() {
# else when '-Wl,--no-copy-dt-needed-entries' has been set in
# linker flags.
for i in libncurses libncursesw; do
- f=${D}${libdir}/$i.so
+ f=${D}${base_libdir}/$i.so
test -h $f || continue
rm -f $f
echo '/* GNU ld script */' >$f
echo "INPUT($i.so.5 AS_NEEDED(-ltinfo))" >>$f
done
- # Make sure that libcurses is linked so that it gets -ltinfo
- # also, this should be addressed upstream really.
- ln -sf libncurses.so ${D}${libdir}/libcurses.so
+
+ # Make sure that libcurses is linked so that it gets -ltinfo
+ # also, this should be addressed upstream really.
+ ln -sf libncurses.so ${D}${base_libdir}/libcurses.so
# create libtermcap.so linker script for backward compatibility
- f=${D}${libdir}/libtermcap.so
+ f=${D}${base_libdir}/libtermcap.so
echo '/* GNU ld script */' >$f
echo 'INPUT(AS_NEEDED(-ltinfo))' >>$f
- oe_multilib_header curses.h
+ oe_multilib_header curses.h
}
python populate_packages_prepend () {
- libdir = bb.data.expand("${libdir}", d)
+ base_libdir = bb.data.expand("${base_libdir}", d)
pnbase = bb.data.expand("${PN}-lib%s", d)
- do_split_packages(d, libdir, '^lib(.*)\.so\..*', pnbase, 'ncurses %s library', prepend=True, extra_depends = '', allow_links=True)
+ do_split_packages(d, base_libdir, '^lib(.*)\.so\..*', pnbase, 'ncurses %s library', prepend=True, extra_depends = '', allow_links=True)
}
@@ -210,6 +214,10 @@ FILES_${PN} = "\
${datadir}/tabset \
"
+FILES_${PN}-dev += "\
+ ${base_libdir}/*.so \
+"
+
# This keeps only tput/tset in ncurses
# clear/reset are in already busybox
FILES_${PN}-tools = "\
@@ -223,6 +231,7 @@ FILES_${PN}-tools = "\
${bindir}/tack \
${bindir}/tabs \
"
+
# 'reset' is a symlink to 'tset' which is in the 'ncurses' package
RDEPENDS_${PN}-tools = "${PN}"