Skip to content

Commit 98a1600

Browse files
committed
libpolymake_julia_jll build 0.2.0+0
1 parent f97f86c commit 98a1600

File tree

7 files changed

+76
-317
lines changed

7 files changed

+76
-317
lines changed

Artifacts.toml

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,18 @@
11
[[libpolymake_julia]]
22
arch = "x86_64"
3-
cxxstring_abi = "cxx11"
4-
git-tree-sha1 = "a8b6c019daa49e71c8c51cea833252241d5511fb"
3+
git-tree-sha1 = "953c9e0347aff95c09f1c94ce54315063283f315"
54
os = "macos"
65

76
[[libpolymake_julia.download]]
8-
sha256 = "138c0cf5d175b3453bb6263b0c8b7504db56cadaee50952a23858c650a511a57"
9-
url = "https://github.com/JuliaBinaryWrappers/libpolymake_julia_jll.jl/releases/download/libpolymake_julia-v0.1.2+0/libpolymake_julia.v0.1.2.x86_64-apple-darwin14-cxx11.tar.gz"
7+
sha256 = "eea03f067e804f848116f6c9272b3416a3206c3db4f582882b429b2e1110c301"
8+
url = "https://github.com/JuliaBinaryWrappers/libpolymake_julia_jll.jl/releases/download/libpolymake_julia-v0.2.0+0/libpolymake_julia.v0.2.0.x86_64-apple-darwin.tar.gz"
109
[[libpolymake_julia]]
1110
arch = "x86_64"
1211
cxxstring_abi = "cxx11"
13-
git-tree-sha1 = "4ce4522c15873097fb756c8cedd0caa3062f4857"
12+
git-tree-sha1 = "954dab6190763512c853daee7dfe255b248f7f47"
1413
libc = "glibc"
1514
os = "linux"
1615

1716
[[libpolymake_julia.download]]
18-
sha256 = "5c9b490cafc7cdc6ad014403c925ea2f840d61eee1136c99603b206ff0007c45"
19-
url = "https://github.com/JuliaBinaryWrappers/libpolymake_julia_jll.jl/releases/download/libpolymake_julia-v0.1.2+0/libpolymake_julia.v0.1.2.x86_64-linux-gnu-cxx11.tar.gz"
17+
sha256 = "a539b8021f6f7ea85c276f38d0c11df66912bb4af40f80da7a99c667d6f19138"
18+
url = "https://github.com/JuliaBinaryWrappers/libpolymake_julia_jll.jl/releases/download/libpolymake_julia-v0.2.0+0/libpolymake_julia.v0.2.0.x86_64-linux-gnu-cxx11.tar.gz"

Project.toml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,17 @@
11
name = "libpolymake_julia_jll"
22
uuid = "4d8266f6-2b3b-57e3-ad7a-d431eaaac945"
3-
version = "0.1.2+0"
3+
version = "0.2.0+0"
44

55
[deps]
6+
JLLWrappers = "692b3bcd-3c85-4b1f-b108-f13ce0eb3210"
67
Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f"
78
CompilerSupportLibraries_jll = "e66e0078-7015-5450-92f7-15fbd957f2ae"
89
libcxxwrap_julia_jll = "3eaa8342-bff7-56a5-9981-c04077f7cee7"
910
Libdl = "8f399da3-3557-5675-b5ff-fb832c97cbdb"
1011
polymake_jll = "7c209550-9012-526c-9264-55ba7a78ba2c"
12+
Artifacts = "56f22d72-fd6d-98f1-02f0-08ddc0907c33"
1113

1214
[compat]
15+
JLLWrappers = "1.1.0"
1316
julia = "1.0"
17+
polymake_jll = "=4.2.0"

README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
1-
# `libpolymake_julia_jll.jl` (v0.1.2+0)
1+
# `libpolymake_julia_jll.jl` (v0.2.0+0)
22

3-
This is an autogenerated package constructed using [`BinaryBuilder.jl`](https://github.com/JuliaPackaging/BinaryBuilder.jl). The originating [`build_tarballs.jl`](https://github.com/JuliaPackaging/Yggdrasil/blob/926d8515a9d9e5f628c8d0592df89b87d0579a38/L/libpolymake_julia/build_tarballs.jl) script can be found on [`Yggdrasil`](https://github.com/JuliaPackaging/Yggdrasil/), the community build tree. If you have any issue, please report it to the Yggdrasil [bug tracker](https://github.com/JuliaPackaging/Yggdrasil/issues).
3+
This is an autogenerated package constructed using [`BinaryBuilder.jl`](https://github.com/JuliaPackaging/BinaryBuilder.jl). The originating [`build_tarballs.jl`](https://github.com/JuliaPackaging/Yggdrasil/blob/a101110ae2f7badf79d598525e6ac723c600d8b0/L/libpolymake_julia/build_tarballs.jl) script can be found on [`Yggdrasil`](https://github.com/JuliaPackaging/Yggdrasil/), the community build tree. If you have any issue, please report it to the Yggdrasil [bug tracker](https://github.com/JuliaPackaging/Yggdrasil/issues).
44

55
For more details about JLL packages and how to use them, see `BinaryBuilder.jl` [documentation](https://juliapackaging.github.io/BinaryBuilder.jl/dev/jll/).
66

77
## Sources
88

99
The tarballs for `libpolymake_julia_jll.jl` have been built from these sources:
1010

11-
* compressed archive: https://github.com/oscar-system/libpolymake-julia/archive/v0.1.2.tar.gz (SHA256 checksum: `5da5c5d78a8c55354227f49ff5d7a4c99b0f74da5e9bd8898278a771965f671b`)
11+
* compressed archive: https://github.com/oscar-system/libpolymake-julia/archive/v0.2.0.tar.gz (SHA256 checksum: `2ad38e380ae52d9f1c72374fe785ab0253bad9bfd8eaa078da82eaed14f3e83c`)
1212

1313
## Platforms
1414

1515
`libpolymake_julia_jll.jl` is available for the following platforms:
1616

17-
* `MacOS(:x86_64, compiler_abi=CompilerABI(cxxstring_abi=:cxx11))` (`x86_64-apple-darwin14-cxx11`)
18-
* `Linux(:x86_64, libc=:glibc, compiler_abi=CompilerABI(cxxstring_abi=:cxx11))` (`x86_64-linux-gnu-cxx11`)
17+
* `macOS x86_64` (`x86_64-apple-darwin`)
18+
* `Linux x86_64 {cxxstring_abi=cxx11, libc=glibc}` (`x86_64-linux-gnu-cxx11`)
1919

2020
## Dependencies
2121

src/libpolymake_julia_jll.jl

Lines changed: 8 additions & 100 deletions
Original file line numberDiff line numberDiff line change
@@ -1,101 +1,9 @@
1-
module libpolymake_julia_jll
2-
3-
if isdefined(Base, :Experimental) && isdefined(Base.Experimental, Symbol("@optlevel"))
4-
@eval Base.Experimental.@optlevel 0
5-
end
6-
7-
if VERSION < v"1.3.0-rc4"
8-
# We lie a bit in the registry that JLL packages are usable on Julia 1.0-1.2.
9-
# This is to allow packages that might want to support Julia 1.0 to get the
10-
# benefits of a JLL package on 1.3 (requiring them to declare a dependence on
11-
# this JLL package in their Project.toml) but engage in heroic hacks to do
12-
# something other than actually use a JLL package on 1.0-1.2. By allowing
13-
# this package to be installed (but not loaded) on 1.0-1.2, we enable users
14-
# to avoid splitting their package versions into pre-1.3 and post-1.3 branches
15-
# if they are willing to engage in the kinds of hoop-jumping they might need
16-
# to in order to install binaries in a JLL-compatible way on 1.0-1.2. One
17-
# example of this hoop-jumping being to express a dependency on this JLL
18-
# package, then import it within a `VERSION >= v"1.3"` conditional, and use
19-
# the deprecated `build.jl` mechanism to download the binaries through e.g.
20-
# `BinaryProvider.jl`. This should work well for the simplest packages, and
21-
# require greater and greater heroics for more and more complex packages.
22-
error("Unable to import libpolymake_julia_jll on Julia versions older than 1.3!")
23-
end
24-
25-
using Pkg, Pkg.BinaryPlatforms, Pkg.Artifacts, Libdl
26-
import Base: UUID
27-
28-
wrapper_available = false
29-
"""
30-
is_available()
31-
32-
Return whether the artifact is available for the current platform.
33-
"""
34-
is_available() = wrapper_available
35-
36-
# We put these inter-JLL-package API values here so that they are always defined, even if there
37-
# is no underlying wrapper held within this JLL package.
38-
const PATH_list = String[]
39-
const LIBPATH_list = String[]
40-
41-
# We determine, here, at compile-time, whether our JLL package has been dev'ed and overridden
42-
override_dir = joinpath(dirname(@__DIR__), "override")
43-
if isdir(override_dir)
44-
function find_artifact_dir()
45-
return override_dir
46-
end
47-
else
48-
function find_artifact_dir()
49-
return artifact"libpolymake_julia"
50-
end
51-
52-
"""
53-
dev_jll()
54-
55-
Check this package out to the dev package directory (usually ~/.julia/dev),
56-
copying the artifact over to a local `override` directory, allowing package
57-
developers to experiment with a locally-built binary.
58-
"""
59-
function dev_jll()
60-
# First, `dev` out the package, but don't effect the current project
61-
mktempdir() do temp_env
62-
Pkg.activate(temp_env) do
63-
Pkg.develop("libpolymake_julia_jll")
64-
end
65-
end
66-
# Create the override directory
67-
override_dir = joinpath(Pkg.devdir(), "libpolymake_julia_jll", "override")
68-
# Copy the current artifact contents into that directory
69-
if !isdir(override_dir)
70-
cp(artifact"libpolymake_julia", override_dir)
71-
end
72-
# Force recompilation of that package, just in case it wasn't dev'ed before
73-
touch(joinpath(Pkg.devdir(), "libpolymake_julia_jll", "src", "libpolymake_julia_jll.jl"))
74-
@info("libpolymake_julia_ll dev'ed out to /depot/dev/libpolymake_julia_jll with pre-populated override directory")
75-
end
76-
end
77-
# Load Artifacts.toml file
78-
artifacts_toml = joinpath(@__DIR__, "..", "Artifacts.toml")
79-
80-
# Extract all platforms
81-
artifacts = Pkg.Artifacts.load_artifacts_toml(artifacts_toml; pkg_uuid=UUID("4d8266f6-2b3b-57e3-ad7a-d431eaaac945"))
82-
platforms = [Pkg.Artifacts.unpack_platform(e, "libpolymake_julia", artifacts_toml) for e in artifacts["libpolymake_julia"]]
83-
84-
# Filter platforms based on what wrappers we've generated on-disk
85-
filter!(p -> isfile(joinpath(@__DIR__, "wrappers", replace(triplet(p), "arm-" => "armv7l-") * ".jl")), platforms)
86-
87-
# From the available options, choose the best platform
88-
best_platform = select_platform(Dict(p => triplet(p) for p in platforms))
89-
90-
# Silently fail if there's no binaries for this platform
91-
if best_platform === nothing
92-
@debug("Unable to load libpolymake_julia; unsupported platform $(triplet(platform_key_abi()))")
93-
else
94-
# Load the appropriate wrapper. Note that on older Julia versions, we still
95-
# say "arm-linux-gnueabihf" instead of the more correct "armv7l-linux-gnueabihf",
96-
# so we manually correct for that here:
97-
best_platform = replace(best_platform, "arm-" => "armv7l-")
98-
include(joinpath(@__DIR__, "wrappers", "$(best_platform).jl"))
99-
end
100-
1+
# Use baremodule to shave off a few KB from the serialized `.ji` file
2+
baremodule libpolymake_julia_jll
3+
using Base
4+
using Base: UUID
5+
import JLLWrappers
6+
7+
JLLWrappers.@generate_main_file_header("libpolymake_julia")
8+
JLLWrappers.@generate_main_file("libpolymake_julia", UUID("4d8266f6-2b3b-57e3-ad7a-d431eaaac945"))
1019
end # module libpolymake_julia_jll
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# Autogenerated wrapper script for libpolymake_julia_jll for x86_64-apple-darwin
2+
export libpolymake_julia, polymake_run_script, type_translator
3+
4+
using CompilerSupportLibraries_jll
5+
using libcxxwrap_julia_jll
6+
using polymake_jll
7+
JLLWrappers.@generate_wrapper_header("libpolymake_julia")
8+
JLLWrappers.@declare_library_product(libpolymake_julia, "@rpath/libpolymake_julia.dylib")
9+
JLLWrappers.@declare_executable_product(polymake_run_script)
10+
JLLWrappers.@declare_file_product(type_translator)
11+
function __init__()
12+
JLLWrappers.@generate_init_header(CompilerSupportLibraries_jll, libcxxwrap_julia_jll, polymake_jll)
13+
JLLWrappers.@init_library_product(
14+
libpolymake_julia,
15+
"lib/libpolymake_julia.dylib",
16+
RTLD_LAZY | RTLD_DEEPBIND,
17+
)
18+
19+
JLLWrappers.@init_executable_product(
20+
polymake_run_script,
21+
"bin/polymake_run_script",
22+
)
23+
24+
JLLWrappers.@init_file_product(
25+
type_translator,
26+
"share/libpolymake_julia/type_translator.jl",
27+
)
28+
29+
JLLWrappers.@generate_init_footer()
30+
end # __init__()

src/wrappers/x86_64-apple-darwin14-cxx11.jl

Lines changed: 0 additions & 106 deletions
This file was deleted.

0 commit comments

Comments
 (0)