[oe] [meta-oe][PATCH] lmbench: fix usrmerge install path
Peter Kjellerstedt
peter.kjellerstedt at axis.com
Fri Aug 24 13:43:35 UTC 2018
> -----Original Message-----
> From: openembedded-devel-bounces at lists.openembedded.org <openembedded-
> devel-bounces at lists.openembedded.org> On Behalf Of
> mingli.yu at windriver.com
> Sent: den 24 augusti 2018 11:25
> To: openembedded-devel at lists.openembedded.org
> Subject: [oe] [meta-oe][PATCH] lmbench: fix usrmerge install path
>
> From: Mingli Yu <Mingli.Yu at windriver.com>
>
> Update $(base_libdir) to $(baselib) to fix
> the below do_install error when usrmerge
> enabled in DISTRO_FEATURES.
>
> | if [ ! -d /poky-build/tmp-glibc/work/core2-64-wrs-linux/lmbench/3.0-
> a9-r2/image/usr/usr/lib64 ]; then mkdir
> /poky-build/tmp-glibc/work/core2-64-wrs-linux/lmbench/3.0-a9-
> r2/image/usr/usr/lib64; fi
> | mkdir: cannot create directory /poky-build/tmp-glibc/work/core2-64-
> wrs-linux/lmbench/3.0-a9-r2/image/usr/usr/lib64 No such file or
> directory
> | Makefile:141: recipe for target 'install-target' failed
> | make[1]: *** [install-target] Error 1
>
> Signed-off-by: Mingli Yu <Mingli.Yu at windriver.com>
> ---
> meta-oe/recipes-benchmark/lmbench/lmbench_3.0-a9.bb | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/meta-oe/recipes-benchmark/lmbench/lmbench_3.0-a9.bb
> b/meta-oe/recipes-benchmark/lmbench/lmbench_3.0-a9.bb
> index 593b62f..c78e7a8 100644
> --- a/meta-oe/recipes-benchmark/lmbench/lmbench_3.0-a9.bb
> +++ b/meta-oe/recipes-benchmark/lmbench/lmbench_3.0-a9.bb
> @@ -51,8 +51,13 @@ do_compile () {
> install -d ${S}/bin/${TARGET_SYS}
> oe_runmake -C src
> }
> +export baselib
>
> do_install () {
> + # fix the lib path when usrmerge enabled
> + if ${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', 'true', 'false', d)}; then
> + sed -i -e "s;\$(BASE)\$(base_libdir);\$(BASE)/\$(baselib);g" ${S}/src/Makefile
The use of $(base_libdir) in the src/Makefile is introduced via an
OE patch, "use-base_libdir-instead-of-hardcoded-lib.patch", and it
Would be better to change that directly instead. There you should
change "$(BASE)$(base_libdir)" to "$(DESTDIR)$(libdir)" while
adding DESTDIR="${D}" to the oe_runmake install line in the
recipe and things should end up where we want them.
While at it you may as well correct the patch to install libmbench.a
with its correct name again (currently it is installed as lmbench.a
due to a mistake in the patch).
Oh, and the Upstream-Status tag in the patch is wrong as well (it is
missing the dash in Upstream-Status)...
As an alternative to the above, and this is what I would recommend,
you can drop the patch and instead add the following after the call
to oe_runmake in do_install:
if [ "${prefix}/lib" != "${libdir}" ]; then
mv ${D}${prefix}/lib ${D}${libdir}
fi
> + fi
> install -d ${D}${sysconfdir}/default/volatiles \
> ${D}${bindir} ${D}${mandir} ${D}${libdir}/lmbench \
> ${D}${datadir}/lmbench/scripts
> --
> 2.7.4
//Peter
More information about the Openembedded-devel
mailing list