Skip to content

Commit c6917ed

Browse files
committed
guile: update to 3.0.11
1 parent 5b5623d commit c6917ed

7 files changed

Lines changed: 363 additions & 6 deletions

File tree

parts.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1363,16 +1363,16 @@ boehm-gc 8.2.12
13631363
The Boehm-Demers-Weiser conservative garbage collector can be used as a garbage
13641364
collecting replacement for C malloc or C++ new.
13651365

1366-
guile 3.0.9
1367-
===========
1366+
guile 3.0.11
1367+
============
13681368

13691369
GNU Ubiquitous Intelligent Language for Extensions (GNU Guile) is the preferred
13701370
extension language system for the GNU Project and features an implementation
13711371
of the programming language Scheme.
13721372

13731373
We use ``guile-psyntax-bootstrapping`` project on Guile 3.0.7 to bootstrap
13741374
Guile's ``psyntax.pp`` without relying on pre-expanded code. This is then
1375-
transplanted into Guile 3.0.9.
1375+
transplanted into Guile 3.0.11.
13761376

13771377
which 2.21
13781378
==========

steps/SHA256SUMS.pkgs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ b687370caaa654ba2fc622188240f50ea305a1c926accbced153df9179697adf autoconf-2.53_
99
b363f22b42418fb2507bf722b0a6b5b03410ac58c44c400767d650d828696eaa autoconf-2.69_0.tar.bz2
1010
cde51b816fcce47742064f9dc0b4871e4194190be5065dc1852b39339cc9115b autoconf-2.71_0.tar.bz2
1111
6ff691e3ddd4f3d1796d28b07a2a96691dbd9801844c99ccbe660da59dabd74b autoconf-archive-2021.02.19_0.tar.bz2
12-
496e6875aea87287da0a280676cdb4e9efaa5c0acaadba97b3045e9324dfb527 autogen-5.18.16_0.tar.bz2
12+
24be819cf412b1acf04cdc361c68a19b31762f0c374e2421c31d22249b9b0271 autogen-5.18.16_0.tar.bz2
1313
02a426e82a52d4a2cd7e73fe3dc5a2c58b3ed100f24a92c57e42511fd86e247c automake-1.10.3_0.tar.bz2
1414
34925adeaa2876a5e068adeb17b71fe7c7105244c3cb5439d33f7406310674da automake-1.11.2_0.tar.bz2
1515
7e36e9e4b3957c95b6de8ff475c9b37aa007e2f9735b01c0eaf14b711fdd112f automake-1.15.1_0.tar.bz2
@@ -64,7 +64,7 @@ d34de902de6de9204abedb834c4c39fbb95b993e545fbb090de2b028fa1d4a61 gcc-4.0.4_0.ta
6464
c1989fc2855dbb0350c4e5b677028306614a9f4b5cb6c01fd459c5e1abf592b9 grep-2.4_0.tar.bz2
6565
3f3247c7d05fcef0d9f624a523afa01257207584045eb7efb7fb8f29fc782c7a grep-3.7_0.tar.bz2
6666
39320fce205c3d53209351c48c7cc59c6157373f940bd9f425cf3c51558fb09f grub-2.06_0.tar.bz2
67-
a45b0b301268a216af09d1bac26146da2c58809f4fb90c073f2d217af041d565 guile-3.0.9_0.tar.bz2
67+
9a5a816925d408967664e82b22b3280db77d940411b0730415dc44f8c9ec09eb guile-3.0.11_0.tar.bz2
6868
893bb26efb8b1789702b8fd1a3ed72951990c8e38ab650c5220992405e79b96e gzip-1.13_0.tar.bz2
6969
f27e1eaafa7ab198d2ed549aecfd8a1205d960f59a509789a159997565abd6d4 heirloom-devtools-070527_0.tar.bz2
7070
8d2015b87337abbf287f7a39ee4cf53514120b5d3e90a93fe7d533dcc43f14fa help2man-1.36.4_0.tar.bz2
Lines changed: 122 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,122 @@
1+
#!/bin/sh
2+
3+
# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
4+
#
5+
# SPDX-License-Identifier: GPL-3.0-or-later
6+
7+
rm gnulib-local/m4/clock_time.m4.diff
8+
../gnulib-901694b9/gnulib-tool --import --local-dir=gnulib-local \
9+
--lib=libgnu \
10+
--source-base=lib \
11+
--m4-base=m4 \
12+
--doc-base=doc \
13+
--tests-base=tests \
14+
--aux-dir=build-aux \
15+
--lgpl=3 \
16+
--conditional-dependencies \
17+
--libtool \
18+
--macro-prefix=gl \
19+
--no-vc-files \
20+
--avoid=lock \
21+
--avoid=unistr/base \
22+
--avoid=unistr/u8-mbtouc \
23+
--avoid=unistr/u8-mbtouc-unsafe \
24+
--avoid=unistr/u8-mbtoucr \
25+
--avoid=unistr/u8-prev \
26+
--avoid=unistr/u8-uctomb \
27+
--avoid=unitypes \
28+
accept4 \
29+
alignof \
30+
alloca-opt \
31+
announce-gen \
32+
autobuild \
33+
bind \
34+
byteswap \
35+
c-strcase \
36+
canonicalize-lgpl \
37+
ceil \
38+
clock-time \
39+
close \
40+
connect \
41+
copysign \
42+
dirfd \
43+
dirname-lgpl \
44+
duplocale \
45+
environ \
46+
extensions \
47+
flexmember \
48+
flock \
49+
floor \
50+
fpieee \
51+
frexp \
52+
fstat \
53+
fsync \
54+
full-read \
55+
full-write \
56+
func \
57+
gendocs \
58+
getaddrinfo \
59+
getlogin \
60+
getpeername \
61+
getsockname \
62+
getsockopt \
63+
git-version-gen \
64+
gitlog-to-changelog \
65+
gnu-web-doc-update \
66+
gnupload \
67+
havelib \
68+
iconv_open-utf \
69+
inet_ntop \
70+
inet_pton \
71+
isfinite \
72+
isinf \
73+
isnan \
74+
ldexp \
75+
lib-symbol-versions \
76+
lib-symbol-visibility \
77+
libunistring \
78+
link \
79+
listen \
80+
localcharset \
81+
locale \
82+
log1p \
83+
lstat \
84+
maintainer-makefile \
85+
malloc-gnu \
86+
malloca \
87+
mkdir \
88+
mkostemp \
89+
nl_langinfo \
90+
nproc \
91+
nstrftime \
92+
open \
93+
pipe-posix \
94+
pipe2 \
95+
poll \
96+
putenv \
97+
readlink \
98+
recv \
99+
recvfrom \
100+
regex \
101+
rename \
102+
rmdir \
103+
select \
104+
send \
105+
sendto \
106+
setenv \
107+
setsockopt \
108+
shutdown \
109+
socket \
110+
stat-time \
111+
stdlib \
112+
striconveh \
113+
string \
114+
sys_stat \
115+
time \
116+
times \
117+
trunc \
118+
unistd \
119+
verify \
120+
vsnprintf \
121+
warnings \
122+
wchar
Lines changed: 132 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,132 @@
1+
#!/bin/sh
2+
3+
# SPDX-FileCopyrightText: 2023 Samuel Tyler <samuel@samuelt.me>
4+
#
5+
# SPDX-License-Identifier: GPL-3.0-or-later
6+
7+
rm lib/iconv_open-*.h
8+
9+
../gnulib-356a414e/gnulib-tool --import --local-dir=gnulib-local \
10+
--lib=libgnu \
11+
--source-base=lib \
12+
--m4-base=m4 \
13+
--doc-base=doc \
14+
--tests-base=tests \
15+
--aux-dir=build-aux \
16+
--lgpl=3 \
17+
--conditional-dependencies \
18+
--libtool \
19+
--macro-prefix=gl \
20+
--no-vc-files \
21+
--avoid=lock \
22+
--avoid=unistr/base \
23+
--avoid=unistr/u8-mbtouc \
24+
--avoid=unistr/u8-mbtouc-unsafe \
25+
--avoid=unistr/u8-mbtoucr \
26+
--avoid=unistr/u8-prev \
27+
--avoid=unistr/u8-uctomb \
28+
--avoid=unitypes \
29+
accept4 \
30+
alignof \
31+
alloca-opt \
32+
announce-gen \
33+
autobuild \
34+
bind \
35+
byteswap \
36+
c-strcase \
37+
canonicalize-lgpl \
38+
ceil \
39+
clock-time \
40+
close \
41+
connect \
42+
copysign \
43+
dirfd \
44+
dirname-lgpl \
45+
duplocale \
46+
environ \
47+
extensions \
48+
flexmember \
49+
flock \
50+
floor \
51+
fpieee \
52+
frexp \
53+
fstat \
54+
fsync \
55+
full-read \
56+
full-write \
57+
func \
58+
gendocs \
59+
getaddrinfo \
60+
gethostname \
61+
getlogin \
62+
getpeername \
63+
getsockname \
64+
getsockopt \
65+
git-version-gen \
66+
gitlog-to-changelog \
67+
gnu-web-doc-update \
68+
gnupload \
69+
havelib \
70+
iconv_open-utf \
71+
inet_ntop \
72+
inet_pton \
73+
isfinite \
74+
isinf \
75+
isnan \
76+
ldexp \
77+
lib-symbol-versions \
78+
lib-symbol-visibility \
79+
libunistring \
80+
link \
81+
listen \
82+
localcharset \
83+
locale \
84+
log1p \
85+
lstat \
86+
maintainer-makefile \
87+
malloc-gnu \
88+
malloca \
89+
mkdir \
90+
mkostemp \
91+
nl_langinfo \
92+
nproc \
93+
nstrftime \
94+
open \
95+
pipe-posix \
96+
pipe2 \
97+
poll \
98+
posix_spawn \
99+
posix_spawn_file_actions_addclose \
100+
posix_spawn_file_actions_adddup2 \
101+
posix_spawn_file_actions_addopen \
102+
posix_spawn_file_actions_destroy \
103+
posix_spawn_file_actions_init \
104+
posix_spawnp \
105+
putenv \
106+
readlink \
107+
recv \
108+
recvfrom \
109+
regex \
110+
rename \
111+
rmdir \
112+
select \
113+
send \
114+
sendto \
115+
setenv \
116+
setsockopt \
117+
shutdown \
118+
socket \
119+
stat-time \
120+
stdlib \
121+
striconveh \
122+
string \
123+
sys_select \
124+
sys_stat \
125+
time \
126+
times \
127+
trunc \
128+
unistd \
129+
verify \
130+
vsnprintf \
131+
warnings \
132+
wchar

steps/guile-3.0.11/pass1.sh

Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
# SPDX-FileCopyrightText: 2022 Andrius Štikonas <andrius@stikonas.eu>
2+
# SPDX-FileCopyrightText: 2021 Michael Schierl <schierlm@gmx.de>
3+
# SPDX-FileCopyrightText: 2022 Samuel Tyler <samuel@samuelt.me>
4+
#
5+
# SPDX-License-Identifier: GPL-3.0-or-later
6+
7+
# guile-psyntax-bootstrapping only supports Guile 3.0.7
8+
# We need Guile 3.0.8 or later in order to have reproducible builds when
9+
# parallelism (-jX) is enabled.
10+
#
11+
# To work around this issue, we;
12+
# 1. run guile-psyntax-bootstrapping on Guile 3.0.7
13+
# 2. take psyntax-pp.scm from Guile 3.0.7 and transplant into 3.0.11
14+
# 3. compile guile 3.0.11
15+
16+
common_prepare() {
17+
find . -name '*.info*' -delete
18+
for f in doc/ref/*.{pdf,eps}; do
19+
rm "$f"
20+
touch "$f"
21+
done
22+
rm -r prebuilt/*/ice-9
23+
rm libguile/c-tokenize.c libguile/vm-operations.h
24+
25+
# Remove buildstamp
26+
sed -i "s/\`date -u +'%Y-%m-%d %T'.*\`/1970-01-01 00:00:00/" libguile/Makefile.am
27+
28+
autoreconf-2.71 -fi
29+
}
30+
31+
src_prepare() {
32+
# First, prepare Guile 3.0.7
33+
pushd ../guile-3.0.7
34+
rm libguile/srfi-14.i.c
35+
pushd libguile
36+
mv ../../UnicodeData-13.0.0.txt UnicodeData.txt
37+
# Automatically indents the code by default.
38+
# We don't need that and don't have the program.
39+
sed -i '/indent /d' unidata_to_charset.pl
40+
perl unidata_to_charset.pl
41+
popd
42+
../../import-gnulib-3.0.7.sh
43+
common_prepare
44+
45+
# pp-syntax bootstrap: remove pre-gen file
46+
sha256sum module/ice-9/psyntax-pp.scm | tee psyntax-pp.sha256
47+
rm module/ice-9/psyntax-pp.scm
48+
49+
## now let us prepare to rebuild it
50+
echo '(primitive-load-path "psyntax-bootstrap/allsteps")' > module/ice-9/psyntax-pp.scm
51+
mkdir -p module/psyntax-bootstrap
52+
cp ../guile-psyntax-bootstrapping-guile-3.0.7/psyntax-bootstrap/*.scm module/psyntax-bootstrap
53+
pushd module/ice-9
54+
cp psyntax.scm psyntax-patched.scm
55+
patch <../../../guile-psyntax-bootstrapping-guile-3.0.7/stage2.patch
56+
popd
57+
popd
58+
59+
# Now, main version
60+
default
61+
../../import-gnulib.sh
62+
common_prepare
63+
}
64+
65+
src_configure() {
66+
for d in . ../guile-3.0.7; do
67+
pushd "${d}"
68+
PKG_CONFIG_PATH="${LIBDIR}/pkgconfig" ./configure \
69+
--prefix="${PREFIX}" \
70+
--libdir="${LIBDIR}" \
71+
--build="${TARGET}" \
72+
--disable-shared \
73+
--disable-jit
74+
popd
75+
done
76+
}
77+
78+
src_compile() {
79+
# pp-syntax: rebuild
80+
pushd ../guile-3.0.7
81+
make config.h
82+
make libguile/scmconfig.h
83+
make .version
84+
make -C lib all
85+
make -C meta all
86+
make -C libguile all
87+
make -C module ice-9/psyntax-pp.scm.gen
88+
# Note that on 32-bit systems psyntax-pp is not identical to the original
89+
# and some identifier names are different.
90+
popd
91+
92+
# Transplant psyntax-pp.scm
93+
cp -f ../guile-3.0.7/module/ice-9/psyntax-pp.scm module/ice-9/
94+
95+
# Now proceed with the build
96+
default
97+
}

steps/guile-3.0.11/sources

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
f https://mirrors.kernel.org/gnu/guile/guile-3.0.11.tar.xz 818c79d236657a7fa96fb364137cc7b41b3bdee0d65c6174ca03769559579460
2+
f https://mirrors.kernel.org/gnu/guile/guile-3.0.7.tar.xz f57d86c70620271bfceb7a9be0c81744a033f08adc7ceba832c9917ab3e691b7
3+
g https://https.git.savannah.gnu.org/git/gnulib.git~901694b9 _ f9aad85de1f41d57c9368d304020ffbf354a5e56db1297f022c3d12181134e56 gnulib-901694b9.tar.gz
4+
g https://https.git.savannah.gnu.org/git/gnulib.git~356a414e _ fc9973f1a9243fdc4b98d33d7704f3c71bfdc4c2ef96899b8f28cade7290a714 gnulib-356a414e.tar.gz
5+
g https://github.com/schierlm/guile-psyntax-bootstrapping~guile-3.0.7 https://github.com/schierlm/guile-psyntax-bootstrapping/archive/refs/tags/guile-3.0.7.tar.gz 14cda9c416506dfadf60c14fc623ff01ef99b87564a78d0a29c5d17143c97609
6+
f http://ftp.unicode.org/Public/13.0.0/ucd/UnicodeData.txt bdbffbbfc8ad4d3a6d01b5891510458f3d36f7170422af4ea2bed3211a73e8bb UnicodeData-13.0.0.txt

0 commit comments

Comments
 (0)