From: Ulrich Müller Date: Wed, 12 Feb 2020 02:08:37 +0000 (+0100) Subject: mount-boot.eclass: Make awk expression work with mawk. X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=53c9011002e037ee2b8d97a5ee5657be6f4dd275;p=gentoo.git mount-boot.eclass: Make awk expression work with mawk. gensub() is a GNUism and doesn't exist in all awk variants. Use a loop instead. Tested with gawk, nawk, mawk, and busybox awk. Closes: https://bugs.gentoo.org/709322 Signed-off-by: Ulrich Müller --- diff --git a/eclass/mount-boot.eclass b/eclass/mount-boot.eclass index c5c6b69b063e..00b367793252 100644 --- a/eclass/mount-boot.eclass +++ b/eclass/mount-boot.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: mount-boot.eclass @@ -62,8 +62,8 @@ mount-boot_check_status() { return fi - local procstate=$(awk '$2 == "/boot" \ - { print gensub(/^(.*,)?(ro|rw)(,.*)?$/, "\\2", 1, $4); exit }' \ + local procstate=$(awk '$2 == "/boot" { split($4, a, ","); \ + for (i in a) if (a[i] ~ /^r[ow]$/) { print a[i]; break }; exit }' \ /proc/mounts || die "awk failed") if [[ -z ${procstate} ]] ; then