@@ -178,6 +178,8 @@ supported ones. A few additional keyword arguments are accept:
178
178
Since the generated JLL package is named according to `src_name`, this should
179
179
only be set to `false` if you _really_ know what you're doing.
180
180
181
+ * `compression_format`: the compression format used for the generated tarballs.
182
+
181
183
!!! note
182
184
183
185
The `init_block` and `augment_platform_block` keyword arguments are experimental
@@ -187,7 +189,9 @@ supported ones. A few additional keyword arguments are accept:
187
189
function build_tarballs (ARGS , src_name, src_version, sources, script,
188
190
platforms, products, dependencies;
189
191
julia_compat:: String = DEFAULT_JULIA_VERSION_SPEC,
190
- validate_name:: Bool = true , kwargs... )
192
+ validate_name:: Bool = true ,
193
+ compression_format:: String = " gzip" ,
194
+ kwargs... )
191
195
@nospecialize
192
196
# See if someone has passed in `--help`, and if so, give them the
193
197
# assistance they so clearly long for
@@ -196,6 +200,10 @@ function build_tarballs(ARGS, src_name, src_version, sources, script,
196
200
return nothing
197
201
end
198
202
203
+ if compression_format != " gzip" && minimum_compat (julia_compat) < v " 1.6"
204
+ error (" Compression formats different from gzip are supported only from Julia v1.6, increase the Julia compat if you want to use a non-default format" )
205
+ end
206
+
199
207
if validate_name && ! Base. isidentifier (src_name)
200
208
error (" Package name \" $(src_name) \" is not a valid identifier" )
201
209
end
@@ -379,6 +387,7 @@ function build_tarballs(ARGS, src_name, src_version, sources, script,
379
387
verbose,
380
388
debug,
381
389
skip_audit,
390
+ compression_format,
382
391
kwargs... ,
383
392
)
384
393
end
733
742
skip_audit = false, ignore_audit_errors = true,
734
743
autofix = true, code_dir = nothing,
735
744
meta_json_file = nothing, require_license = true,
736
- dont_dlopen = false, kwargs...)
745
+ dont_dlopen = false,
746
+ compression_format = "gzip",
747
+ kwargs...)
737
748
738
749
Runs the boiler plate code to download, build, and package a source package
739
750
for a list of platforms. This method takes a veritable truckload of arguments,
@@ -781,6 +792,8 @@ here are the relevant actors, broken down in brief:
781
792
the generated JLL loading the library at run time, and only prevents
782
793
BinaryBuilder from doing so during JLL generation.
783
794
795
+ * `compression_format`: the compression format used for the generated tarballs.
796
+
784
797
"""
785
798
function autobuild (dir:: AbstractString ,
786
799
src_name:: AbstractString ,
@@ -798,6 +811,7 @@ function autobuild(dir::AbstractString,
798
811
code_dir:: Union{String,Nothing} = nothing ,
799
812
require_license:: Bool = true ,
800
813
dont_dlopen:: Bool = false ,
814
+ compression_format:: String = " gzip" ,
801
815
kwargs... )
802
816
@nospecialize
803
817
@@ -1020,6 +1034,7 @@ function autobuild(dir::AbstractString,
1020
1034
platform= platform,
1021
1035
verbose= verbose,
1022
1036
force= true ,
1037
+ compression_format,
1023
1038
# Do not include logs into the main tarball
1024
1039
filter= exclude_logs,
1025
1040
)
@@ -1031,6 +1046,7 @@ function autobuild(dir::AbstractString,
1031
1046
platform= platform,
1032
1047
verbose= verbose,
1033
1048
force= true ,
1049
+ compression_format,
1034
1050
filter= only_logs,
1035
1051
)
1036
1052
timer. end_package = time ()
@@ -1062,7 +1078,7 @@ end
1062
1078
1063
1079
function download_github_release (download_dir, repo, tag; gh_auth= Wizard. github_auth (), verbose:: Bool = false )
1064
1080
release = gh_get_json (DEFAULT_API, " /repos/$(repo) /releases/tags/$(tag) " , auth= gh_auth)
1065
- assets = [a for a in release[" assets" ] if endswith (a[" name" ], " .tar.gz " )]
1081
+ assets = [a for a in release[" assets" ] if endswith (a[" name" ], r" \ . tar\. (gz|xz|bz2) " )]
1066
1082
1067
1083
for asset in assets
1068
1084
if verbose
0 commit comments