Skip to content

Commit

Permalink
Add build.jl files for all dependencies
Browse files Browse the repository at this point in the history
  • Loading branch information
giordano committed Sep 5, 2019
1 parent 25ab308 commit fd9c6a0
Show file tree
Hide file tree
Showing 22 changed files with 984 additions and 26 deletions.
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,3 @@ test/test_results
.DS_Store
*~
deps/build.log
deps/build_*.jl
52 changes: 27 additions & 25 deletions deps/build.jl
Original file line number Diff line number Diff line change
Expand Up @@ -14,48 +14,50 @@ products = Product[

dependencies = [
# Freetype2-related dependencies
"https://github.com/bicycle1885/ZlibBuilder/releases/download/v1.0.4/build_Zlib.v1.2.11.jl",
"https://github.com/JuliaPackaging/Yggdrasil/releases/download/Bzip2-v1.0.6-2/build_Bzip2.v1.0.6.jl",
"https://github.com/JuliaGraphics/FreeTypeBuilder/releases/download/v2.9.1-4/build_FreeType2.v2.10.0.jl",
"build_Zlib.v1.2.11.jl",
"build_Bzip2.v1.0.6.jl",
"build_FreeType2.v2.10.1.jl",
# Glib-related dependencies
"https://github.com/JuliaPackaging/Yggdrasil/releases/download/PCRE-v8.42-2/build_PCRE.v8.42.0.jl",
"https://github.com/giordano/Yggdrasil/releases/download/Libffi-v3.2.1-0/build_Libffi.v3.2.1.jl",
"https://github.com/JuliaPackaging/Yggdrasil/releases/download/Libiconv-v1.15-0/build_Libiconv.v1.15.0.jl",
"https://github.com/JuliaPackaging/Yggdrasil/releases/download/Gettext-v0.19.8-0/build_Gettext.v0.19.8.jl",
"https://github.com/JuliaPackaging/Yggdrasil/releases/download/Glib-v2.59.0%2B0/build_Glib.v2.59.0.jl",
"build_PCRE.v8.42.0.jl",
"build_Libffi.v3.2.1.jl",
"build_Libiconv.v1.16.0.jl",
"build_Gettext.v0.20.1.jl",
"build_Glib.v2.59.0.jl",
# Fontconfig-related dependencies
"https://github.com/giordano/Yggdrasil/releases/download/Cairo-v1.14.12/build_Libuuid.v2.34.0.jl",
"https://github.com/giordano/Yggdrasil/releases/download/Cairo-v1.14.12/build_Expat.v2.2.7.jl",
"https://github.com/giordano/Yggdrasil/releases/download/Cairo-v1.14.12/build_Fontconfig.v2.13.1.jl",
"build_Libuuid.v2.34.0.jl",
"build_Expat.v2.2.7.jl",
"build_Fontconfig.v2.13.1.jl",
# HarfBuzz-related dependencies
"https://github.com/giordano/Yggdrasil/releases/download/Graphite2-v1.3.13/build_Graphite2.v1.3.13.jl",
"https://github.com/giordano/Yggdrasil/releases/download/HarfBuzz-v2.6.1/build_HarfBuzz.v2.6.1.jl",
"build_Graphite2.v1.3.13.jl",
"build_HarfBuzz.v2.6.1.jl",
# Cairo-related dependencies
"https://github.com/giordano/Yggdrasil/releases/download/Cairo-v1.14.12/build_X11.v1.6.8.jl",
"https://github.com/giordano/Yggdrasil/releases/download/Cairo-v1.14.12/build_LZO.v2.10.0.jl",
"https://github.com/JuliaPackaging/Yggdrasil/releases/download/Pixman-v0.36.0-0/build_Pixman.v0.36.0.jl",
"https://github.com/JuliaIO/LibpngBuilder/releases/download/v1.0.3/build_libpng.v1.6.37.jl",
"https://github.com/giordano/Yggdrasil/releases/download/Cairo-v1.14.12/build_Cairo.v1.14.12.jl",
"build_X11.v1.6.8.jl",
"build_LZO.v2.10.0.jl",
"build_Pixman.v0.38.4.jl",
"build_libpng.v1.6.37.jl",
"build_Cairo.v1.14.12.jl",
# Pango-only dependencies
"https://github.com/JuliaPackaging/Yggdrasil/releases/download/FriBidi-v1.0.5%2B0/build_FriBidi.v1.0.5.jl",
"build_FriBidi.v1.0.5.jl",
# And finally...Pango!
"https://github.com/giordano/Yggdrasil/releases/download/Pango-v.1.42.4/build_Pango.v1.42.4.jl"
"build_Pango.v1.42.4.jl"
]


for dependency in dependencies
# These libraries are necessary on Linux, FreeBSD and macOS...
platform_key_abi() isa Windows &&
occursin(r"^build_(Expat|Fontconfig)", dependency) &&
continue
# ...these only on Linux and FreeBSD
platform_key_abi() isa Union{MacOS,Windows} &&
occursin(r"build_(Libuuid|Expat|Fontconfig|Graphite2|HarfBuzz|X11)", dependency) &&
occursin(r"^build_(Libuuid|Graphite2|HarfBuzz|X11)", dependency) &&
continue

file = joinpath(@__DIR__, basename(dependency))
isfile(file) || download(dependency, file)
# it's a bit faster to run the build in an anonymous module instead of
# starting a new julia process

# Build the dependencies
Mod = @eval module Anon end
Mod.include(file)
Mod.include(dependency)
end

# Finally, write out a deps.jl file
Expand Down
48 changes: 48 additions & 0 deletions deps/build_Bzip2.v1.0.6.jl
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
using BinaryProvider # requires BinaryProvider 0.3.0 or later

# Parse some basic command-line arguments
const verbose = "--verbose" in ARGS
const prefix = Prefix(get([a for a in ARGS if a != "--verbose"], 1, joinpath(@__DIR__, "usr")))
products = [
LibraryProduct(prefix, ["libbz2"], :libbzip2),
]

# Download binaries from hosted location
bin_prefix = "https://github.com/JuliaBinaryWrappers/Bzip2_jll.jl/releases/download/Bzip2-v1.0.6+0"

# Listing of files generated by BinaryBuilder:
download_info = Dict(
Linux(:aarch64, libc=:glibc) => ("$bin_prefix/Bzip2.v1.0.6.aarch64-linux-gnu.tar.gz", "6a8ff8dffc4ecb88b8391629fd365c309d550be7f700984704180e0a79a7a6f7"),
Linux(:aarch64, libc=:musl) => ("$bin_prefix/Bzip2.v1.0.6.aarch64-linux-musl.tar.gz", "2f33eaec540b7cda1b9ab1eaf3fe91906b36d95b25ad6c6c00606b8db1e86325"),
Linux(:armv7l, libc=:glibc, call_abi=:eabihf) => ("$bin_prefix/Bzip2.v1.0.6.arm-linux-gnueabihf.tar.gz", "1094f9d6ea29680bad062df2a1c72a69e96cd25a656cd2bd701b414746cd68d7"),
Linux(:armv7l, libc=:musl, call_abi=:eabihf) => ("$bin_prefix/Bzip2.v1.0.6.arm-linux-musleabihf.tar.gz", "cb801bdee5c041bed0379925262dda26659c66542c82f06d6c5a933de51f7672"),
Linux(:i686, libc=:glibc) => ("$bin_prefix/Bzip2.v1.0.6.i686-linux-gnu.tar.gz", "4e5ed6cc9a96a6d58b69f0670b788e834ad0c7533565f59fdda762e62dfa1db7"),
Linux(:i686, libc=:musl) => ("$bin_prefix/Bzip2.v1.0.6.i686-linux-musl.tar.gz", "bea4651ab2abd89fd1f34a7fdb9ed0d2912ed661ee61d710b0105a2a6f3e4799"),
Windows(:i686) => ("$bin_prefix/Bzip2.v1.0.6.i686-w64-mingw32.tar.gz", "fe658dc3ece6e7842a2f0ad6f3d917c3ef7a4a42d6d8b54badf06617256d38be"),
Linux(:powerpc64le, libc=:glibc) => ("$bin_prefix/Bzip2.v1.0.6.powerpc64le-linux-gnu.tar.gz", "5255d531c2ad797f55da444a59b41e1afdd4d8a1beb38ff03bb19c3dfd52dc71"),
MacOS(:x86_64) => ("$bin_prefix/Bzip2.v1.0.6.x86_64-apple-darwin14.tar.gz", "9da50e301ea0050fd35c30b312ae68a40a3b7832c3f333e5c779807f82c8443e"),
Linux(:x86_64, libc=:glibc) => ("$bin_prefix/Bzip2.v1.0.6.x86_64-linux-gnu.tar.gz", "95edeac85c9213feb968c6dcdf385d733cea1affc80798f1b7d22404005dd44a"),
Linux(:x86_64, libc=:musl) => ("$bin_prefix/Bzip2.v1.0.6.x86_64-linux-musl.tar.gz", "441bfb219f71756fdd9bbff2cabafc5b99d8efa4244ed26baeff064babd5199e"),
FreeBSD(:x86_64) => ("$bin_prefix/Bzip2.v1.0.6.x86_64-unknown-freebsd11.1.tar.gz", "3792689e6d8b9df85364c3b5240d58e4bb075b26d0f4cbcd47ae0166e4817249"),
Windows(:x86_64) => ("$bin_prefix/Bzip2.v1.0.6.x86_64-w64-mingw32.tar.gz", "8c096575b9aa1c090fbb880c4a96df7d50e25c409dfdcc6d77c853014c349800"),
)

# Install unsatisfied or updated dependencies:
unsatisfied = any(!satisfied(p; verbose=verbose) for p in products)
dl_info = choose_download(download_info, platform_key_abi())
if dl_info === nothing && unsatisfied
# If we don't have a compatible .tar.gz to download, complain.
# Alternatively, you could attempt to install from a separate provider,
# build from source or something even more ambitious here.
error("Your platform (\"$(Sys.MACHINE)\", parsed as \"$(triplet(platform_key_abi()))\") is not supported by this package!")
end

# If we have a download, and we are unsatisfied (or the version we're
# trying to install is not itself installed) then load it up!
if unsatisfied || !isinstalled(dl_info...; prefix=prefix)
# Download and install binaries
install(dl_info...; prefix=prefix, force=true, verbose=verbose)
end

# Write out a deps.jl file that will contain mappings for our products
write_deps_file(joinpath(@__DIR__, "deps.jl"), products, verbose=verbose)
48 changes: 48 additions & 0 deletions deps/build_Cairo.v1.14.12.jl
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
using BinaryProvider # requires BinaryProvider 0.3.0 or later

# Parse some basic command-line arguments
const verbose = "--verbose" in ARGS
const prefix = Prefix(get([a for a in ARGS if a != "--verbose"], 1, joinpath(@__DIR__, "usr")))
products = [
LibraryProduct(prefix, ["libcairo"], :libcairo),
]

# Download binaries from hosted location
bin_prefix = "https://github.com/JuliaBinaryWrappers/Cairo_jll.jl/releases/download/Cairo-v1.14.12+4"

# Listing of files generated by BinaryBuilder:
download_info = Dict(
Linux(:aarch64, libc=:glibc) => ("$bin_prefix/Cairo.v1.14.12.aarch64-linux-gnu.tar.gz", "415b421457c08ee29e9c2b98e3efccae7e5743f940343bb3f02dd7ead84a2464"),
Linux(:aarch64, libc=:musl) => ("$bin_prefix/Cairo.v1.14.12.aarch64-linux-musl.tar.gz", "ed5edba23f3538c000730f322baa9e718dfd08440cfff6f11a5d73588449e63a"),
Linux(:armv7l, libc=:glibc, call_abi=:eabihf) => ("$bin_prefix/Cairo.v1.14.12.arm-linux-gnueabihf.tar.gz", "7da134f916a7e35755a5ef5d1555cd896e3afeb0d6e2ee127e147b9315773122"),
Linux(:armv7l, libc=:musl, call_abi=:eabihf) => ("$bin_prefix/Cairo.v1.14.12.arm-linux-musleabihf.tar.gz", "41fa67217ffcb102120181e06f0555a308eaa7011a9cd1eb726d1df7b57eb0ba"),
Linux(:i686, libc=:glibc) => ("$bin_prefix/Cairo.v1.14.12.i686-linux-gnu.tar.gz", "eda89f0daefc59865e34d3b6cd9a79e2beceeda09e84c07de8137ea7f8917396"),
Linux(:i686, libc=:musl) => ("$bin_prefix/Cairo.v1.14.12.i686-linux-musl.tar.gz", "9f4264755753cfe9fee249767a6b51fd5c2254e956bd7f9befd96ff2f25fc81a"),
Windows(:i686) => ("$bin_prefix/Cairo.v1.14.12.i686-w64-mingw32.tar.gz", "c912dd8c45d1e604bba5307a61dfdecc91fc7ff0097bd60b024b74f59764ff6d"),
Linux(:powerpc64le, libc=:glibc) => ("$bin_prefix/Cairo.v1.14.12.powerpc64le-linux-gnu.tar.gz", "513c6a27d92394a35d2cdc932806ff00a8acf1d11f211541109fde8ef38bfaa7"),
MacOS(:x86_64) => ("$bin_prefix/Cairo.v1.14.12.x86_64-apple-darwin14.tar.gz", "73cb413e35aa3e6d50a835513ed96ab46ef4d996fb54e6c870a63884fc272a7a"),
Linux(:x86_64, libc=:glibc) => ("$bin_prefix/Cairo.v1.14.12.x86_64-linux-gnu.tar.gz", "9b6a4fc260289be54ff6b38cbed19a035a7ee874ab9c41a1b172700a502c248f"),
Linux(:x86_64, libc=:musl) => ("$bin_prefix/Cairo.v1.14.12.x86_64-linux-musl.tar.gz", "1aea54bc6d7cb46ab702e442c1b952c09b7a231ebd5bf6cc61f6f6236097a74b"),
FreeBSD(:x86_64) => ("$bin_prefix/Cairo.v1.14.12.x86_64-unknown-freebsd11.1.tar.gz", "0762814b23a80e6f87fb0db7549f9853ae9d4547c6a2d28d0489e3bd31bb04e4"),
Windows(:x86_64) => ("$bin_prefix/Cairo.v1.14.12.x86_64-w64-mingw32.tar.gz", "115a8dbc03669c0135ff7187ac779d00f17cd50c42327d7cbf21714dc1f62e17"),
)

# Install unsatisfied or updated dependencies:
unsatisfied = any(!satisfied(p; verbose=verbose) for p in products)
dl_info = choose_download(download_info, platform_key_abi())
if dl_info === nothing && unsatisfied
# If we don't have a compatible .tar.gz to download, complain.
# Alternatively, you could attempt to install from a separate provider,
# build from source or something even more ambitious here.
error("Your platform (\"$(Sys.MACHINE)\", parsed as \"$(triplet(platform_key_abi()))\") is not supported by this package!")
end

# If we have a download, and we are unsatisfied (or the version we're
# trying to install is not itself installed) then load it up!
if unsatisfied || !isinstalled(dl_info...; prefix=prefix)
# Download and install binaries
install(dl_info...; prefix=prefix, force=true, verbose=verbose)
end

# Write out a deps.jl file that will contain mappings for our products
write_deps_file(joinpath(@__DIR__, "deps.jl"), products, verbose=verbose)
49 changes: 49 additions & 0 deletions deps/build_Expat.v2.2.7.jl
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
using BinaryProvider # requires BinaryProvider 0.3.0 or later

# Parse some basic command-line arguments
const verbose = "--verbose" in ARGS
const prefix = Prefix(get([a for a in ARGS if a != "--verbose"], 1, joinpath(@__DIR__, "usr")))
products = [
LibraryProduct(prefix, ["libexpat"], :libexpat),
ExecutableProduct(prefix, "xmlwf", :xmlwf),
]

# Download binaries from hosted location
bin_prefix = "https://github.com/JuliaBinaryWrappers/Expat_jll.jl/releases/download/Expat-v2.2.7+0"

# Listing of files generated by BinaryBuilder:
download_info = Dict(
Linux(:aarch64, libc=:glibc) => ("$bin_prefix/Expat.v2.2.7.aarch64-linux-gnu.tar.gz", "6bf46584ec3b91d8e0a173f39b6a640b6ee589dd28c76d8231e985e0e50908a4"),
Linux(:aarch64, libc=:musl) => ("$bin_prefix/Expat.v2.2.7.aarch64-linux-musl.tar.gz", "42578e73b94f51701145068168d74fc69c1caa1ec503accd535ba4e896f6cebf"),
Linux(:armv7l, libc=:glibc, call_abi=:eabihf) => ("$bin_prefix/Expat.v2.2.7.arm-linux-gnueabihf.tar.gz", "3941713d5ed51d3976104e80f322f60be04ea00f7268b38dbb2a8338b7276f80"),
Linux(:armv7l, libc=:musl, call_abi=:eabihf) => ("$bin_prefix/Expat.v2.2.7.arm-linux-musleabihf.tar.gz", "4d14d14abd3bb3d3abf9c7bff750b1b74faabe29daba94e7811fdafbc0c56634"),
Linux(:i686, libc=:glibc) => ("$bin_prefix/Expat.v2.2.7.i686-linux-gnu.tar.gz", "e4e8c5a7cf12bbbaa4389021020a828e6a61d616a0b5a4f260c65a38c6b6a1f4"),
Linux(:i686, libc=:musl) => ("$bin_prefix/Expat.v2.2.7.i686-linux-musl.tar.gz", "51c13dee29fc7c7fba01b177161a9793202bcd90dc82d2ad0b1793a4d483223f"),
Windows(:i686) => ("$bin_prefix/Expat.v2.2.7.i686-w64-mingw32.tar.gz", "dfba8a20982e97bdb46fb09309d9222e063a3dd566845216e9cf29b63f1ba7c4"),
Linux(:powerpc64le, libc=:glibc) => ("$bin_prefix/Expat.v2.2.7.powerpc64le-linux-gnu.tar.gz", "b8b1d1f0b828ef0a067e25eff2ef21cc73c71b8dda72b5ab0c790e9478533bc1"),
MacOS(:x86_64) => ("$bin_prefix/Expat.v2.2.7.x86_64-apple-darwin14.tar.gz", "22bc93059fc96143e5af0fd2d84bef07207f1156ed9710598cf27e9337de2b61"),
Linux(:x86_64, libc=:glibc) => ("$bin_prefix/Expat.v2.2.7.x86_64-linux-gnu.tar.gz", "2de762a3d34bca7880af77a29b20ef215c362829e6c9891acb1618ae3e79ebce"),
Linux(:x86_64, libc=:musl) => ("$bin_prefix/Expat.v2.2.7.x86_64-linux-musl.tar.gz", "6cfc5b7d9585bd57496b3505b2457fd2b751868f831d6b9f7d7bb931f0dddfbe"),
FreeBSD(:x86_64) => ("$bin_prefix/Expat.v2.2.7.x86_64-unknown-freebsd11.1.tar.gz", "7fd372632fb534f016a67ca3f6178dd86136b06acb8ccc50d9893d90aa7e620f"),
Windows(:x86_64) => ("$bin_prefix/Expat.v2.2.7.x86_64-w64-mingw32.tar.gz", "256a21d92a56a4929ff9234ff09ff3b30501932f213e00aaabb1e65b6a0bda45"),
)

# Install unsatisfied or updated dependencies:
unsatisfied = any(!satisfied(p; verbose=verbose) for p in products)
dl_info = choose_download(download_info, platform_key_abi())
if dl_info === nothing && unsatisfied
# If we don't have a compatible .tar.gz to download, complain.
# Alternatively, you could attempt to install from a separate provider,
# build from source or something even more ambitious here.
error("Your platform (\"$(Sys.MACHINE)\", parsed as \"$(triplet(platform_key_abi()))\") is not supported by this package!")
end

# If we have a download, and we are unsatisfied (or the version we're
# trying to install is not itself installed) then load it up!
if unsatisfied || !isinstalled(dl_info...; prefix=prefix)
# Download and install binaries
install(dl_info...; prefix=prefix, force=true, verbose=verbose)
end

# Write out a deps.jl file that will contain mappings for our products
write_deps_file(joinpath(@__DIR__, "deps.jl"), products, verbose=verbose)
46 changes: 46 additions & 0 deletions deps/build_Fontconfig.v2.13.1.jl
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
using BinaryProvider # requires BinaryProvider 0.3.0 or later

# Parse some basic command-line arguments
const verbose = "--verbose" in ARGS
const prefix = Prefix(get([a for a in ARGS if a != "--verbose"], 1, joinpath(@__DIR__, "usr")))
products = [
LibraryProduct(prefix, ["libfontconfig"], :libfontconfig),
]

# Download binaries from hosted location
bin_prefix = "https://github.com/JuliaBinaryWrappers/Fontconfig_jll.jl/releases/download/Fontconfig-v2.13.1+4"

# Listing of files generated by BinaryBuilder:
download_info = Dict(
Linux(:aarch64, libc=:glibc) => ("$bin_prefix/Fontconfig.v2.13.1.aarch64-linux-gnu.tar.gz", "ce3c8ea36231e5dcdbd71d96c654f97eb1fb5f8e7a4b7951e55999c7699ab108"),
Linux(:aarch64, libc=:musl) => ("$bin_prefix/Fontconfig.v2.13.1.aarch64-linux-musl.tar.gz", "1bfe11f61556b7f26db16cafbccf1d89c2f782b1a0d41317b568eaed6276b2d0"),
Linux(:armv7l, libc=:glibc, call_abi=:eabihf) => ("$bin_prefix/Fontconfig.v2.13.1.arm-linux-gnueabihf.tar.gz", "ead1d8207e6977597fadd0fe6ad786a11f77f7aab5d30ff9c4335d80d26ff84c"),
Linux(:armv7l, libc=:musl, call_abi=:eabihf) => ("$bin_prefix/Fontconfig.v2.13.1.arm-linux-musleabihf.tar.gz", "08c440433f941b836792f963d89e7f83196838b0551012a689dadfad27bc053b"),
Linux(:i686, libc=:glibc) => ("$bin_prefix/Fontconfig.v2.13.1.i686-linux-gnu.tar.gz", "6668ec0b363c2cc4bfda390f49cd36e94065b24f4b623223fd727099be71eb07"),
Linux(:i686, libc=:musl) => ("$bin_prefix/Fontconfig.v2.13.1.i686-linux-musl.tar.gz", "f8d4142ba05652301c52e364babbd6f318868c8e42c84bbaa24be3512e887e2c"),
Linux(:powerpc64le, libc=:glibc) => ("$bin_prefix/Fontconfig.v2.13.1.powerpc64le-linux-gnu.tar.gz", "27b7b0bfa274e62d19e0e96b0af2caca60c56579b2d2d6b86f13411a8805881b"),
MacOS(:x86_64) => ("$bin_prefix/Fontconfig.v2.13.1.x86_64-apple-darwin14.tar.gz", "fa7b75c808fd358fca1d70242a471e9c302f569c2093eb7b683dd7f09c148ff0"),
Linux(:x86_64, libc=:glibc) => ("$bin_prefix/Fontconfig.v2.13.1.x86_64-linux-gnu.tar.gz", "2cc769abdcc16006c576dba061eb850bde37a192093764743f4acd227342a915"),
Linux(:x86_64, libc=:musl) => ("$bin_prefix/Fontconfig.v2.13.1.x86_64-linux-musl.tar.gz", "a13e96078c60882d6f86356b3b514f94d490b783fc7bb5118eda0eb17e614cae"),
FreeBSD(:x86_64) => ("$bin_prefix/Fontconfig.v2.13.1.x86_64-unknown-freebsd11.1.tar.gz", "1dcd862db04758bff6b60c6f38553e846551f66ca22743d9ea8e3a23ee3433e9"),
)

# Install unsatisfied or updated dependencies:
unsatisfied = any(!satisfied(p; verbose=verbose) for p in products)
dl_info = choose_download(download_info, platform_key_abi())
if dl_info === nothing && unsatisfied
# If we don't have a compatible .tar.gz to download, complain.
# Alternatively, you could attempt to install from a separate provider,
# build from source or something even more ambitious here.
error("Your platform (\"$(Sys.MACHINE)\", parsed as \"$(triplet(platform_key_abi()))\") is not supported by this package!")
end

# If we have a download, and we are unsatisfied (or the version we're
# trying to install is not itself installed) then load it up!
if unsatisfied || !isinstalled(dl_info...; prefix=prefix)
# Download and install binaries
install(dl_info...; prefix=prefix, force=true, verbose=verbose)
end

# Write out a deps.jl file that will contain mappings for our products
write_deps_file(joinpath(@__DIR__, "deps.jl"), products, verbose=verbose)
Loading

0 comments on commit fd9c6a0

Please sign in to comment.