Message ID | 20240716220940.3828246-1-denis@denix.org |
---|---|
State | Accepted, archived |
Commit | f08df9adf290fb6cbebff24df6bbbbe8e5ce95e0 |
Headers | show |
Series | nativesdk-libtool: sanitize the script, remove buildpaths | expand |
On Tue, 2024-07-16 at 18:09 -0400, Denys Dmytriyenko via lists.openembedded.org wrote: > From: Denys Dmytriyenko <denys@konsulko.com> > > Copy the same sed command to sanitize libtool script from target recipe > to nativesdk one. Otherwise fails with buildpaths QA error: > > ERROR: nativesdk-libtool-2.5.0-r0 do_package_qa: QA Issue: File /usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/bin/libtool in package nativesdk-libtool contains reference to TMPDIR [buildpaths] > > Signed-off-by: Denys Dmytriyenko <denys@konsulko.com> > --- > .../libtool/nativesdk-libtool_2.5.0.bb | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > > diff --git a/meta/recipes-devtools/libtool/nativesdk-libtool_2.5.0.bb b/meta/recipes-devtools/libtool/nativesdk-libtool_2.5.0.bb > index ddb60e717c..69de7a8e40 100644 > --- a/meta/recipes-devtools/libtool/nativesdk-libtool_2.5.0.bb > +++ b/meta/recipes-devtools/libtool/nativesdk-libtool_2.5.0.bb > @@ -13,6 +13,18 @@ do_install () { > autotools_do_install > install -d ${D}${bindir}/ > install -m 0755 libtool ${D}${bindir}/ > + > + sed -e 's@--sysroot=${STAGING_DIR_HOST}@@g' \ > + -e "s@${DEBUG_PREFIX_MAP}@@g" \ > + -e 's@${STAGING_DIR_HOST}@@g' \ > + -e 's@${STAGING_DIR_NATIVE}@@g' \ > + -e 's@^\(sys_lib_search_path_spec="\).*@\1${libdir} ${base_libdir}"@' \ > + -e 's@^\(compiler_lib_search_dirs="\).*@\1${libdir} ${base_libdir}"@' \ > + -e 's@^\(compiler_lib_search_path="\).*@\1${libdir} ${base_libdir}"@' \ > + -e 's@^\(predep_objects="\).*@\1"@' \ > + -e 's@^\(postdep_objects="\).*@\1"@' \ > + -e "s@${HOSTTOOLS_DIR}/@@g" \ > + -i ${D}${bindir}/libtool > } > > SYSROOT_PREPROCESS_FUNCS += "libtoolnativesdk_sysroot_preprocess" > Rather than duplicate code, particularly long commands like this, it should be moved to a function and called from both locations. Cheers, Richard
On Wed, Jul 17, 2024 at 07:29:45AM +0100, Richard Purdie wrote: > On Tue, 2024-07-16 at 18:09 -0400, Denys Dmytriyenko via lists.openembedded.org wrote: > > From: Denys Dmytriyenko <denys@konsulko.com> > > > > Copy the same sed command to sanitize libtool script from target recipe > > to nativesdk one. Otherwise fails with buildpaths QA error: > > > > ERROR: nativesdk-libtool-2.5.0-r0 do_package_qa: QA Issue: File /usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/bin/libtool in package nativesdk-libtool contains reference to TMPDIR [buildpaths] > > > > Signed-off-by: Denys Dmytriyenko <denys@konsulko.com> > > --- > > .../libtool/nativesdk-libtool_2.5.0.bb | 12 ++++++++++++ > > 1 file changed, 12 insertions(+) > > > > diff --git a/meta/recipes-devtools/libtool/nativesdk-libtool_2.5.0.bb b/meta/recipes-devtools/libtool/nativesdk-libtool_2.5.0.bb > > index ddb60e717c..69de7a8e40 100644 > > --- a/meta/recipes-devtools/libtool/nativesdk-libtool_2.5.0.bb > > +++ b/meta/recipes-devtools/libtool/nativesdk-libtool_2.5.0.bb > > @@ -13,6 +13,18 @@ do_install () { > > autotools_do_install > > install -d ${D}${bindir}/ > > install -m 0755 libtool ${D}${bindir}/ > > + > > + sed -e 's@--sysroot=${STAGING_DIR_HOST}@@g' \ > > + -e "s@${DEBUG_PREFIX_MAP}@@g" \ > > + -e 's@${STAGING_DIR_HOST}@@g' \ > > + -e 's@${STAGING_DIR_NATIVE}@@g' \ > > + -e 's@^\(sys_lib_search_path_spec="\).*@\1${libdir} ${base_libdir}"@' \ > > + -e 's@^\(compiler_lib_search_dirs="\).*@\1${libdir} ${base_libdir}"@' \ > > + -e 's@^\(compiler_lib_search_path="\).*@\1${libdir} ${base_libdir}"@' \ > > + -e 's@^\(predep_objects="\).*@\1"@' \ > > + -e 's@^\(postdep_objects="\).*@\1"@' \ > > + -e "s@${HOSTTOOLS_DIR}/@@g" \ > > + -i ${D}${bindir}/libtool > > } > > > > SYSROOT_PREPROCESS_FUNCS += "libtoolnativesdk_sysroot_preprocess" > > > > Rather than duplicate code, particularly long commands like this, it > should be moved to a function and called from both locations. v2 submitted.
diff --git a/meta/recipes-devtools/libtool/nativesdk-libtool_2.5.0.bb b/meta/recipes-devtools/libtool/nativesdk-libtool_2.5.0.bb index ddb60e717c..69de7a8e40 100644 --- a/meta/recipes-devtools/libtool/nativesdk-libtool_2.5.0.bb +++ b/meta/recipes-devtools/libtool/nativesdk-libtool_2.5.0.bb @@ -13,6 +13,18 @@ do_install () { autotools_do_install install -d ${D}${bindir}/ install -m 0755 libtool ${D}${bindir}/ + + sed -e 's@--sysroot=${STAGING_DIR_HOST}@@g' \ + -e "s@${DEBUG_PREFIX_MAP}@@g" \ + -e 's@${STAGING_DIR_HOST}@@g' \ + -e 's@${STAGING_DIR_NATIVE}@@g' \ + -e 's@^\(sys_lib_search_path_spec="\).*@\1${libdir} ${base_libdir}"@' \ + -e 's@^\(compiler_lib_search_dirs="\).*@\1${libdir} ${base_libdir}"@' \ + -e 's@^\(compiler_lib_search_path="\).*@\1${libdir} ${base_libdir}"@' \ + -e 's@^\(predep_objects="\).*@\1"@' \ + -e 's@^\(postdep_objects="\).*@\1"@' \ + -e "s@${HOSTTOOLS_DIR}/@@g" \ + -i ${D}${bindir}/libtool } SYSROOT_PREPROCESS_FUNCS += "libtoolnativesdk_sysroot_preprocess"