Skip to content

Commit 0dda399

Browse files
committed
OpenSSL_jll build 1.1.1+6
1 parent ba0879e commit 0dda399

19 files changed

+337
-1343
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
override/

Project.toml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,13 @@
11
name = "OpenSSL_jll"
22
uuid = "458c3c95-2e84-50aa-8efc-19380b2a3a95"
3-
version = "1.1.1+5"
3+
version = "1.1.1+6"
44

55
[deps]
6+
JLLWrappers = "692b3bcd-3c85-4b1f-b108-f13ce0eb3210"
67
Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f"
78
Libdl = "8f399da3-3557-5675-b5ff-fb832c97cbdb"
9+
Artifacts = "56f22d72-fd6d-98f1-02f0-08ddc0907c33"
810

911
[compat]
12+
JLLWrappers = "1.1.0"
1013
julia = "1.0"

README.md

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
# `OpenSSL_jll.jl` (v1.1.1+5)
1+
# `OpenSSL_jll.jl` (v1.1.1+6)
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/d13f1ba0650ed571044302f2327a9cd7b9caad59/O/OpenSSL/build_tarballs.jl) script can be found on [`Yggdrasil`](https://github.com/JuliaPackaging/Yggdrasil/), the community build tree.
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/f1d9e72437914af435a9a4ba8846337db9b2f48e/O/OpenSSL/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

@@ -14,19 +14,19 @@ The tarballs for `OpenSSL_jll.jl` have been built from these sources:
1414

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

17-
* `Linux(:aarch64, libc=:glibc)` (`aarch64-linux-gnu`)
18-
* `Linux(:aarch64, libc=:musl)` (`aarch64-linux-musl`)
19-
* `Linux(:armv7l, libc=:glibc, call_abi=:eabihf)` (`armv7l-linux-gnueabihf`)
20-
* `Linux(:armv7l, libc=:musl, call_abi=:eabihf)` (`armv7l-linux-musleabihf`)
21-
* `Linux(:i686, libc=:glibc)` (`i686-linux-gnu`)
22-
* `Linux(:i686, libc=:musl)` (`i686-linux-musl`)
23-
* `Windows(:i686)` (`i686-w64-mingw32`)
24-
* `Linux(:powerpc64le, libc=:glibc)` (`powerpc64le-linux-gnu`)
25-
* `MacOS(:x86_64)` (`x86_64-apple-darwin14`)
26-
* `Linux(:x86_64, libc=:glibc)` (`x86_64-linux-gnu`)
27-
* `Linux(:x86_64, libc=:musl)` (`x86_64-linux-musl`)
28-
* `FreeBSD(:x86_64)` (`x86_64-unknown-freebsd11.1`)
29-
* `Windows(:x86_64)` (`x86_64-w64-mingw32`)
17+
* `Linux aarch64 {libc=glibc}` (`aarch64-linux-gnu`)
18+
* `Linux aarch64 {libc=musl}` (`aarch64-linux-musl`)
19+
* `Linux armv7l {call_abi=eabihf, libc=glibc}` (`armv7l-linux-gnueabihf`)
20+
* `Linux armv7l {call_abi=eabihf, libc=musl}` (`armv7l-linux-musleabihf`)
21+
* `Linux i686 {libc=glibc}` (`i686-linux-gnu`)
22+
* `Linux i686 {libc=musl}` (`i686-linux-musl`)
23+
* `Windows i686` (`i686-w64-mingw32`)
24+
* `Linux powerpc64le {libc=glibc}` (`powerpc64le-linux-gnu`)
25+
* `macOS x86_64` (`x86_64-apple-darwin`)
26+
* `Linux x86_64 {libc=glibc}` (`x86_64-linux-gnu`)
27+
* `Linux x86_64 {libc=musl}` (`x86_64-linux-musl`)
28+
* `FreeBSD x86_64` (`x86_64-unknown-freebsd`)
29+
* `Windows x86_64` (`x86_64-w64-mingw32`)
3030

3131
## Products
3232

src/OpenSSL_jll.jl

Lines changed: 8 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1,57 +1,9 @@
1-
module OpenSSL_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 OpenSSL_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-
# We put these inter-JLL-package API values here so that they are always defined, even if there
29-
# is no underlying wrapper held within this JLL package.
30-
const PATH_list = String[]
31-
const LIBPATH_list = String[]
32-
33-
# Load Artifacts.toml file
34-
artifacts_toml = joinpath(@__DIR__, "..", "Artifacts.toml")
35-
36-
# Extract all platforms
37-
artifacts = Pkg.Artifacts.load_artifacts_toml(artifacts_toml; pkg_uuid=UUID("458c3c95-2e84-50aa-8efc-19380b2a3a95"))
38-
platforms = [Pkg.Artifacts.unpack_platform(e, "OpenSSL", artifacts_toml) for e in artifacts["OpenSSL"]]
39-
40-
# Filter platforms based on what wrappers we've generated on-disk
41-
filter!(p -> isfile(joinpath(@__DIR__, "wrappers", replace(triplet(p), "arm-" => "armv7l-") * ".jl")), platforms)
42-
43-
# From the available options, choose the best platform
44-
best_platform = select_platform(Dict(p => triplet(p) for p in platforms))
45-
46-
# Silently fail if there's no binaries for this platform
47-
if best_platform === nothing
48-
@debug("Unable to load OpenSSL; unsupported platform $(triplet(platform_key_abi()))")
49-
else
50-
# Load the appropriate wrapper. Note that on older Julia versions, we still
51-
# say "arm-linux-gnueabihf" instead of the more correct "armv7l-linux-gnueabihf",
52-
# so we manually correct for that here:
53-
best_platform = replace(best_platform, "arm-" => "armv7l-")
54-
include(joinpath(@__DIR__, "wrappers", "$(best_platform).jl"))
55-
end
56-
1+
# Use baremodule to shave off a few KB from the serialized `.ji` file
2+
baremodule OpenSSL_jll
3+
using Base
4+
using Base: UUID
5+
import JLLWrappers
6+
7+
JLLWrappers.@generate_main_file_header("OpenSSL")
8+
JLLWrappers.@generate_main_file("OpenSSL", UUID("458c3c95-2e84-50aa-8efc-19380b2a3a95"))
579
end # module OpenSSL_jll

src/wrappers/aarch64-linux-gnu.jl

Lines changed: 23 additions & 97 deletions
Original file line numberDiff line numberDiff line change
@@ -1,102 +1,28 @@
11
# Autogenerated wrapper script for OpenSSL_jll for aarch64-linux-gnu
22
export libcrypto, libssl, openssl
33

4-
## Global variables
5-
PATH = ""
6-
LIBPATH = ""
7-
LIBPATH_env = "LD_LIBRARY_PATH"
8-
LIBPATH_default = ""
9-
10-
# Relative path to `libcrypto`
11-
const libcrypto_splitpath = ["lib", "libcrypto.so"]
12-
13-
# This will be filled out by __init__() for all products, as it must be done at runtime
14-
libcrypto_path = ""
15-
16-
# libcrypto-specific global declaration
17-
# This will be filled out by __init__()
18-
libcrypto_handle = C_NULL
19-
20-
# This must be `const` so that we can use it with `ccall()`
21-
const libcrypto = "libcrypto.so.1.1"
22-
23-
24-
# Relative path to `libssl`
25-
const libssl_splitpath = ["lib", "libssl.so"]
26-
27-
# This will be filled out by __init__() for all products, as it must be done at runtime
28-
libssl_path = ""
29-
30-
# libssl-specific global declaration
31-
# This will be filled out by __init__()
32-
libssl_handle = C_NULL
33-
34-
# This must be `const` so that we can use it with `ccall()`
35-
const libssl = "libssl.so.1.1"
36-
37-
38-
# Relative path to `openssl`
39-
const openssl_splitpath = ["bin", "openssl"]
40-
41-
# This will be filled out by __init__() for all products, as it must be done at runtime
42-
openssl_path = ""
43-
44-
# openssl-specific global declaration
45-
function openssl(f::Function; adjust_PATH::Bool = true, adjust_LIBPATH::Bool = true)
46-
global PATH, LIBPATH
47-
env_mapping = Dict{String,String}()
48-
if adjust_PATH
49-
if !isempty(get(ENV, "PATH", ""))
50-
env_mapping["PATH"] = string(PATH, ':', ENV["PATH"])
51-
else
52-
env_mapping["PATH"] = PATH
53-
end
54-
end
55-
if adjust_LIBPATH
56-
LIBPATH_base = get(ENV, LIBPATH_env, expanduser(LIBPATH_default))
57-
if !isempty(LIBPATH_base)
58-
env_mapping[LIBPATH_env] = string(LIBPATH, ':', LIBPATH_base)
59-
else
60-
env_mapping[LIBPATH_env] = LIBPATH
61-
end
62-
end
63-
withenv(env_mapping...) do
64-
f(openssl_path)
65-
end
66-
end
67-
68-
69-
"""
70-
Open all libraries
71-
"""
4+
JLLWrappers.@generate_wrapper_header("OpenSSL")
5+
JLLWrappers.@declare_library_product(libcrypto, "libcrypto.so.1.1")
6+
JLLWrappers.@declare_library_product(libssl, "libssl.so.1.1")
7+
JLLWrappers.@declare_executable_product(openssl)
728
function __init__()
73-
global artifact_dir = abspath(artifact"OpenSSL")
74-
75-
# Initialize PATH and LIBPATH environment variable listings
76-
global PATH_list, LIBPATH_list
77-
global libcrypto_path = normpath(joinpath(artifact_dir, libcrypto_splitpath...))
78-
79-
# Manually `dlopen()` this right now so that future invocations
80-
# of `ccall` with its `SONAME` will find this path immediately.
81-
global libcrypto_handle = dlopen(libcrypto_path)
82-
push!(LIBPATH_list, dirname(libcrypto_path))
83-
84-
global libssl_path = normpath(joinpath(artifact_dir, libssl_splitpath...))
85-
86-
# Manually `dlopen()` this right now so that future invocations
87-
# of `ccall` with its `SONAME` will find this path immediately.
88-
global libssl_handle = dlopen(libssl_path)
89-
push!(LIBPATH_list, dirname(libssl_path))
90-
91-
global openssl_path = normpath(joinpath(artifact_dir, openssl_splitpath...))
92-
93-
push!(PATH_list, dirname(openssl_path))
94-
# Filter out duplicate and empty entries in our PATH and LIBPATH entries
95-
filter!(!isempty, unique!(PATH_list))
96-
filter!(!isempty, unique!(LIBPATH_list))
97-
global PATH = join(PATH_list, ':')
98-
global LIBPATH = join(vcat(LIBPATH_list, [joinpath(Sys.BINDIR, Base.LIBDIR, "julia"), joinpath(Sys.BINDIR, Base.LIBDIR)]), ':')
99-
100-
9+
JLLWrappers.@generate_init_header()
10+
JLLWrappers.@init_library_product(
11+
libcrypto,
12+
"lib/libcrypto.so",
13+
RTLD_LAZY | RTLD_DEEPBIND,
14+
)
15+
16+
JLLWrappers.@init_library_product(
17+
libssl,
18+
"lib/libssl.so",
19+
RTLD_LAZY | RTLD_DEEPBIND,
20+
)
21+
22+
JLLWrappers.@init_executable_product(
23+
openssl,
24+
"bin/openssl",
25+
)
26+
27+
JLLWrappers.@generate_init_footer()
10128
end # __init__()
102-

src/wrappers/aarch64-linux-musl.jl

Lines changed: 23 additions & 97 deletions
Original file line numberDiff line numberDiff line change
@@ -1,102 +1,28 @@
11
# Autogenerated wrapper script for OpenSSL_jll for aarch64-linux-musl
22
export libcrypto, libssl, openssl
33

4-
## Global variables
5-
PATH = ""
6-
LIBPATH = ""
7-
LIBPATH_env = "LD_LIBRARY_PATH"
8-
LIBPATH_default = ""
9-
10-
# Relative path to `libcrypto`
11-
const libcrypto_splitpath = ["lib", "libcrypto.so"]
12-
13-
# This will be filled out by __init__() for all products, as it must be done at runtime
14-
libcrypto_path = ""
15-
16-
# libcrypto-specific global declaration
17-
# This will be filled out by __init__()
18-
libcrypto_handle = C_NULL
19-
20-
# This must be `const` so that we can use it with `ccall()`
21-
const libcrypto = "libcrypto.so.1.1"
22-
23-
24-
# Relative path to `libssl`
25-
const libssl_splitpath = ["lib", "libssl.so"]
26-
27-
# This will be filled out by __init__() for all products, as it must be done at runtime
28-
libssl_path = ""
29-
30-
# libssl-specific global declaration
31-
# This will be filled out by __init__()
32-
libssl_handle = C_NULL
33-
34-
# This must be `const` so that we can use it with `ccall()`
35-
const libssl = "libssl.so.1.1"
36-
37-
38-
# Relative path to `openssl`
39-
const openssl_splitpath = ["bin", "openssl"]
40-
41-
# This will be filled out by __init__() for all products, as it must be done at runtime
42-
openssl_path = ""
43-
44-
# openssl-specific global declaration
45-
function openssl(f::Function; adjust_PATH::Bool = true, adjust_LIBPATH::Bool = true)
46-
global PATH, LIBPATH
47-
env_mapping = Dict{String,String}()
48-
if adjust_PATH
49-
if !isempty(get(ENV, "PATH", ""))
50-
env_mapping["PATH"] = string(PATH, ':', ENV["PATH"])
51-
else
52-
env_mapping["PATH"] = PATH
53-
end
54-
end
55-
if adjust_LIBPATH
56-
LIBPATH_base = get(ENV, LIBPATH_env, expanduser(LIBPATH_default))
57-
if !isempty(LIBPATH_base)
58-
env_mapping[LIBPATH_env] = string(LIBPATH, ':', LIBPATH_base)
59-
else
60-
env_mapping[LIBPATH_env] = LIBPATH
61-
end
62-
end
63-
withenv(env_mapping...) do
64-
f(openssl_path)
65-
end
66-
end
67-
68-
69-
"""
70-
Open all libraries
71-
"""
4+
JLLWrappers.@generate_wrapper_header("OpenSSL")
5+
JLLWrappers.@declare_library_product(libcrypto, "libcrypto.so.1.1")
6+
JLLWrappers.@declare_library_product(libssl, "libssl.so.1.1")
7+
JLLWrappers.@declare_executable_product(openssl)
728
function __init__()
73-
global artifact_dir = abspath(artifact"OpenSSL")
74-
75-
# Initialize PATH and LIBPATH environment variable listings
76-
global PATH_list, LIBPATH_list
77-
global libcrypto_path = normpath(joinpath(artifact_dir, libcrypto_splitpath...))
78-
79-
# Manually `dlopen()` this right now so that future invocations
80-
# of `ccall` with its `SONAME` will find this path immediately.
81-
global libcrypto_handle = dlopen(libcrypto_path)
82-
push!(LIBPATH_list, dirname(libcrypto_path))
83-
84-
global libssl_path = normpath(joinpath(artifact_dir, libssl_splitpath...))
85-
86-
# Manually `dlopen()` this right now so that future invocations
87-
# of `ccall` with its `SONAME` will find this path immediately.
88-
global libssl_handle = dlopen(libssl_path)
89-
push!(LIBPATH_list, dirname(libssl_path))
90-
91-
global openssl_path = normpath(joinpath(artifact_dir, openssl_splitpath...))
92-
93-
push!(PATH_list, dirname(openssl_path))
94-
# Filter out duplicate and empty entries in our PATH and LIBPATH entries
95-
filter!(!isempty, unique!(PATH_list))
96-
filter!(!isempty, unique!(LIBPATH_list))
97-
global PATH = join(PATH_list, ':')
98-
global LIBPATH = join(vcat(LIBPATH_list, [joinpath(Sys.BINDIR, Base.LIBDIR, "julia"), joinpath(Sys.BINDIR, Base.LIBDIR)]), ':')
99-
100-
9+
JLLWrappers.@generate_init_header()
10+
JLLWrappers.@init_library_product(
11+
libcrypto,
12+
"lib/libcrypto.so",
13+
RTLD_LAZY | RTLD_DEEPBIND,
14+
)
15+
16+
JLLWrappers.@init_library_product(
17+
libssl,
18+
"lib/libssl.so",
19+
RTLD_LAZY | RTLD_DEEPBIND,
20+
)
21+
22+
JLLWrappers.@init_executable_product(
23+
openssl,
24+
"bin/openssl",
25+
)
26+
27+
JLLWrappers.@generate_init_footer()
10128
end # __init__()
102-

0 commit comments

Comments
 (0)