[OE-core] [PATCH] rpm: resolve a host contamination issue for mono packaging
Mark Hatle
mark.hatle at windriver.com
Tue Aug 27 16:00:54 UTC 2019
On 8/27/19 10:54 AM, Alexander Kanavin wrote:
> Signed-off-by: Alexander Kanavin <alex.kanavin at gmail.com>
> ---
> ...es-requires-do-not-use-monodis-from-.patch | 58 +++++++++++++++++++
> meta/recipes-devtools/rpm/rpm_4.14.2.1.bb | 1 +
> 2 files changed, 59 insertions(+)
> create mode 100644 meta/recipes-devtools/rpm/files/0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
Instead of hacking with with different names that (shouldn't or) don't exist..
It would be better to just disable the mono-find-* wouldn't it?
If that is the case..
In the fileattrs/mono.attr directory, just remove mono.attr or comment out all
of the lines.
--Mark
> diff --git a/meta/recipes-devtools/rpm/files/0001-mono-find-provides-requires-do-not-use-monodis-from-.patch b/meta/recipes-devtools/rpm/files/0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
> new file mode 100644
> index 00000000000..24aa4c7ffff
> --- /dev/null
> +++ b/meta/recipes-devtools/rpm/files/0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
> @@ -0,0 +1,58 @@
> +From 43fbc3f53302a395463e8450ac81c53f623eec3f Mon Sep 17 00:00:00 2001
> +From: Alexander Kanavin <alex.kanavin at gmail.com>
> +Date: Tue, 27 Aug 2019 17:42:34 +0200
> +Subject: [PATCH] mono-find-provides/requires: do not use monodis from the host
> +
> +There was a host contamination issue here: if monodis was installed
> +on the host, do_package would use that to resolve dependencies
> +of mono libraries (and often fail in that). Without monodis,
> +no dependencies are resolved, which is seemingly how things
> +are supposed to work.
> +
> +Upstream-Status: Inappropriate [oe-core specific]
> +Signed-off-by: Alexander Kanavin <alex.kanavin at gmail.com>
> +---
> + scripts/mono-find-provides | 8 ++++----
> + scripts/mono-find-requires | 8 ++++----
> + 2 files changed, 8 insertions(+), 8 deletions(-)
> +
> +diff --git a/scripts/mono-find-provides b/scripts/mono-find-provides
> +index 9348457d3..b28872ffb 100644
> +--- a/scripts/mono-find-provides
> ++++ b/scripts/mono-find-provides
> +@@ -18,11 +18,11 @@ monolist=($(printf "%s\n" "${filelist[@]}" | grep -E "\\.(exe|dll)\$"))
> + build_bindir="$2/usr/bin"
> + build_libdir="$2$3"
> +
> +-if [ -x $build_bindir/monodis ]; then
> +- monodis="$build_bindir/monodis"
> ++if [ -x $build_bindir/monodis.bogus ]; then
> ++ monodis="$build_bindir/monodis.bogus"
> + export LD_LIBRARY_PATH=$build_libdir${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
> +-elif [ -x /usr/bin/monodis ]; then
> +- monodis="/usr/bin/monodis"
> ++elif [ -x /usr/bin/monodis.bogus ]; then
> ++ monodis="/usr/bin/monodis.bogus"
> + else
> + exit 0;
> + fi
> +diff --git a/scripts/mono-find-requires b/scripts/mono-find-requires
> +index ea58cae48..d270169e1 100644
> +--- a/scripts/mono-find-requires
> ++++ b/scripts/mono-find-requires
> +@@ -18,11 +18,11 @@ monolist=($(printf "%s\n" "${filelist[@]}" | grep -E "\\.(exe|dll)\$"))
> + build_bindir="$2/usr/bin"
> + build_libdir="$2$3"
> +
> +-if [ -x $build_bindir/monodis ]; then
> +- monodis="$build_bindir/monodis"
> ++if [ -x $build_bindir/monodis.bogus ]; then
> ++ monodis="$build_bindir/monodis.bogus"
> + export LD_LIBRARY_PATH=$build_libdir${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
> +-elif [ -x /usr/bin/monodis ]; then
> +- monodis="/usr/bin/monodis"
> ++elif [ -x /usr/bin/monodis.bogus ]; then
> ++ monodis="/usr/bin/monodis.bogus"
> + else
> + exit 0;
> + fi
> diff --git a/meta/recipes-devtools/rpm/rpm_4.14.2.1.bb b/meta/recipes-devtools/rpm/rpm_4.14.2.1.bb
> index 063f4269a57..c37330eb4c6 100644
> --- a/meta/recipes-devtools/rpm/rpm_4.14.2.1.bb
> +++ b/meta/recipes-devtools/rpm/rpm_4.14.2.1.bb
> @@ -41,6 +41,7 @@ SRC_URI = "git://github.com/rpm-software-management/rpm;branch=rpm-4.14.x \
> file://0001-perl-disable-auto-reqs.patch \
> file://0001-rpm-rpmio.c-restrict-virtual-memory-usage-if-limit-s.patch \
> file://0016-rpmscript.c-change-logging-level-around-scriptlets-t.patch \
> + file://0001-mono-find-provides-requires-do-not-use-monodis-from-.patch \
> "
>
> PE = "1"
>
More information about the Openembedded-core
mailing list