[oe] [meta-oe][PATCH] lvm2/libdevmapper: Make it build for native

Andrey Zhizhikin andrey.z at gmail.com
Tue Feb 25 09:45:45 UTC 2020


Hello all,

I've just faced the problem with building lvm2 of the [zeus] and it
looks like this patch causes issues with similar symptoms that has
been reported for bash CVE [1].

This patch also touches the configure part, and in case if `-c
cleanall` is used - the build succeeds.

Failed build log looks like following:
ERROR: lvm2-2.03.02-r0 do_patch: Command Error: 'quilt --quiltrc
/development/projects/build-output/work/corei7-64-poky-linux/lvm2/2.03.02-r0/recipe-sysroot-native/etc/quiltrc
push' exited with 0  Output:
Applying patch 0001-configure-Fix-setting-of-CLDFLAGS-default.patch
patching file configure
Hunk #1 FAILED at 3077.
Hunk #2 FAILED at 3098.
Hunk #3 FAILED at 3111.
3 out of 3 hunks FAILED -- rejects in file configure
patching file configure.ac
Hunk #2 succeeded at 50 (offset -1 lines).
Hunk #3 succeeded at 63 (offset -1 lines).
Patch 0001-configure-Fix-setting-of-CLDFLAGS-default.patch does not
apply (enforce with -f)
ERROR: Logfile of failure stored in:
/development/projects/build-output/work/corei7-64-poky-linux/lvm2/2.03.02-r0/temp/log.do_patch.10047
ERROR: Task (/development/projects/yocto-build-appliance/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2_2.03.02.bb:do_patch)
failed with exit code '1'

Since there was no decision (yet) taken on the bash one - can we
combine those two together to find a common solution for both cases?

On Wed, Sep 11, 2019 at 4:53 PM Peter Kjellerstedt
<peter.kjellerstedt at axis.com> wrote:
>
> Backport a patch from upstream master that corrects the passing of
> link flags through configure.
>
> Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt at axis.com>
> ---
>  ...gure-Fix-setting-of-CLDFLAGS-default.patch | 78 +++++++++++++++++++
>  meta-oe/recipes-support/lvm2/lvm2.inc         |  1 +
>  2 files changed, 79 insertions(+)
>  create mode 100644 meta-oe/recipes-support/lvm2/files/0001-configure-Fix-setting-of-CLDFLAGS-default.patch
>
> diff --git a/meta-oe/recipes-support/lvm2/files/0001-configure-Fix-setting-of-CLDFLAGS-default.patch b/meta-oe/recipes-support/lvm2/files/0001-configure-Fix-setting-of-CLDFLAGS-default.patch
> new file mode 100644
> index 000000000..07cb88ffb
> --- /dev/null
> +++ b/meta-oe/recipes-support/lvm2/files/0001-configure-Fix-setting-of-CLDFLAGS-default.patch
> @@ -0,0 +1,78 @@
> +From 4a3e707402032788e09282e0f54fdf82c8a0f8fc Mon Sep 17 00:00:00 2001
> +From: Marian Csontos <mcsontos at redhat.com>
> +Date: Mon, 19 Aug 2019 14:54:43 +0200
> +Subject: [PATCH] configure: Fix setting of CLDFLAGS default
> +
> +---
> + configure    | 6 +++---
> + configure.ac | 6 +++---
> + 2 files changed, 6 insertions(+), 6 deletions(-)
> +
> +Upstream-Status: Backport [https://sourceware.org/git/?p=lvm2.git;a=commit;h=4a3e707402032788e09282e0f54fdf82c8a0f8fc]
> +Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt at axis.com>
> +
> +diff --git a/configure b/configure
> +index ff3a59b6b..4c8476502 100755
> +--- a/configure
> ++++ b/configure
> +@@ -3077,7 +3077,7 @@ if test -z "$CFLAGS"; then :
> + fi
> + case "$host_os" in
> +       linux*)
> +-              CLDFLAGS="${CLDFLAGS:"$LDFLAGS"} -Wl,--version-script,.export.sym"
> ++              CLDFLAGS="${CLDFLAGS-"$LDFLAGS"} -Wl,--version-script,.export.sym"
> +               # equivalent to -rdynamic
> +               ELDFLAGS="-Wl,--export-dynamic"
> +               # FIXME Generate list and use --dynamic-list=.dlopen.sym
> +@@ -3098,7 +3098,7 @@ case "$host_os" in
> +               ;;
> +       darwin*)
> +               CFLAGS="$CFLAGS -no-cpp-precomp -fno-common"
> +-              CLDFLAGS="${CLDFLAGS:"$LDFLAGS"}"
> ++              CLDFLAGS="${CLDFLAGS-"$LDFLAGS"}"
> +               ELDFLAGS=
> +               CLDWHOLEARCHIVE="-all_load"
> +               CLDNOWHOLEARCHIVE=
> +@@ -3111,7 +3111,7 @@ case "$host_os" in
> +               BLKDEACTIVATE=no
> +               ;;
> +       *)
> +-              CLDFLAGS="${CLDFLAGS:"$LDFLAGS"}"
> ++              CLDFLAGS="${CLDFLAGS-"$LDFLAGS"}"
> +               ;;
> + esac
> +
> +diff --git a/configure.ac b/configure.ac
> +index 5da694631..830edb8da 100644
> +--- a/configure.ac
> ++++ b/configure.ac
> +@@ -30,7 +30,7 @@ AC_CANONICAL_TARGET([])
> + AS_IF([test -z "$CFLAGS"], [COPTIMISE_FLAG="-O2"])
> + case "$host_os" in
> +       linux*)
> +-              CLDFLAGS="${CLDFLAGS:"$LDFLAGS"} -Wl,--version-script,.export.sym"
> ++              CLDFLAGS="${CLDFLAGS-"$LDFLAGS"} -Wl,--version-script,.export.sym"
> +               # equivalent to -rdynamic
> +               ELDFLAGS="-Wl,--export-dynamic"
> +               # FIXME Generate list and use --dynamic-list=.dlopen.sym
> +@@ -51,7 +51,7 @@ case "$host_os" in
> +               ;;
> +       darwin*)
> +               CFLAGS="$CFLAGS -no-cpp-precomp -fno-common"
> +-              CLDFLAGS="${CLDFLAGS:"$LDFLAGS"}"
> ++              CLDFLAGS="${CLDFLAGS-"$LDFLAGS"}"
> +               ELDFLAGS=
> +               CLDWHOLEARCHIVE="-all_load"
> +               CLDNOWHOLEARCHIVE=
> +@@ -64,7 +64,7 @@ case "$host_os" in
> +               BLKDEACTIVATE=no
> +               ;;
> +       *)
> +-              CLDFLAGS="${CLDFLAGS:"$LDFLAGS"}"
> ++              CLDFLAGS="${CLDFLAGS-"$LDFLAGS"}"
> +               ;;
> + esac
> +
> +--
> +2.21.0
> +
> diff --git a/meta-oe/recipes-support/lvm2/lvm2.inc b/meta-oe/recipes-support/lvm2/lvm2.inc
> index f358663b0..6c95bfd02 100644
> --- a/meta-oe/recipes-support/lvm2/lvm2.inc
> +++ b/meta-oe/recipes-support/lvm2/lvm2.inc
> @@ -15,6 +15,7 @@ SRC_URI = "https://sourceware.org/pub/lvm2/LVM2.${PV}.tgz \
>             file://0001-Avoid-bashisms-in-init-scripts.patch \
>             file://0005-do-not-build-manual.patch \
>             file://0006-start-lvm2-monitor.service-after-tmp.mount.patch \
> +           file://0001-configure-Fix-setting-of-CLDFLAGS-default.patch \
>             "
>  SRC_URI[md5sum] = "5fc07da5461a3794a751dcfc355827d5"
>  SRC_URI[sha256sum] = "550ba750239fd75b7e52c9877565cabffef506bbf6d7f6f17b9700dee56c720f"
> --
> 2.21.0
>
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel

[1]: http://lists.openembedded.org/pipermail/openembedded-core/2020-February/292991.html

--
Regards,
Andrey.


More information about the Openembedded-devel mailing list