1 |
commit: 1e030951dd8c4099e45395e513e3cf73b0c3d69a |
2 |
Author: Alexei Colin <ac <AT> alexeicolin <DOT> com> |
3 |
AuthorDate: Wed Dec 23 06:18:44 2020 +0000 |
4 |
Commit: Fabian Groffen <grobian <AT> gentoo <DOT> org> |
5 |
CommitDate: Wed Dec 23 07:50:29 2020 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/proj/prefix.git/commit/?id=1e030951 |
7 |
|
8 |
bootstrap-prefix: bump tar to 1.32, apply ioctl patch |
9 |
|
10 |
On macOS 11 Big Sur, stage 1 needs to bootstrap tar but fails to build |
11 |
it (both 1.26 and 1.32) because sys/ioctl.h does not end up included: |
12 |
|
13 |
compare.c:550:3: error: implicit declaration of function 'ioctl' is |
14 |
invalid in C99 [-Werror,-Wimplicit-function-declaration] |
15 |
ioctl (archive, FDFLUSH); |
16 |
|
17 |
Upstream bug report: https://savannah.gnu.org/bugs/index.php?59755 |
18 |
|
19 |
Closes: https://bugs.gentoo.org/761322 |
20 |
Signed-off-by: Alexei Colin <ac <AT> alexeicolin.com> |
21 |
Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org> |
22 |
|
23 |
scripts/bootstrap-prefix.sh | 18 +++++++++++++++++- |
24 |
1 file changed, 17 insertions(+), 1 deletion(-) |
25 |
|
26 |
diff --git a/scripts/bootstrap-prefix.sh b/scripts/bootstrap-prefix.sh |
27 |
index c085472a23..3f96bc5e33 100755 |
28 |
--- a/scripts/bootstrap-prefix.sh |
29 |
+++ b/scripts/bootstrap-prefix.sh |
30 |
@@ -862,6 +862,22 @@ bootstrap_gnu() { |
31 |
[[ -d ${S} ]] || return 1 |
32 |
cd "${S}" || return 1 |
33 |
|
34 |
+ # Tar upstream bug #59755 for broken build on macOS: |
35 |
+ # https://savannah.gnu.org/bugs/index.php?59755 |
36 |
+ if [[ ${PN}-${PV} == "tar-1.32" ]] ; then |
37 |
+ local tar_patch_file="tar-1.32-check-sys-ioctl-header-configure.patch" |
38 |
+ local tar_patch_id="file_id=50554" |
39 |
+ local tar_patch_url="https://file.savannah.gnu.org/file/${tar_patch_file}?${tar_patch_id}" |
40 |
+ efetch "${tar_patch_url}" || return 1 |
41 |
+ # If fetched from upstream url instead of mirror, filename will |
42 |
+ # have a suffix. Remove suffix by copy, not move, to not |
43 |
+ # trigger refetch on repeated invocations of this script. |
44 |
+ if [[ -f "${DISTDIR}/${tar_patch_file}?${tar_patch_id}" ]]; then |
45 |
+ cp ${DISTDIR}/${tar_patch_file}{?${tar_patch_id},} || return 1 |
46 |
+ fi |
47 |
+ patch -p1 < ${DISTDIR}/${tar_patch_file} || return 1 |
48 |
+ fi |
49 |
+ |
50 |
if [[ ${PN}-${PV} == "bash-4.3" && ${CHOST} == *-cygwin* ]] ; then |
51 |
local p patchopts |
52 |
for p in \ |
53 |
@@ -1309,7 +1325,7 @@ bootstrap_coreutils() { |
54 |
} |
55 |
|
56 |
bootstrap_tar() { |
57 |
- bootstrap_gnu tar 1.26 |
58 |
+ bootstrap_gnu tar 1.32 |
59 |
} |
60 |
|
61 |
bootstrap_make() { |