Skip to content

Commit 3e486b2

Browse files
committed
libcxxwrap_julia_jll build 0.7.0+0
1 parent 3bd2873 commit 3e486b2

18 files changed

+225
-3054
lines changed

Artifacts.toml

Lines changed: 36 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -1,107 +1,76 @@
11
[[libcxxwrap_julia]]
22
arch = "x86_64"
3-
git-tree-sha1 = "cf64d90f8a541c5137989ba7683d790577eb9ed9"
3+
cxxstring_abi = "cxx11"
4+
git-tree-sha1 = "f598f80bcf73532d9dd4a75d657d00235079a949"
45
os = "macos"
56

67
[[libcxxwrap_julia.download]]
7-
sha256 = "eb5f243b7c14d414e3006bc422f807e3bf123dcf1dde6b4ee651ed78e3441e52"
8-
url = "https://github.com/JuliaBinaryWrappers/libcxxwrap_julia_jll.jl/releases/download/libcxxwrap_julia-v0.6.5+0/libcxxwrap_julia.v0.6.5.x86_64-apple-darwin14.tar.gz"
8+
sha256 = "05aa4e84a6d263ee2ace408422fca61b5d51830f97a8a7d590aebfe275987351"
9+
url = "https://github.com/JuliaBinaryWrappers/libcxxwrap_julia_jll.jl/releases/download/libcxxwrap_julia-v0.7.0+0/libcxxwrap_julia.v0.7.0.x86_64-apple-darwin14-cxx11.tar.gz"
910
[[libcxxwrap_julia]]
1011
arch = "x86_64"
11-
git-tree-sha1 = "28b4ce356821e6194208d70cf89c2b476885ceb6"
12-
libc = "glibc"
13-
os = "linux"
14-
15-
[[libcxxwrap_julia.download]]
16-
sha256 = "3401dce9796268d9547ab462912c04738ea0f704442a9a6a725d770567d98b03"
17-
url = "https://github.com/JuliaBinaryWrappers/libcxxwrap_julia_jll.jl/releases/download/libcxxwrap_julia-v0.6.5+0/libcxxwrap_julia.v0.6.5.x86_64-linux-gnu.tar.gz"
18-
[[libcxxwrap_julia]]
19-
arch = "i686"
20-
git-tree-sha1 = "31042b78cbbe349cc0a77fe8bcdf23a22cbd2996"
12+
cxxstring_abi = "cxx11"
13+
git-tree-sha1 = "4ee5f7398dafd2fced46afea47f1859cf73c370f"
2114
os = "windows"
2215

2316
[[libcxxwrap_julia.download]]
24-
sha256 = "dcebc074e2cc919abcf8c422fa8c5650757cbf2c8546ae438e897829eb6d2275"
25-
url = "https://github.com/JuliaBinaryWrappers/libcxxwrap_julia_jll.jl/releases/download/libcxxwrap_julia-v0.6.5+0/libcxxwrap_julia.v0.6.5.i686-w64-mingw32.tar.gz"
17+
sha256 = "d3dae775a5821c10669d72c391031c7b46c3c591a59292bde99e26738217b958"
18+
url = "https://github.com/JuliaBinaryWrappers/libcxxwrap_julia_jll.jl/releases/download/libcxxwrap_julia-v0.7.0+0/libcxxwrap_julia.v0.7.0.x86_64-w64-mingw32-cxx11.tar.gz"
2619
[[libcxxwrap_julia]]
27-
arch = "x86_64"
28-
git-tree-sha1 = "20918f084590d6d6c70a7c0589c82bbcf0bd93a1"
29-
os = "windows"
20+
arch = "armv7l"
21+
cxxstring_abi = "cxx03"
22+
git-tree-sha1 = "295837b46e20ba0ef82ada91b5386bcfdc558004"
23+
libc = "glibc"
24+
os = "linux"
3025

3126
[[libcxxwrap_julia.download]]
32-
sha256 = "3f8e95bc858eed91ad14aba76494b723d68620dbb775c90c7b11d50d6b17e516"
33-
url = "https://github.com/JuliaBinaryWrappers/libcxxwrap_julia_jll.jl/releases/download/libcxxwrap_julia-v0.6.5+0/libcxxwrap_julia.v0.6.5.x86_64-w64-mingw32.tar.gz"
27+
sha256 = "7a26a0894e8af97acf45997d493df101b21dfe65a38359261a6df009e59aba1a"
28+
url = "https://github.com/JuliaBinaryWrappers/libcxxwrap_julia_jll.jl/releases/download/libcxxwrap_julia-v0.7.0+0/libcxxwrap_julia.v0.7.0.armv7l-linux-gnueabihf-cxx03.tar.gz"
3429
[[libcxxwrap_julia]]
3530
arch = "x86_64"
3631
cxxstring_abi = "cxx03"
37-
git-tree-sha1 = "29e467d1d663482316727c03168b3de2842e84b3"
38-
os = "windows"
32+
git-tree-sha1 = "9a16700620d296e1c452e21a1547541916b1dff6"
33+
os = "macos"
3934

4035
[[libcxxwrap_julia.download]]
41-
sha256 = "28b10280a52c73c18a82798ba391ec367bf037e4553aed37f493d49a3ece33f4"
42-
url = "https://github.com/JuliaBinaryWrappers/libcxxwrap_julia_jll.jl/releases/download/libcxxwrap_julia-v0.6.6+0/libcxxwrap_julia.v0.6.6.x86_64-w64-mingw32-cxx03.tar.gz"
36+
sha256 = "4b2f1d8e3b1383293d5695dd6362488f7d7b188fa8d54611ebdf7bc7f91339be"
37+
url = "https://github.com/JuliaBinaryWrappers/libcxxwrap_julia_jll.jl/releases/download/libcxxwrap_julia-v0.7.0+0/libcxxwrap_julia.v0.7.0.x86_64-apple-darwin14-cxx03.tar.gz"
4338
[[libcxxwrap_julia]]
44-
arch = "i686"
45-
cxxstring_abi = "cxx11"
46-
git-tree-sha1 = "d97423f79aace800b9667352230c0c907734237d"
39+
arch = "x86_64"
40+
cxxstring_abi = "cxx03"
41+
git-tree-sha1 = "bfcd336b2384fd88cd011a33b1aef41fbe215ad3"
4742
os = "windows"
4843

4944
[[libcxxwrap_julia.download]]
50-
sha256 = "cc5503ad6bad6e7dc3e17ab6e95f08a807d3959dcb634fb5e33be99162fa3245"
51-
url = "https://github.com/JuliaBinaryWrappers/libcxxwrap_julia_jll.jl/releases/download/libcxxwrap_julia-v0.6.6+0/libcxxwrap_julia.v0.6.6.i686-w64-mingw32-cxx11.tar.gz"
45+
sha256 = "43dbc83554d0f222292d40b48023e2da2f2d37b86ff5539bef0e5472d5f08b6c"
46+
url = "https://github.com/JuliaBinaryWrappers/libcxxwrap_julia_jll.jl/releases/download/libcxxwrap_julia-v0.7.0+0/libcxxwrap_julia.v0.7.0.x86_64-w64-mingw32-cxx03.tar.gz"
5247
[[libcxxwrap_julia]]
53-
arch = "x86_64"
48+
arch = "armv7l"
5449
cxxstring_abi = "cxx11"
55-
git-tree-sha1 = "0d6202473ddcca22a6d7c6c527d2ccd99884412f"
50+
git-tree-sha1 = "28d9d19bdb23696f2bf256718b091e9c176ac029"
5651
libc = "glibc"
5752
os = "linux"
5853

5954
[[libcxxwrap_julia.download]]
60-
sha256 = "bbd1e5fe3fcb9b5c9ee26091b18abe4eb38c0875a96c63a63feef0c09b66cd54"
61-
url = "https://github.com/JuliaBinaryWrappers/libcxxwrap_julia_jll.jl/releases/download/libcxxwrap_julia-v0.6.6+0/libcxxwrap_julia.v0.6.6.x86_64-linux-gnu-cxx11.tar.gz"
55+
sha256 = "18f4e0a6c5b0869984d49f0d6c5ed521dcb18503cbf53ddc8f7dd769c035fcf1"
56+
url = "https://github.com/JuliaBinaryWrappers/libcxxwrap_julia_jll.jl/releases/download/libcxxwrap_julia-v0.7.0+0/libcxxwrap_julia.v0.7.0.armv7l-linux-gnueabihf-cxx11.tar.gz"
6257
[[libcxxwrap_julia]]
6358
arch = "x86_64"
6459
cxxstring_abi = "cxx11"
65-
git-tree-sha1 = "ac9279b95da89b1699c6a611de0027582b56fa25"
66-
os = "macos"
67-
68-
[[libcxxwrap_julia.download]]
69-
sha256 = "d62b2065e4c0dcaefc0612d7c00d6d2c1dd96601dc87dd24730df71c06c0fcc2"
70-
url = "https://github.com/JuliaBinaryWrappers/libcxxwrap_julia_jll.jl/releases/download/libcxxwrap_julia-v0.6.6+0/libcxxwrap_julia.v0.6.6.x86_64-apple-darwin14-cxx11.tar.gz"
71-
[[libcxxwrap_julia]]
72-
arch = "x86_64"
73-
cxxstring_abi = "cxx03"
74-
git-tree-sha1 = "ad06ec28ccb73f6c88a4b2810a8b6d9c09d2d218"
75-
os = "macos"
76-
77-
[[libcxxwrap_julia.download]]
78-
sha256 = "8c2227f8c56aaa8cd1e730b2877b7ca9d172311b67741fc96d920140a55bba37"
79-
url = "https://github.com/JuliaBinaryWrappers/libcxxwrap_julia_jll.jl/releases/download/libcxxwrap_julia-v0.6.6+0/libcxxwrap_julia.v0.6.6.x86_64-apple-darwin14-cxx03.tar.gz"
80-
[[libcxxwrap_julia]]
81-
arch = "i686"
82-
cxxstring_abi = "cxx03"
83-
git-tree-sha1 = "6803ae6993384560ca59fe1befc10435c480471c"
84-
os = "windows"
60+
git-tree-sha1 = "b55cd96f4dd60da926644fc18aef04c69f891b7d"
61+
libc = "glibc"
62+
os = "linux"
8563

8664
[[libcxxwrap_julia.download]]
87-
sha256 = "28b96368e0530a7ada7dd9f1444b89378e46ceb7d00a59bc838aec4e18032892"
88-
url = "https://github.com/JuliaBinaryWrappers/libcxxwrap_julia_jll.jl/releases/download/libcxxwrap_julia-v0.6.6+0/libcxxwrap_julia.v0.6.6.i686-w64-mingw32-cxx03.tar.gz"
65+
sha256 = "ed42d74f03d8d00e20427833c7d433906be3957d8e1d0dae8667488181535551"
66+
url = "https://github.com/JuliaBinaryWrappers/libcxxwrap_julia_jll.jl/releases/download/libcxxwrap_julia-v0.7.0+0/libcxxwrap_julia.v0.7.0.x86_64-linux-gnu-cxx11.tar.gz"
8967
[[libcxxwrap_julia]]
9068
arch = "x86_64"
9169
cxxstring_abi = "cxx03"
92-
git-tree-sha1 = "bdc681ee14c0171692d434c1192d31647a182b77"
70+
git-tree-sha1 = "2c53c87aa2671a4384df3e5d69637bf97a070202"
9371
libc = "glibc"
9472
os = "linux"
9573

9674
[[libcxxwrap_julia.download]]
97-
sha256 = "768865066e4d1b46468674d394e90db972f907b876d44e1cb2dd7a47bc7cce25"
98-
url = "https://github.com/JuliaBinaryWrappers/libcxxwrap_julia_jll.jl/releases/download/libcxxwrap_julia-v0.6.6+0/libcxxwrap_julia.v0.6.6.x86_64-linux-gnu-cxx03.tar.gz"
99-
[[libcxxwrap_julia]]
100-
arch = "x86_64"
101-
cxxstring_abi = "cxx11"
102-
git-tree-sha1 = "bd572f506d5bce1020509fee6918f42c429296c2"
103-
os = "windows"
104-
105-
[[libcxxwrap_julia.download]]
106-
sha256 = "c764ba83621a12196e5824414d5205d62b3803674fa8be4107edcaaa10065973"
107-
url = "https://github.com/JuliaBinaryWrappers/libcxxwrap_julia_jll.jl/releases/download/libcxxwrap_julia-v0.6.6+0/libcxxwrap_julia.v0.6.6.x86_64-w64-mingw32-cxx11.tar.gz"
75+
sha256 = "6aeed9c34c24fe30525f7fc3c2847cdbdf7660ca1f61eda20f1c5dcf9ca80907"
76+
url = "https://github.com/JuliaBinaryWrappers/libcxxwrap_julia_jll.jl/releases/download/libcxxwrap_julia-v0.7.0+0/libcxxwrap_julia.v0.7.0.x86_64-linux-gnu-cxx03.tar.gz"

Project.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name = "libcxxwrap_julia_jll"
22
uuid = "3eaa8342-bff7-56a5-9981-c04077f7cee7"
3-
version = "0.6.6+0"
3+
version = "0.7.0+0"
44

55
[deps]
66
Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f"

README.md

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,20 @@
22

33
This is an autogenerated package constructed using [`BinaryBuilder.jl`](https://github.com/JuliaPackaging/BinaryBuilder.jl).
44

5-
## Usage
5+
## Products
66

7-
The code bindings within this package are autogenerated from the `Products` defined within the `build_tarballs.jl` file that generated this package. For example purposes, we will assume that the following products were defined:
7+
The code bindings within this package are autogenerated from the following `Products` defined within the `build_tarballs.jl` file that generated this package:
8+
9+
```julia
10+
products = [
11+
LibraryProduct(["libcxxwrap_julia"], :libcxxwrap_julia),
12+
LibraryProduct(["libcxxwrap_julia_stl"], :libcxxwrap_julia_stl)
13+
]
14+
```
15+
16+
## Usage example
17+
18+
For example purposes, we will assume that the following products were defined in the imaginary package `Example_jll`:
819

920
```julia
1021
products = [
@@ -14,18 +25,18 @@ products = [
1425
]
1526
```
1627

17-
With such products defined, this package will contain `data_txt`, `libdataproc` and `mungify_exe` symbols exported. For `FileProduct` variables, the exported value is a string pointing to the location of the file on-disk. For `LibraryProduct` variables, it is a string corresponding to the `SONAME` of the desired library (it will have already been `dlopen()`'ed, so typical `ccall()` usage applies), and for `ExecutableProduct` variables, the exported value is a function that can be called to set appropriate environment variables. Example:
28+
With such products defined, `Example_jll` would contain `data_txt`, `libdataproc` and `mungify_exe` symbols exported. For `FileProduct` variables, the exported value is a string pointing to the location of the file on-disk. For `LibraryProduct` variables, it is a string corresponding to the `SONAME` of the desired library (it will have already been `dlopen()`'ed, so typical `ccall()` usage applies), and for `ExecutableProduct` variables, the exported value is a function that can be called to set appropriate environment variables. Example:
1829

1930
```julia
20-
using libcxxwrap_julia_jll
31+
using Example_jll
2132

2233
# For file products, you can access its file location directly:
2334
data_lines = open(data_txt, "r") do io
2435
readlines(io)
2536
end
2637

2738
# For library products, you can use the exported variable name in `ccall()` invocations directly
28-
num_chars = ccall((libdataproc, :count_characters), Cint, (Cstring, Cint), data_lines[1], length(data_lines[1]))
39+
num_chars = ccall((:count_characters, libdataproc), Cint, (Cstring, Cint), data_lines[1], length(data_lines[1]))
2940

3041
# For executable products, you can use the exported variable name as a function that you can call
3142
mungify_exe() do mungify_exe_path

src/libcxxwrap_julia_jll.jl

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ if VERSION < v"1.3.0-rc4"
1111
# if they are willing to engage in the kinds of hoop-jumping they might need
1212
# to in order to install binaries in a JLL-compatible way on 1.0-1.2. One
1313
# example of this hoop-jumping being to express a dependency on this JLL
14-
# package, then import it wtihin a `VERSION >= v"1.3"` conditional, and use
14+
# package, then import it within a `VERSION >= v"1.3"` conditional, and use
1515
# the deprecated `build.jl` mechanism to download the binaries through e.g.
1616
# `BinaryProvider.jl`. This should work well for the simplest packages, and
1717
# require greater and greater heroics for more and more complex packages.
@@ -34,7 +34,7 @@ artifacts = Pkg.Artifacts.load_artifacts_toml(artifacts_toml; pkg_uuid=UUID("3ea
3434
platforms = [Pkg.Artifacts.unpack_platform(e, "libcxxwrap_julia", artifacts_toml) for e in artifacts["libcxxwrap_julia"]]
3535

3636
# Filter platforms based on what wrappers we've generated on-disk
37-
platforms = filter(p -> isfile(joinpath(@__DIR__, "wrappers", triplet(p) * ".jl")), platforms)
37+
filter!(p -> isfile(joinpath(@__DIR__, "wrappers", replace(triplet(p), "arm-" => "armv7l-") * ".jl")), platforms)
3838

3939
# From the available options, choose the best platform
4040
best_platform = select_platform(Dict(p => triplet(p) for p in platforms))
@@ -43,7 +43,10 @@ best_platform = select_platform(Dict(p => triplet(p) for p in platforms))
4343
if best_platform === nothing
4444
@debug("Unable to load libcxxwrap_julia; unsupported platform $(triplet(platform_key_abi()))")
4545
else
46-
# Load the appropriate wrapper
46+
# Load the appropriate wrapper. Note that on older Julia versions, we still
47+
# say "arm-linux-gnueabihf" instead of the more correct "armv7l-linux-gnueabihf",
48+
# so we manually correct for that here:
49+
best_platform = replace(best_platform, "arm-" => "armv7l-")
4750
include(joinpath(@__DIR__, "wrappers", "$(best_platform).jl"))
4851
end
4952

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
# Autogenerated wrapper script for libcxxwrap_julia_jll for armv7l-linux-gnueabihf-cxx03
2+
export libcxxwrap_julia, libcxxwrap_julia_stl
3+
4+
## Global variables
5+
PATH = ""
6+
LIBPATH = ""
7+
LIBPATH_env = "LD_LIBRARY_PATH"
8+
9+
# Relative path to `libcxxwrap_julia`
10+
const libcxxwrap_julia_splitpath = ["lib", "libcxxwrap_julia.so"]
11+
12+
# This will be filled out by __init__() for all products, as it must be done at runtime
13+
libcxxwrap_julia_path = ""
14+
15+
# libcxxwrap_julia-specific global declaration
16+
# This will be filled out by __init__()
17+
libcxxwrap_julia_handle = C_NULL
18+
19+
# This must be `const` so that we can use it with `ccall()`
20+
const libcxxwrap_julia = "libcxxwrap_julia.so.0"
21+
22+
23+
# Relative path to `libcxxwrap_julia_stl`
24+
const libcxxwrap_julia_stl_splitpath = ["lib", "libcxxwrap_julia_stl.so"]
25+
26+
# This will be filled out by __init__() for all products, as it must be done at runtime
27+
libcxxwrap_julia_stl_path = ""
28+
29+
# libcxxwrap_julia_stl-specific global declaration
30+
# This will be filled out by __init__()
31+
libcxxwrap_julia_stl_handle = C_NULL
32+
33+
# This must be `const` so that we can use it with `ccall()`
34+
const libcxxwrap_julia_stl = "libcxxwrap_julia_stl.so"
35+
36+
37+
"""
38+
Open all libraries
39+
"""
40+
function __init__()
41+
global artifact_dir = abspath(artifact"libcxxwrap_julia")
42+
43+
# Initialize PATH and LIBPATH environment variable listings
44+
global PATH_list, LIBPATH_list
45+
# We first need to add to LIBPATH_list the libraries provided by Julia
46+
append!(LIBPATH_list, [joinpath(Sys.BINDIR, Base.LIBDIR, "julia"), joinpath(Sys.BINDIR, Base.LIBDIR)])
47+
global libcxxwrap_julia_path = normpath(joinpath(artifact_dir, libcxxwrap_julia_splitpath...))
48+
49+
# Manually `dlopen()` this right now so that future invocations
50+
# of `ccall` with its `SONAME` will find this path immediately.
51+
global libcxxwrap_julia_handle = dlopen(libcxxwrap_julia_path, RTLD_GLOBAL)
52+
push!(LIBPATH_list, dirname(libcxxwrap_julia_path))
53+
54+
global libcxxwrap_julia_stl_path = normpath(joinpath(artifact_dir, libcxxwrap_julia_stl_splitpath...))
55+
56+
# Manually `dlopen()` this right now so that future invocations
57+
# of `ccall` with its `SONAME` will find this path immediately.
58+
global libcxxwrap_julia_stl_handle = dlopen(libcxxwrap_julia_stl_path, RTLD_GLOBAL)
59+
push!(LIBPATH_list, dirname(libcxxwrap_julia_stl_path))
60+
61+
# Filter out duplicate and empty entries in our PATH and LIBPATH entries
62+
filter!(!isempty, unique!(PATH_list))
63+
filter!(!isempty, unique!(LIBPATH_list))
64+
global PATH = join(PATH_list, ':')
65+
global LIBPATH = join(LIBPATH_list, ':')
66+
67+
# Add each element of LIBPATH to our DL_LOAD_PATH (necessary on platforms
68+
# that don't honor our "already opened" trick)
69+
#for lp in LIBPATH_list
70+
# push!(DL_LOAD_PATH, lp)
71+
#end
72+
end # __init__()
73+
Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
# Autogenerated wrapper script for libcxxwrap_julia_jll for armv7l-linux-gnueabihf-cxx11
2+
export libcxxwrap_julia, libcxxwrap_julia_stl
3+
4+
## Global variables
5+
PATH = ""
6+
LIBPATH = ""
7+
LIBPATH_env = "LD_LIBRARY_PATH"
8+
9+
# Relative path to `libcxxwrap_julia`
10+
const libcxxwrap_julia_splitpath = ["lib", "libcxxwrap_julia.so"]
11+
12+
# This will be filled out by __init__() for all products, as it must be done at runtime
13+
libcxxwrap_julia_path = ""
14+
15+
# libcxxwrap_julia-specific global declaration
16+
# This will be filled out by __init__()
17+
libcxxwrap_julia_handle = C_NULL
18+
19+
# This must be `const` so that we can use it with `ccall()`
20+
const libcxxwrap_julia = "libcxxwrap_julia.so.0"
21+
22+
23+
# Relative path to `libcxxwrap_julia_stl`
24+
const libcxxwrap_julia_stl_splitpath = ["lib", "libcxxwrap_julia_stl.so"]
25+
26+
# This will be filled out by __init__() for all products, as it must be done at runtime
27+
libcxxwrap_julia_stl_path = ""
28+
29+
# libcxxwrap_julia_stl-specific global declaration
30+
# This will be filled out by __init__()
31+
libcxxwrap_julia_stl_handle = C_NULL
32+
33+
# This must be `const` so that we can use it with `ccall()`
34+
const libcxxwrap_julia_stl = "libcxxwrap_julia_stl.so"
35+
36+
37+
"""
38+
Open all libraries
39+
"""
40+
function __init__()
41+
global artifact_dir = abspath(artifact"libcxxwrap_julia")
42+
43+
# Initialize PATH and LIBPATH environment variable listings
44+
global PATH_list, LIBPATH_list
45+
# We first need to add to LIBPATH_list the libraries provided by Julia
46+
append!(LIBPATH_list, [joinpath(Sys.BINDIR, Base.LIBDIR, "julia"), joinpath(Sys.BINDIR, Base.LIBDIR)])
47+
global libcxxwrap_julia_path = normpath(joinpath(artifact_dir, libcxxwrap_julia_splitpath...))
48+
49+
# Manually `dlopen()` this right now so that future invocations
50+
# of `ccall` with its `SONAME` will find this path immediately.
51+
global libcxxwrap_julia_handle = dlopen(libcxxwrap_julia_path, RTLD_GLOBAL)
52+
push!(LIBPATH_list, dirname(libcxxwrap_julia_path))
53+
54+
global libcxxwrap_julia_stl_path = normpath(joinpath(artifact_dir, libcxxwrap_julia_stl_splitpath...))
55+
56+
# Manually `dlopen()` this right now so that future invocations
57+
# of `ccall` with its `SONAME` will find this path immediately.
58+
global libcxxwrap_julia_stl_handle = dlopen(libcxxwrap_julia_stl_path, RTLD_GLOBAL)
59+
push!(LIBPATH_list, dirname(libcxxwrap_julia_stl_path))
60+
61+
# Filter out duplicate and empty entries in our PATH and LIBPATH entries
62+
filter!(!isempty, unique!(PATH_list))
63+
filter!(!isempty, unique!(LIBPATH_list))
64+
global PATH = join(PATH_list, ':')
65+
global LIBPATH = join(LIBPATH_list, ':')
66+
67+
# Add each element of LIBPATH to our DL_LOAD_PATH (necessary on platforms
68+
# that don't honor our "already opened" trick)
69+
#for lp in LIBPATH_list
70+
# push!(DL_LOAD_PATH, lp)
71+
#end
72+
end # __init__()
73+

0 commit comments

Comments
 (0)