1 |
commit: 48d25efbdd1168a074338d7bf636a532aec81bd6 |
2 |
Author: Michael Haubenwallner <haubi <AT> gentoo <DOT> org> |
3 |
AuthorDate: Mon Jan 7 14:55:54 2019 +0000 |
4 |
Commit: Michael Haubenwallner <haubi <AT> gentoo <DOT> org> |
5 |
CommitDate: Mon Jan 7 16:20:07 2019 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/proj/prefix.git/commit/?id=48d25efb |
7 |
|
8 |
bootstrap-prefix.sh: really fake install-info too |
9 |
|
10 |
sys-apps/groff really lacks a dependency on texinfo or should configure |
11 |
--without-doc. As the INSTALL_INFO environment variable from stage3 is |
12 |
not preserved for emerge -e system, the host system's real install-info |
13 |
program does choke on empty info files generated by our fake makeinfo. |
14 |
Also, have makeinfo touch only real output files from -o or --output. |
15 |
|
16 |
Signed-off-by: Michael Haubenwallner <haubi <AT> gentoo.org> |
17 |
|
18 |
scripts/bootstrap-prefix.sh | 26 ++++++++++++++++++-------- |
19 |
1 file changed, 18 insertions(+), 8 deletions(-) |
20 |
|
21 |
diff --git a/scripts/bootstrap-prefix.sh b/scripts/bootstrap-prefix.sh |
22 |
index e9cafdb11d..8ff6f94057 100755 |
23 |
--- a/scripts/bootstrap-prefix.sh |
24 |
+++ b/scripts/bootstrap-prefix.sh |
25 |
@@ -1705,20 +1705,30 @@ bootstrap_stage3() { |
26 |
# GCC sometimes decides that it needs to run makeinfo to update some |
27 |
# info pages from .texi files. Obviously we don't care at this |
28 |
# stage and rather have it continue instead of aborting the build |
29 |
- [[ -x "${ROOT}"/usr/bin/makeinfo ]] || cat > "${ROOT}"/usr/bin/makeinfo <<-EOF |
30 |
+ if [[ ! -x "${ROOT}"/usr/bin/makeinfo ]] |
31 |
+ then |
32 |
+ cat > "${ROOT}"/usr/bin/makeinfo <<-EOF |
33 |
#!${ROOT}/bin/bash |
34 |
+ ### bootstrap-prefix.sh will act on this line ### |
35 |
echo "makeinfo GNU texinfo 4.13" |
36 |
- for a in \$@; do |
37 |
+ f= |
38 |
+ while (( \$# > 0 )); do |
39 |
+ a=\$1 |
40 |
+ shift |
41 |
case \$a in |
42 |
- --*) f=\$(echo "\$a" | sed -r 's,--.*=(.*),\1,') ;; |
43 |
- -*) continue ;; |
44 |
- *) f=\$a ;; |
45 |
+ --output=) continue ;; |
46 |
+ --output=*) f=\${a#--output=} ;; |
47 |
+ -o) f=\$1; shift;; |
48 |
esac |
49 |
- [[ -e \$f ]] || touch \$f |
50 |
done |
51 |
+ [[ -z \$f ]] || [[ -e \$f ]] || touch "\$f" |
52 |
+ EOF |
53 |
+ cat > "${ROOT}"/usr/bin/install-info <<-EOF |
54 |
+ #!${ROOT}/bin/bash |
55 |
+ : |
56 |
EOF |
57 |
- chmod +x "${ROOT}"/usr/bin/makeinfo |
58 |
- export INSTALL_INFO="${ROOT}"/usr/bin/makeinfo |
59 |
+ chmod +x "${ROOT}"/usr/bin/{makeinfo,install-info} |
60 |
+ fi |
61 |
|
62 |
if is-rap ; then |
63 |
# Bug 655414. Copy portage global config from stage2 |