@@ -8,15 +8,9 @@ apt-get install -y wget lsb-release
88distro=$( lsb_release -si | tr [:upper:] [:lower:])
99release=$( lsb_release -sr)
1010
11- # lsb_release -sr prints n/a for debian sid, replace it by 13
12- if [ " ${distro} " = " debian" ] && [ " ${release} " = " n/a" ]
13- then
14- release=13
15- fi
16-
1711os=" ${distro}${release} "
1812
19- if [ " $arch " = " riscv64" ] || [ " ${os} " = " debian13 " ]
13+ if [ " $arch " = " riscv64" ]
2014then
2115 apt-get install -y devscripts libfuse3-dev cmake cpio golang libcap-dev libssl-dev libfuse-dev pkg-config libattr1-dev python3-dev python3-setuptools python3-dev python3-setuptools uuid-dev libz-dev lsb-release
2216 cd /tmp
2519 cd cvmfs-cvmfs-${cvmfsversion}
2620 mkdir /root/deb
2721 sed -i ' s/amd64 armhf arm64/amd64 armhf arm64 riscv64/' packaging/debian/cvmfs/control*
28- sed -i ' s/python-dev/python3-dev/' packaging/debian/cvmfs/control*
29- sed -i ' s/python-setuptools/python3-setuptools/' packaging/debian/cvmfs/control*
30- # debian13 has libfuse3-4
31- [ $os = " debian13" ] && sed -i ' s/libfuse3-3/libfuse3-4/' packaging/debian/cvmfs/control*
32- if [ " $arch " = " riscv64" ]
33- then
34- # valgrind is not available (yet) for RISC-V
35- sed -i ' s/, valgrind//' packaging/debian/cvmfs/control*
36- # for RISC-V we need to run autoreconf, see:
37- # https://github.com/cvmfs/cvmfs/pull/3446
38- wget https://github.com/cvmfs/cvmfs/pull/3446.patch
39- patch -p 1 -i ./3446.patch
40- rm 3446.patch
41- # QEMU shows the host CPU in /proc/cpuinfo, so we need to tweak the CPU detection for some packages and use uname -m instead
42- sed -i " s/^ISA=.*/ISA=\$ (uname -m)/" externals/libcrypto/src/configureHook.sh
43- sed -i " s/rv64/riscv64/" externals/libcrypto/src/configureHook.sh
44- sed -i " s/^ISA=.*/ISA=\$ (uname -m)/" externals/protobuf/src/configureHook.sh
45- sed -i " s/rv64/riscv64/" externals/protobuf/src/configureHook.sh
46- else
47- apt-get install -y valgrind
48- fi
49-
50- # gcc 14 fix for CVMFS's dependency pacparser, see
51- # https://github.com/manugarg/pacparser/issues/194
52- if gcc --version | grep -q " ^gcc.*14" ; then
53- cat << EOF > externals/pacparser/src/fix_gcc14.patch
54- --- src/spidermonkey/js/src/jsapi.c
55- +++ src/spidermonkey/js/src/jsapi.c
56- @@ -93,7 +93,7 @@
57- #ifdef HAVE_VA_LIST_AS_ARRAY
58- #define JS_ADDRESSOF_VA_LIST(ap) ((va_list *)(ap))
59- #else
60- -#define JS_ADDRESSOF_VA_LIST(ap) (&(ap))
61- +#define JS_ADDRESSOF_VA_LIST(ap) ((va_list *)(&(ap)))
62- #endif
63-
64- #if defined(JS_PARANOID_REQUEST) && defined(JS_THREADSAFE)
65- EOF
66- fi
22+ # debian13 provides libfuse3-4, see https://github.com/cvmfs/cvmfs/pull/3847
23+ [ $os = " debian13" ] && sed -i ' s/libfuse3-3 (>= 3.3.0)/libfuse3-3 (>= 3.3.0) | libfuse3-4/g' packaging/debian/cvmfs/control*
24+ # valgrind is not available (yet) for RISC-V
25+ sed -i ' s/, valgrind//' packaging/debian/cvmfs/control*
26+ # QEMU shows the host CPU in /proc/cpuinfo, so we need to tweak the CPU detection for some packages and use uname -m instead
27+ sed -i " s/^ISA=.*/ISA=\$ (uname -m)/" externals/libcrypto/src/configureHook.sh
28+ sed -i " s/rv64/riscv64/" externals/libcrypto/src/configureHook.sh
29+ sed -i " s/^ISA=.*/ISA=\$ (uname -m)/" externals/protobuf/src/configureHook.sh
30+ sed -i " s/rv64/riscv64/" externals/protobuf/src/configureHook.sh
6731
6832 cd ci/cvmfs
69- # make sure the cvmfs package also uses debian 13 for debian sid
70- [ $release = " 13" ] && sed -i " s@\$ (lsb_release -sr)@13@" ./deb.sh && sed -i " s/focal/trixie/" ./deb.sh
7133 ./deb.sh /tmp/cvmfs-cvmfs-${cvmfsversion} /root/deb
7234else
7335 mkdir -p /root/deb
0 commit comments