pngcheck 0.2.5-x86_64-darwin → 0.2.6-x86_64-darwin
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 +4 -4
- data/lib/pngcheck/recipe.rb +40 -30
- data/lib/pngcheck/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 37776d166a7a808f5917bac5880d530fd6faf8d393d1781099db5b0a5183e499
|
4
|
+
data.tar.gz: 5be045583e282a219e94abea5476159ce2fabe13f9ad41d9be4863a1ab36cfca
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fd82c9b8d6bd61362cd505f376be0a3654b5f6842f789b59781ed6960a2cdb61102b8b31b69d32469788afe739276964269d1f7f447478fca218431ac2c7890e
|
7
|
+
data.tar.gz: 0b9bc558188bd10c957939818693766ca4a9a540547d2ef5bd7d8c63ccb9da3666008d69f1868532a0685c3a564c3ec8aa4ca5f2d9603b6a7c5a91a5a9cfbb86
|
data/lib/pngcheck/recipe.rb
CHANGED
@@ -13,12 +13,16 @@ module PngCheck
|
|
13
13
|
ROOT = Pathname.new(File.expand_path("../..", __dir__))
|
14
14
|
COMMON_FLAGS = "-shared -fPIC -Wall -O -DUSE_ZLIB"
|
15
15
|
|
16
|
-
def
|
16
|
+
def files_to_load_all
|
17
17
|
@files << {
|
18
18
|
url: "http://www.libpng.org/pub/png/src/pngcheck-3.0.3.tar.gz",
|
19
19
|
sha256: "c36a4491634af751f7798ea421321642f9590faa032eccb0dd5fb4533609dee6", # rubocop:disable Layout/LineLength
|
20
20
|
}
|
21
|
-
|
21
|
+
end
|
22
|
+
|
23
|
+
def files_to_load_cross
|
24
|
+
if target_platform.eql?("aarch64-linux") &&
|
25
|
+
!host_platform.eql?("aarch64-linux")
|
22
26
|
@files << {
|
23
27
|
url: "http://ports.ubuntu.com/pool/main/z/zlib/zlib1g-dev_1.2.11.dfsg-2ubuntu1.3_arm64.deb", # rubocop:disable Layout/LineLength
|
24
28
|
sha256: "0ebadc1ff2a70f0958d4e8e21ffa97d9fa4da23555eaae87782e963044a26fcf", # rubocop:disable Layout/LineLength
|
@@ -28,17 +32,27 @@ module PngCheck
|
|
28
32
|
|
29
33
|
def initialize
|
30
34
|
super("pngcheck", "3.0.3")
|
31
|
-
|
35
|
+
files_to_load_all
|
36
|
+
files_to_load_cross
|
32
37
|
@target = ROOT.join(@target).to_s
|
33
38
|
@printed = {}
|
34
39
|
end
|
35
40
|
|
41
|
+
def lib_filename
|
42
|
+
@lib_filename ||=
|
43
|
+
if MiniPortile.windows?
|
44
|
+
"pngcheck.dll"
|
45
|
+
else
|
46
|
+
"pngcheck.so"
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
def lib_workpath
|
51
|
+
@lib_workpath ||= File.join(work_path, lib_filename)
|
52
|
+
end
|
53
|
+
|
36
54
|
def make_cmd
|
37
|
-
|
38
|
-
"gcc #{COMMON_FLAGS} -o pngcheck.dll wrapper.c -lz"
|
39
|
-
else
|
40
|
-
"#{cc} #{cflags} #{COMMON_FLAGS} -o pngcheck.so wrapper.c -lz"
|
41
|
-
end
|
55
|
+
"#{cc} #{cflags} #{COMMON_FLAGS} -o #{lib_filename} wrapper.c -lz"
|
42
56
|
end
|
43
57
|
|
44
58
|
def cook_if_not
|
@@ -56,29 +70,25 @@ module PngCheck
|
|
56
70
|
|
57
71
|
def configure
|
58
72
|
FileUtils.cp(ROOT.join("ext", "wrapper.c"), work_path, verbose: false)
|
59
|
-
if target_platform.eql?("aarch64-linux")
|
73
|
+
if target_platform.eql?("aarch64-linux") &&
|
74
|
+
!host_platform.eql?("aarch64-linux")
|
60
75
|
extract_file("#{work_path}/../data.tar.xz", work_path.to_s)
|
61
76
|
end
|
62
77
|
end
|
63
78
|
|
64
|
-
def
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
out, st = Open3.capture2("file #{l}")
|
72
|
-
out = out.strip
|
73
|
-
|
74
|
-
raise "Failed to query file #{l}: #{out}" unless st.exitstatus.zero?
|
79
|
+
def verify_lib
|
80
|
+
begin
|
81
|
+
out, = Open3.capture2("file #{lib_workpath}")
|
82
|
+
rescue StandardError
|
83
|
+
message("Failed to call file, skipped library verification ...\n")
|
84
|
+
return
|
85
|
+
end
|
75
86
|
|
76
|
-
|
77
|
-
|
78
|
-
else
|
79
|
-
raise "Invalid file format '#{out}', '#{@target_format}' expected"
|
80
|
-
end
|
87
|
+
unless out.include?(target_format)
|
88
|
+
raise "Invalid file format '#{out.strip}', '#{@target_format}' expected"
|
81
89
|
end
|
90
|
+
|
91
|
+
message("Verifying #{lib_workpath} ... OK\n")
|
82
92
|
end
|
83
93
|
|
84
94
|
def install
|
@@ -86,7 +96,7 @@ module PngCheck
|
|
86
96
|
.grep(%r{/(?:lib)?[a-zA-Z0-9\-]+\.(?:so|dylib|dll)$})
|
87
97
|
|
88
98
|
FileUtils.cp_r(libs, ROOT.join("lib", "pngcheck"), verbose: false)
|
89
|
-
|
99
|
+
verify_lib
|
90
100
|
end
|
91
101
|
|
92
102
|
def execute(action, command, command_opts = {})
|
@@ -174,11 +184,11 @@ module PngCheck
|
|
174
184
|
|
175
185
|
def cflags
|
176
186
|
@cflags ||=
|
177
|
-
if target_platform.eql?(
|
178
|
-
!
|
179
|
-
""
|
180
|
-
else
|
187
|
+
if target_platform.eql?("aarch64-linux") &&
|
188
|
+
!host_platform.eql?("aarch64-linux")
|
181
189
|
"-I./usr/include -L./usr/lib/#{target_platform}-gnu"
|
190
|
+
else
|
191
|
+
""
|
182
192
|
end
|
183
193
|
end
|
184
194
|
# rubocop:enable Metrics/CyclomaticComplexity
|
data/lib/pngcheck/version.rb
CHANGED