summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core
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:24:45 +0000
commitf8f5c054060f446f9f743befbd0bcba35b877473 (patch)
tree5aa21b1d9974b23bf142ccb8914de7f103cdfccd /meta/recipes-core
parentdb0f4a97dfe4d3cb68f31632b74b67aae4f40757 (diff)
downloadpoky-f8f5c054060f446f9f743befbd0bcba35b877473.tar.gz
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). (From OE-Core rev: 796c3d038fb7892a5e5206fb10217623de18853f) Signed-off-by: Scott Garman <scott.a.garman@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core')
-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"
26# builds. 26# builds.
27BUILD_CPPFLAGS += "-D_GNU_SOURCE" 27BUILD_CPPFLAGS += "-D_GNU_SOURCE"
28 28
29# tic from the -native build cannot run without setting this explicitly
30BUILD_LDFLAGS_virtclass-native += "-Wl,-rpath,${base_libdir}"
31
29# Helper function for do_configure to allow multiple configurations 32# Helper function for do_configure to allow multiple configurations
30# $1 the directory to run configure in 33# $1 the directory to run configure in
31# $@ the arguments to pass to configure 34# $@ the arguments to pass to configure
@@ -41,6 +44,7 @@ ncurses_configure() {
41 --enable-hard-tabs \ 44 --enable-hard-tabs \
42 --enable-xmc-glitch \ 45 --enable-xmc-glitch \
43 --enable-colorfgbg \ 46 --enable-colorfgbg \
47 --libdir=${base_libdir} \
44 --with-termpath='${sysconfdir}/termcap:${datadir}/misc/termcap' \ 48 --with-termpath='${sysconfdir}/termcap:${datadir}/misc/termcap' \
45 --with-terminfo-dirs='${sysconfdir}/terminfo:${datadir}/terminfo' \ 49 --with-terminfo-dirs='${sysconfdir}/terminfo:${datadir}/terminfo' \
46 --with-shared \ 50 --with-shared \
@@ -120,7 +124,6 @@ do_install() {
120 ! ${ENABLE_WIDEC} || \ 124 ! ${ENABLE_WIDEC} || \
121 oe_runmake -C widec ${_install_opts} 125 oe_runmake -C widec ${_install_opts}
122 126
123
124 cd narrowc 127 cd narrowc
125 128
126 # include some basic terminfo files 129 # include some basic terminfo files
@@ -155,28 +158,29 @@ do_install() {
155 # else when '-Wl,--no-copy-dt-needed-entries' has been set in 158 # else when '-Wl,--no-copy-dt-needed-entries' has been set in
156 # linker flags. 159 # linker flags.
157 for i in libncurses libncursesw; do 160 for i in libncurses libncursesw; do
158 f=${D}${libdir}/$i.so 161 f=${D}${base_libdir}/$i.so
159 test -h $f || continue 162 test -h $f || continue
160 rm -f $f 163 rm -f $f
161 echo '/* GNU ld script */' >$f 164 echo '/* GNU ld script */' >$f
162 echo "INPUT($i.so.5 AS_NEEDED(-ltinfo))" >>$f 165 echo "INPUT($i.so.5 AS_NEEDED(-ltinfo))" >>$f
163 done 166 done
164 # Make sure that libcurses is linked so that it gets -ltinfo 167
165 # also, this should be addressed upstream really. 168 # Make sure that libcurses is linked so that it gets -ltinfo
166 ln -sf libncurses.so ${D}${libdir}/libcurses.so 169 # also, this should be addressed upstream really.
170 ln -sf libncurses.so ${D}${base_libdir}/libcurses.so
167 171
168 # create libtermcap.so linker script for backward compatibility 172 # create libtermcap.so linker script for backward compatibility
169 f=${D}${libdir}/libtermcap.so 173 f=${D}${base_libdir}/libtermcap.so
170 echo '/* GNU ld script */' >$f 174 echo '/* GNU ld script */' >$f
171 echo 'INPUT(AS_NEEDED(-ltinfo))' >>$f 175 echo 'INPUT(AS_NEEDED(-ltinfo))' >>$f
172 176
173 oe_multilib_header curses.h 177 oe_multilib_header curses.h
174} 178}
175 179
176python populate_packages_prepend () { 180python populate_packages_prepend () {
177 libdir = bb.data.expand("${libdir}", d) 181 base_libdir = bb.data.expand("${base_libdir}", d)
178 pnbase = bb.data.expand("${PN}-lib%s", d) 182 pnbase = bb.data.expand("${PN}-lib%s", d)
179 do_split_packages(d, libdir, '^lib(.*)\.so\..*', pnbase, 'ncurses %s library', prepend=True, extra_depends = '', allow_links=True) 183 do_split_packages(d, base_libdir, '^lib(.*)\.so\..*', pnbase, 'ncurses %s library', prepend=True, extra_depends = '', allow_links=True)
180} 184}
181 185
182 186
@@ -210,6 +214,10 @@ FILES_${PN} = "\
210 ${datadir}/tabset \ 214 ${datadir}/tabset \
211" 215"
212 216
217FILES_${PN}-dev += "\
218 ${base_libdir}/*.so \
219"
220
213# This keeps only tput/tset in ncurses 221# This keeps only tput/tset in ncurses
214# clear/reset are in already busybox 222# clear/reset are in already busybox
215FILES_${PN}-tools = "\ 223FILES_${PN}-tools = "\
@@ -223,6 +231,7 @@ FILES_${PN}-tools = "\
223 ${bindir}/tack \ 231 ${bindir}/tack \
224 ${bindir}/tabs \ 232 ${bindir}/tabs \
225" 233"
234
226# 'reset' is a symlink to 'tset' which is in the 'ncurses' package 235# 'reset' is a symlink to 'tset' which is in the 'ncurses' package
227RDEPENDS_${PN}-tools = "${PN}" 236RDEPENDS_${PN}-tools = "${PN}"
228 237