Gentoo Archives: gentoo-dev

From: David Seifert <soap@g.o>
To: gentoo-dev@l.g.o
Cc: David Seifert <soap@g.o>
Subject: [gentoo-dev] [PATCH 1/2] multibuild.eclass: remove dead userland_BSD
Date: Sat, 08 Jan 2022 17:38:55
Message-Id: 20220108173751.69375-1-soap@gentoo.org
1 Signed-off-by: David Seifert <soap@g.o>
2 ---
3 eclass/multibuild.eclass | 35 ++++++++++++-----------------------
4 1 file changed, 12 insertions(+), 23 deletions(-)
5
6 diff --git a/eclass/multibuild.eclass b/eclass/multibuild.eclass
7 index 37568ebf87c..cbd48b1eeb6 100644
8 --- a/eclass/multibuild.eclass
9 +++ b/eclass/multibuild.eclass
10 @@ -1,4 +1,4 @@
11 -# Copyright 1999-2021 Gentoo Authors
12 +# Copyright 1999-2022 Gentoo Authors
13 # Distributed under the terms of the GNU General Public License v2
14
15 # @ECLASS: multibuild.eclass
16 @@ -238,33 +238,22 @@ multibuild_merge_root() {
17 local dest=${2}
18
19 local ret
20 + local cp_args=()
21
22 - if use userland_BSD; then
23 - # Most of BSD variants fail to copy broken symlinks, #447370
24 - # also, they do not support --version
25 -
26 - tar -C "${src}" -f - -c . \
27 - | tar -x -f - -C "${dest}"
28 - [[ ${PIPESTATUS[*]} == '0 0' ]]
29 - ret=${?}
30 + if cp -a --version &>/dev/null; then
31 + cp_args+=( -a )
32 else
33 - local cp_args=()
34 -
35 - if cp -a --version &>/dev/null; then
36 - cp_args+=( -a )
37 - else
38 - cp_args+=( -P -R -p )
39 - fi
40 -
41 - if cp --reflink=auto --version &>/dev/null; then
42 - # enable reflinking if possible to make this faster
43 - cp_args+=( --reflink=auto )
44 - fi
45 + cp_args+=( -P -R -p )
46 + fi
47
48 - cp "${cp_args[@]}" "${src}"/. "${dest}"/
49 - ret=${?}
50 + if cp --reflink=auto --version &>/dev/null; then
51 + # enable reflinking if possible to make this faster
52 + cp_args+=( --reflink=auto )
53 fi
54
55 + cp "${cp_args[@]}" "${src}"/. "${dest}"/
56 + ret=${?}
57 +
58 if [[ ${ret} -ne 0 ]]; then
59 die "${MULTIBUILD_VARIANT:-(unknown)}: merging image failed."
60 fi
61 --
62 2.34.1

Replies