1
1
using BinaryBuilder
2
2
3
3
name = " Libffi"
4
- version = v " 3.2.1 "
5
-
4
+ upstream_version = " 3.4.6 "
5
+ version = VersionNumber (upstream_version)
6
6
7
7
# Collection of sources required to build libffi
8
8
sources = [
9
- ArchiveSource (" https://sourceware.org/pub/libffi/libffi-$(version) .tar.gz" ,
10
- " d06ebb8e1d9a22d19e38d63fdb83954253f39bedc5d46232a05645685722ca37" ),
11
- DirectorySource (" ./bundled" ),
9
+ ArchiveSource (" https://github.com/libffi/libffi/releases/download/v$(upstream_version) /libffi-$(upstream_version) .tar.gz" ,
10
+ " b0dea9df23c863a7a50e825440f3ebffabd65df1497108e5d437747843895a4e" ),
12
11
]
13
12
14
- version = v " 3.2.2" # <-- this is a lie, we need to bump the version to require julia v1.6
15
-
16
13
# Bash recipe for building across all platforms
17
14
script = raw """
18
15
cd $WORKSPACE/srcdir/libffi-*/
19
- atomic_patch -p1 ../patches/0001-libdir-no-touchy.patch
20
-
21
- # Required on aarch64-apple-darwin to build with newer versions of LLVM. See:
22
- # - https://github.com/llvm/llvm-project/issues/72802
23
- # - Similar issue: https://github.com/libffi/libffi/issues/807
24
- # - In Julia: https://github.com/JuliaLang/julia/pull/54634
25
- if [[ ${target} == aarch64-apple-* ]]; then
26
- atomic_patch -p1 ../patches/0002-aarch64-llvm18.patch
27
- fi
28
-
29
16
update_configure_scripts
30
- autoreconf -f -i
31
- ./configure --prefix=${prefix} --build=${MACHTYPE} --host=${target} --disable-static --enable-shared
17
+ ./configure --prefix=${prefix} \
18
+ --build=${MACHTYPE} \
19
+ --host=${target} \
20
+ --disable-static \
21
+ --enable-shared \
22
+ --disable-multi-os-directory
32
23
make -j${nproc}
33
24
make install
34
25
"""
35
26
36
27
# These are the platforms we will build for by default, unless further
37
28
# platforms are passed in on the command line
38
- platforms = supported_platforms (; experimental = true )
29
+ platforms = supported_platforms ()
39
30
40
31
# The products that we will ensure are always built
41
32
products = [
@@ -47,4 +38,6 @@ dependencies = Dependency[
47
38
]
48
39
49
40
# Build the tarballs, and possibly a `build.jl` as well.
50
- build_tarballs (ARGS , name, version, sources, script, platforms, products, dependencies; julia_compat= " 1.6" )
41
+ build_tarballs (ARGS , name, version, sources, script, platforms, products, dependencies; julia_compat= " 1.6" , preferred_gcc_version= v " 6" )
42
+
43
+ # Build trigger: 2
0 commit comments