|
|
|
package("bzip2")
|
|
|
|
|
|
|
|
set_homepage("https://sourceware.org/bzip2/")
|
|
|
|
set_description("Freely available, patent free, high-quality data compressor.")
|
|
|
|
|
|
|
|
add_urls("https://sourceware.org/pub/bzip2/bzip2-$(version).tar.gz")
|
|
|
|
add_versions("1.0.8", "ab5a03176ee106d3f0fa90e381da478ddae405918153cca248e682cd0c4a2269")
|
|
|
|
add_patches("1.0.8", path.join(os.scriptdir(), "patches", "dllexport.patch"), "f72679b2ad55262bbc9da49f352f6cf128db85047aaa04ca42126c839b709461")
|
|
|
|
|
|
|
|
on_load(function (package)
|
|
|
|
package:addenv("PATH", "bin")
|
|
|
|
|
|
|
|
if not package:config("shared") then
|
|
|
|
package:add("defines", "BZ_STATIC")
|
|
|
|
end
|
|
|
|
end)
|
|
|
|
|
|
|
|
on_install(function (package)
|
|
|
|
local configs = {}
|
|
|
|
configs.kind = package:config("shared") and "shared" or "static"
|
|
|
|
configs.mode = package:debug() and "debug" or "release"
|
|
|
|
configs.build_bin = not package:is_plat("cross", "iphoneos", "android")
|
|
|
|
|
|
|
|
os.cp(path.join(package:scriptdir(), "port", "xmake.lua"), "xmake.lua")
|
|
|
|
import("package.tools.xmake").install(package, configs)
|
|
|
|
end)
|
|
|
|
|
|
|
|
on_test(function (package)
|
|
|
|
if not package:is_plat("cross", "iphoneos", "android") then
|
|
|
|
os.vrun("bunzip2 --help")
|
|
|
|
os.vrun("bzcat --help")
|
|
|
|
os.vrun("bzip2 --help")
|
|
|
|
end
|
|
|
|
|
|
|
|
assert(package:has_cfuncs("BZ2_bzCompressInit", {includes = "bzlib.h"}))
|
|
|
|
end)
|