ffi-libarchive-binary 0.5.2-x86_64-linux-gnu → 0.5.3-x86_64-linux-gnu

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0e2851f116bad909c02839fc1b39eaf560d5589f472727b47b57955f2c85c095
4
- data.tar.gz: 16290ff8ed61e27046e1c59bef1a19d23660d966be28c5f56dcfc2b8d33449de
3
+ metadata.gz: d00a6aed94af704d9af603fe36bf298074b2c090388e45a6bc19bd0cc3030a3d
4
+ data.tar.gz: 72744d1a5cceab304727bb9cb8ee5e44d618f8bec43fad9937f94b2241be28be
5
5
  SHA512:
6
- metadata.gz: 24d27dc922c15a8f5b61dfc7fbfbdbce5218509a62ac5c4b735309a7f5a9d421146f70a7e8a0e599af09d9ee0fb2c3313e1297d16d61c1d711be21526fbf4d85
7
- data.tar.gz: 1f88ef2183ad80db070d6aeb860fbde69b3548585cfa9e2e6fb2718d3ba3e93f8836712f3520437403e367a6d7d6258cac0fbf2f2e8badbe49ebc29d12d0f8dc
6
+ metadata.gz: 46e4e4908949c56c932dfa09add7335d3bc4bc56426e45e7aa1077379cdab5bc74741819ab2d134a773c33f9ce37c8d8a4bbb50fa85db227e2f9114fc3ec37fd
7
+ data.tar.gz: 6a96b2881b76faa44afee725faa46813633fa2d0ed4359d110704da56212697113a3563e720158524ea8f36e4f9ef975626a4cc6d30d3e99dae0274d5f73b58b
@@ -4,6 +4,11 @@ libraries:
4
4
  # - OpenSSL uses version 1.1.1w for Windows x64 (more stable for x86_64)
5
5
  # - xz uses version 5.2.4 for all Windows platforms (MinGW compatibility)
6
6
  # - Other libraries use cross-platform versions under 'all'
7
+ libiconv:
8
+ all:
9
+ version: "1.18"
10
+ url: "https://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.18.tar.gz"
11
+ sha256: "3b08f5f4f9b4eb82f151a7040bfd6fe6c6fb922efe4b1659c66ea933276965e8"
7
12
  zlib:
8
13
  all:
9
14
  version: "1.3.2"
@@ -20,7 +20,7 @@ module LibarchiveBinary
20
20
  def self.library_for(libname)
21
21
  if MiniPortile::windows?
22
22
  # Detect Windows ARM64
23
- if RUBY_PLATFORM =~ /aarch64|arm64/i
23
+ if RUBY_PLATFORM.match?(/aarch64|arm64/i)
24
24
  libraries[libname]["windows-arm64"] || libraries[libname]["windows"] || libraries[libname]["all"]
25
25
  else
26
26
  libraries[libname]["windows-x64"] || libraries[libname]["windows"] || libraries[libname]["all"]
@@ -7,6 +7,7 @@ require_relative "configuration"
7
7
  require_relative "base_recipe"
8
8
  require_relative "zlib_recipe"
9
9
  require_relative "libexpat_recipe"
10
+ require_relative "libiconv_recipe"
10
11
  require_relative "openssl_recipe"
11
12
  require_relative "xz_recipe"
12
13
 
@@ -32,6 +33,7 @@ module LibarchiveBinary
32
33
  def create_dependencies
33
34
  @zlib_recipe = ZLibRecipe.new
34
35
  @expat_recipe = LibexpatRecipe.new
36
+ @iconv_recipe = LibiconvRecipe.new
35
37
  @openssl_recipe = OpensslRecipe.new
36
38
  @xz_recipe = XZRecipe.new
37
39
  end
@@ -42,10 +44,10 @@ module LibarchiveBinary
42
44
 
43
45
  def default_flags
44
46
  [
45
- "-DENABLE_OPENSSL:BOOL=ON", "-DENABLE_LIBB2:BOOL=OFF", "-DENABLE_LZ4:BOOL=OFF",
46
- "-DENABLE_LZO::BOOL=OFF", "-DENABLE_LZMA:BOOL=ON", "-DENABLE_ZSTD:BOOL=OFF",
47
- "-DENABLE_ZLIB::BOOL=ON", "-DENABLE_BZip2:BOOL=OFF", "-DENABLE_LIBXML2:BOOL=OFF",
48
- "-DENABLE_EXPAT::BOOL=ON", "-DENABLE_TAR:BOOL=OFF", "-DENABLE_CPIO::BOOL=OFF",
47
+ "-DENABLE_OPENSSL:BOOL=ON", "-DENABLE_LIBB2:BOOL=OFF", "-DENABLE_LZ4:BOOL=OFF",
48
+ "-DENABLE_LZO:BOOL=OFF", "-DENABLE_LZMA:BOOL=ON", "-DENABLE_ZSTD:BOOL=OFF",
49
+ "-DENABLE_ZLIB:BOOL=ON", "-DENABLE_BZip2:BOOL=OFF", "-DENABLE_LIBXML2:BOOL=OFF",
50
+ "-DENABLE_EXPAT:BOOL=ON", "-DENABLE_TAR:BOOL=OFF", "-DENABLE_CPIO:BOOL=OFF",
49
51
  "-DENABLE_CAT:BOOL=OFF", "-DENABLE_ACL:BOOL=OFF", "-DENABLE_TEST:BOOL=OFF",
50
52
  "-DENABLE_UNZIP:BOOL=OFF", "-DOPENSSL_USE_STATIC_LIBS=ON", "-DENABLE_XAR:BOOL=ON",
51
53
 
@@ -53,7 +55,11 @@ module LibarchiveBinary
53
55
  "-DOPENSSL_ROOT_DIR:PATH=#{@openssl_recipe.path}",
54
56
 
55
57
  # Add include paths to C flags so CMake's header detection can find them
56
- "-DCMAKE_C_FLAGS=-I#{@expat_recipe.path}/include -I#{@openssl_recipe.path}/include -I#{@xz_recipe.path}/include -I#{@zlib_recipe.path}/include",
58
+ "-DCMAKE_C_FLAGS=-I#{@expat_recipe.path}/include " \
59
+ "-I#{@iconv_recipe.path}/include " \
60
+ "-I#{@openssl_recipe.path}/include " \
61
+ "-I#{@xz_recipe.path}/include " \
62
+ "-I#{@zlib_recipe.path}/include",
57
63
 
58
64
  # Provide search paths for CMake to find libraries
59
65
  "-DCMAKE_INCLUDE_PATH:STRING=#{include_path}",
@@ -71,18 +77,19 @@ module LibarchiveBinary
71
77
  end
72
78
 
73
79
  def include_path
74
- paths = [@zlib_recipe.path, @expat_recipe.path, @openssl_recipe.path, @xz_recipe.path]
80
+ paths = [@zlib_recipe.path, @expat_recipe.path, @iconv_recipe.path, @openssl_recipe.path, @xz_recipe.path]
75
81
  paths.map { |k| "#{k}/include" }.join(";")
76
82
  end
77
83
 
78
84
  def library_path
79
- paths = [@zlib_recipe.path, @expat_recipe.path, @openssl_recipe.path, @xz_recipe.path]
85
+ paths = [@zlib_recipe.path, @expat_recipe.path, @iconv_recipe.path, @openssl_recipe.path, @xz_recipe.path]
80
86
  paths.map { |k| "#{k}/lib;#{k}/lib64" }.join(";")
81
87
  end
82
88
 
83
89
  def activate
84
90
  @zlib_recipe.activate
85
91
  @expat_recipe.activate
92
+ @iconv_recipe.activate
86
93
  @openssl_recipe.activate
87
94
  @xz_recipe.activate
88
95
 
@@ -100,6 +107,9 @@ module LibarchiveBinary
100
107
  @expat_recipe.host = @host if @host
101
108
  @expat_recipe.cook_if_not
102
109
 
110
+ @iconv_recipe.host = @host if @host
111
+ @iconv_recipe.cook_if_not
112
+
103
113
  @openssl_recipe.host = @host if @host
104
114
  @openssl_recipe.cook_if_not
105
115
 
@@ -107,8 +117,8 @@ module LibarchiveBinary
107
117
  @xz_recipe.cook_if_not
108
118
 
109
119
  # Set explicit LZMA environment variables for libarchive configure
110
- ENV['LIBLZMA_CFLAGS'] = "-I#{@xz_recipe.path}/include"
111
- ENV['LIBLZMA_LIBS'] = "-L#{@xz_recipe.path}/lib -llzma"
120
+ ENV["LIBLZMA_CFLAGS"] = "-I#{@xz_recipe.path}/include"
121
+ ENV["LIBLZMA_LIBS"] = "-L#{@xz_recipe.path}/lib -llzma"
112
122
 
113
123
  super
114
124
 
@@ -21,7 +21,7 @@ module LibarchiveBinary
21
21
  # Set cross-compiler environment variables for aarch64
22
22
  env_vars = cross_compiler_env(host)
23
23
  cmd = ["env"] + env_vars.map { |k, v| "#{k}=#{v}" } +
24
- [cflags(host), ldflags(host), "./configure"] + computed_options
24
+ [cflags(host), ldflags(host), "./configure"] + computed_options
25
25
  execute("configure", cmd)
26
26
  end
27
27
 
@@ -0,0 +1,44 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "base_recipe"
4
+
5
+ module LibarchiveBinary
6
+ class LibiconvRecipe < BaseRecipe
7
+ def initialize
8
+ super("libiconv")
9
+
10
+ @target = ROOT.join(@target).to_s
11
+ end
12
+
13
+ def configure_defaults
14
+ [
15
+ "--host=#{@host}",
16
+ "--disable-shared",
17
+ "--enable-static",
18
+ "--disable-nls",
19
+ ]
20
+ end
21
+
22
+ def configure
23
+ # Set cross-compiler environment variables for aarch64
24
+ env_vars = cross_compiler_env(host)
25
+ cmd = ["env"] + env_vars.map { |k, v| "#{k}=#{v}" } +
26
+ [cflags(host), ldflags(host), "./configure"] + computed_options
27
+ execute("configure", cmd)
28
+ end
29
+
30
+ def checkpoint
31
+ File.join(@target, "#{name}-#{version}-#{host}.installed")
32
+ end
33
+
34
+ def cook_if_not
35
+ cook unless File.exist?(checkpoint)
36
+ end
37
+
38
+ def cook
39
+ super
40
+
41
+ FileUtils.touch(checkpoint)
42
+ end
43
+ end
44
+ end
@@ -28,7 +28,7 @@ module LibarchiveBinary
28
28
  "--without-http",
29
29
  "--without-ftp",
30
30
  "--enable-static",
31
- "--disable-shared"
31
+ "--disable-shared",
32
32
  ]
33
33
  end
34
34
 
@@ -52,4 +52,4 @@ module LibarchiveBinary
52
52
  FileUtils.touch(checkpoint)
53
53
  end
54
54
  end
55
- end
55
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module LibarchiveBinary
4
- VERSION = "0.5.2"
4
+ VERSION = "0.5.3"
5
5
  end
@@ -21,7 +21,7 @@ module LibarchiveBinary
21
21
  # Set cross-compiler environment variables for aarch64
22
22
  env_vars = cross_compiler_env(host)
23
23
  cmd = ["env"] + env_vars.map { |k, v| "#{k}=#{v}" } +
24
- [cflags(host), ldflags(host), "./configure"] + computed_options
24
+ [cflags(host), ldflags(host), "./configure"] + computed_options
25
25
  execute("configure", cmd)
26
26
  end
27
27
 
@@ -36,7 +36,7 @@ module LibarchiveBinary
36
36
  # Set cross-compiler environment variables for aarch64
37
37
  env_vars = cross_compiler_env(host)
38
38
  cmd = ["env"] + env_vars.map { |k, v| "#{k}=#{v}" } +
39
- [cflags(host), ldflags(host), "./configure"] + computed_options
39
+ [cflags(host), ldflags(host), "./configure"] + computed_options
40
40
  execute("configure", cmd)
41
41
  end
42
42
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ffi-libarchive-binary
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.2
4
+ version: 0.5.3
5
5
  platform: x86_64-linux-gnu
6
6
  authors:
7
7
  - Ribose Inc.
@@ -116,6 +116,7 @@ files:
116
116
  - lib/ffi-libarchive-binary/libarchive.so
117
117
  - lib/ffi-libarchive-binary/libarchive_recipe.rb
118
118
  - lib/ffi-libarchive-binary/libexpat_recipe.rb
119
+ - lib/ffi-libarchive-binary/libiconv_recipe.rb
119
120
  - lib/ffi-libarchive-binary/libxml2_recipe.rb
120
121
  - lib/ffi-libarchive-binary/openssl_recipe.rb
121
122
  - lib/ffi-libarchive-binary/version.rb