Skip to content

Commit 678bfb3

Browse files
authored
Remove compat wrappers for old platforms (#1070)
* Remove compat wrappers for old platforms * [Docs] Update links in build tips, to avoid showing deprecated syntax
1 parent 3a0f8cd commit 678bfb3

File tree

3 files changed

+14
-18
lines changed

3 files changed

+14
-18
lines changed

Project.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name = "BinaryBuilder"
22
uuid = "12aac903-9f7c-5d81-afc2-d9565ea332ae"
33
authors = ["Elliot Saba <[email protected]>"]
4-
version = "0.3.7"
4+
version = "0.4.0"
55

66
[deps]
77
ArgParse = "c7e460c6-2fb9-53a9-8c5b-16f535851c63"

docs/src/build_tips.md

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,12 @@ fi
1919

2020
Here are other examples of scripts with target-specific checks:
2121

22-
* [XZ](https://github.com/JuliaPackaging/Yggdrasil/blob/8b9ba2b7b4652e96daf506c98c2b373b48eef5cb/X/XZ/build_tarballs.jl) - Custom windows installation
23-
* [Sundials](https://github.com/JuliaPackaging/Yggdrasil/blob/fdbb7392c498cbf5b440cc947c29ab6790de18c6/S/Sundials/build_tarballs.jl#L52-L60) - 32-bit check
22+
* [Kaleido](https://github.com/JuliaPackaging/Yggdrasil/blob/8d5a27e24016c0ff2eae379f15dca17e79fd4be4/K/Kaleido/build_tarballs.jl#L20-L25) - Different steps for Windows and macOS
23+
* [Libical](https://github.com/JuliaPackaging/Yggdrasil/blob/8d5a27e24016c0ff2eae379f15dca17e79fd4be4/L/Libical/build_tarballs.jl#L21-L25) - 32-bit check
2424

2525
It is also possible to run quite different scripts for each target by running different build scripts for different sets of targets. Here is an example where windows builds are separated from other targets:
2626

27-
* [Git](https://github.com/JuliaPackaging/Yggdrasil/blob/bf4ac37978764a3e953d06d7ed052ef06968f3bf/G/Git/build_tarballs.jl)
27+
* [Git](https://github.com/JuliaPackaging/Yggdrasil/blob/8d5a27e24016c0ff2eae379f15dca17e79fd4be4/G/Git/build_tarballs.jl#L22-L26)
2828

2929
## Autoconfigure builds
3030

@@ -38,8 +38,8 @@ make install
3838

3939
Here are examples of autoconfigure build scripts:
4040

41-
* [Patchelf](https://github.com/JuliaPackaging/Yggdrasil/blob/4cacbf2377730f60255500b4e7dd58d9f9c18752/P/Patchelf/build_tarballs.jl#L18-L20)
42-
* [LibCURL](https://github.com/JuliaPackaging/Yggdrasil/blob/4dd53a5ea3df104aa9f3f8f4cd9996568871d2af/L/LibCURL/build_tarballs.jl#L37-L39)
41+
* [Patchelf](https://github.com/JuliaPackaging/Yggdrasil/blob/8d5a27e24016c0ff2eae379f15dca17e79fd4be4/P/Patchelf/build_tarballs.jl#L18-L20)
42+
* [LibCURL](https://github.com/JuliaPackaging/Yggdrasil/blob/8d5a27e24016c0ff2eae379f15dca17e79fd4be4/L/LibCURL/build_tarballs.jl#L55-L57)
4343

4444

4545
## CMake builds
@@ -52,12 +52,11 @@ cmake -DCMAKE_INSTALL_PREFIX=${prefix} -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TARGET_TOO
5252

5353
The toolchain file sets up several CMake environment variables for better cross-platform support, such as `CMAKE_SYSROOT`, `CMAKE_C_COMPILER`, etc... Examples of builds that include CMake parts include:
5454

55-
* [JpegTurbo](https://github.com/JuliaPackaging/Yggdrasil/blob/92fb385b4de0bdd0c378b45e83ef4bad116bbd08/J/JpegTurbo/build_tarballs.jl)
55+
* [JpegTurbo](https://github.com/JuliaPackaging/Yggdrasil/blob/8d5a27e24016c0ff2eae379f15dca17e79fd4be4/J/JpegTurbo/build_tarballs.jl#L19-L21)
5656

57-
* [Sundials](https://github.com/JuliaPackaging/Yggdrasil/blob/fdbb7392c498cbf5b440cc947c29ab6790de18c6/S/Sundials/build_tarballs.jl#L46-L60)
58-
- Needs `-DSUNDIALS_INDEX_TYPE=int32_t` on 32-bit targets (Sundials-specific way to specify integer size)
59-
- Needs to copy *.dll files from `destdir/lib` to `destdir/bin` for windows; this also removes symlinks by using `cp -L`
60-
- Needs `-DCMAKE_FIND_ROOT_PATH="$WORKSPACE/destdir"`, so CMake's `find_library` can find libraries from KLU
57+
* [Sundials](https://github.com/JuliaPackaging/Yggdrasil/blob/8d5a27e24016c0ff2eae379f15dca17e79fd4be4/S/Sundials/Sundials%405/build_tarballs.jl#L42-L55)
58+
- Needs to copy *.dll files from `${prefix}/lib` to `${libdir}` for Windows
59+
- Needs `KLU_LIBRARY_DIR="$libdir"`, so CMake's `find_library` can find libraries from KLU
6160

6261
## Meson builds
6362

@@ -78,17 +77,17 @@ The wizard automatically suggests using Meson if the `meson.build` file is prese
7877

7978
Examples of builds performed with Meson include:
8079

81-
* [gdk-pixbuf](https://github.com/JuliaPackaging/Yggdrasil/blob/2f3638292c99fa6032634517f8a1aa8360d6fe8d/G/gdk_pixbuf/build_tarballs.jl):
80+
* [gdk-pixbuf](https://github.com/JuliaPackaging/Yggdrasil/blob/8d5a27e24016c0ff2eae379f15dca17e79fd4be4/G/gdk_pixbuf/build_tarballs.jl#L22-L35):
8281
here meson uses platform-dependent options;
83-
* [libepoxy](https://github.com/JuliaPackaging/Yggdrasil/blob/2f3638292c99fa6032634517f8a1aa8360d6fe8d/L/Libepoxy/build_tarballs.jl):
82+
* [libepoxy](https://github.com/JuliaPackaging/Yggdrasil/blob/8d5a27e24016c0ff2eae379f15dca17e79fd4be4/L/Libepoxy/build_tarballs.jl#L19-L25):
8483
this script modifies `c_args` in the Meson cross file in order to add an include directory;
85-
* [xkbcommon](https://github.com/JuliaPackaging/Yggdrasil/blob/2f3638292c99fa6032634517f8a1aa8360d6fe8d/X/xkbcommon/build_tarballs.jl).
84+
* [xkbcommon](https://github.com/JuliaPackaging/Yggdrasil/blob/2f3638292c99fa6032634517f8a1aa8360d6fe8d/X/xkbcommon/build_tarballs.jl#L26-L30).
8685

8786
## Editing files in the wizard
8887

8988
In the wizard, the `vim` editor is available for editing files. But, it doesn't leave any record in the build script. One generally needs to provide patch files or use something like `sed`. If a file needs patching, we suggest using `git` to add the entire worktree to a new repo, make the changes you need, then use `git diff -p` to output a patch that can be included alongside your build recipe.
9089

91-
You can include local files like patches very easily by placing them within a `bundled/patches` nested directory, and then providing `"./bundled"` as one of the `sources` for your build. See, for example, [`OpenBLAS`](https://github.com/JuliaPackaging/Yggdrasil/tree/029e588412f232f215e5e6a7564693d3dbf8e922/O/OpenBLAS).
90+
You can include local files like patches very easily by placing them within a `bundled/patches` nested directory, and then providing `"./bundled"` as one of the `sources` for your build. See, for example, [`OpenBLAS`](https://github.com/JuliaPackaging/Yggdrasil/tree/8d5a27e24016c0ff2eae379f15dca17e79fd4be4/O/OpenBLAS/OpenBLAS%400.3.13).
9291

9392
## Automatic environment variables
9493

src/BinaryBuilder.jl

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,6 @@ export HostPlatform, platform_dlext, valid_dl_path, arch, libc, nbits,
1111
libgfortran_version, libstdcxx_version, cxxstring_abi, detect_libgfortran_version,
1212
detect_libstdcxx_version, detect_cxxstring_abi, call_abi, wordsize, triplet,
1313
select_platform, platforms_match, AbstractPlatform, Platform
14-
# Re-export some compat wrappers:
15-
using Pkg.BinaryPlatforms: Linux, MacOS, Windows, FreeBSD
16-
export Linux, MacOS, Windows, FreeBSD
1714
# BinaryBuilderBase/src/Prefix.jl
1815
export Prefix, bindir, libdirs, includedir, logdir, activate, deactivate,
1916
isinstalled, install, uninstall, list_tarball_files, verify, temp_prefix

0 commit comments

Comments
 (0)