Sha256: be5de76e65ceddfcf8700b1fca9b7babf7966c6d68d31e15ecc776300f83a198
Contents?: true
Size: 1.23 KB
Versions: 5
Compression:
Stored size: 1.23 KB
Contents
require "mini_portile2" require "pathname" module LibarchiveBinary class LibarchiveRecipe < MiniPortile ROOT = Pathname.new(File.expand_path("../..", __dir__)) def initialize super("libarchive", "3.5.1") @files << { url: "https://www.libarchive.org/downloads/libarchive-3.5.1.tar.gz", sha256: "9015d109ec00bb9ae1a384b172bf2fc1dff41e2c66e5a9eeddf933af9db37f5a" } @target = ROOT.join(@target).to_s end def configure_defaults [ "--host=#{@host}", "--disable-static", "--enable-shared", ] end def cook_if_not checkpoint_file = "#{self.name}-#{self.version}-#{self.host}.installed" checkpoint = File.join(@target, checkpoint_file) return if File.exist?(checkpoint) cook FileUtils.touch(checkpoint) end def patch super FileUtils.cp(Dir.glob(ROOT.join("updates", "config.*").to_s), File.join(work_path, "build", "autoconf")) end def install super libs = Dir.glob(File.join(port_path, "{lib,bin}", "*")) .grep(/\/(?:lib)?[a-zA-Z0-9\-]+\.(?:so|dylib|dll)$/) FileUtils.cp_r(libs, ROOT.join("lib", "ffi-libarchive-binary"), verbose: true) end end end
Version data entries
5 entries across 5 versions & 1 rubygems