dply 0.2.18 → 0.2.19

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a4d1e103de385380812dbb80962948bdada9d958
4
- data.tar.gz: 06a06f6e1bd0b850633493580109c1477108dfc5
3
+ metadata.gz: bf43174e5252c0faeb8aef5c900dc0cf0c988fc1
4
+ data.tar.gz: 4dae0c3e99804ae6d9feab5a8d8ae875681122e0
5
5
  SHA512:
6
- metadata.gz: 4e01402487708e257bd4c94c739f059798b1d4597e4ff06986be7c44a005a055349d9c32d6faed36c103c7a778ab6d079c63e32f2e1d8552467e8a9aca319c22
7
- data.tar.gz: 04971dda86f69b50af9f26ee4c9303416b69ddd1b20fbba88af279417960955b0433a795016fcad109f449b9d1580e7d88509315e6441191ad485d09bebd2c01
6
+ metadata.gz: c43c24b1062726c5372ad4a350e54abde63557ea97722f2b6902e7be6cb3389f68c301d3eef900aa0c783fdbf206a0616070b825bec49e6dacc727840d6b2506
7
+ data.tar.gz: d892b00aa2efadefbb6b024a47fad9623aff43d680085ae61613d51da2e32775d7f0e2c8d1038b22490d4387d9a0004d17a1987f27968f1baa74ee5a2dc13873
@@ -28,6 +28,11 @@ module Dply
28
28
  @libs_files_map = libs_files_map
29
29
  libs = @libs_files_map.keys
30
30
 
31
+ if logger.debug?
32
+ require 'pp'
33
+ pp @libs_files_map
34
+ end
35
+
31
36
  deps = rpm.libs_packages_map libs
32
37
  verify_deps(deps, pkgs_list)
33
38
  end
@@ -81,9 +86,10 @@ module Dply
81
86
  path = Pathname.new(file)
82
87
  Elf::File.open(file) do |ef|
83
88
  return [] if not ef.has_section? ".dynamic"
89
+ lib_type = ef.elf_class.desc == "64-bit" ? "()(64bit)" : ""
84
90
  dynamic = ef[".dynamic"].needed_libraries.keys
85
91
  rpath = ef[".dynamic"].rpath.map { |i| i.sub("$ORIGIN", "#{path.dirname}") }
86
- external = dynamic.reject { |l| lib_in_rpath? l, rpath }
92
+ external = dynamic.reject { |l| lib_in_rpath? l, rpath }.map { |l| "#{l}#{lib_type}" }
87
93
  logger.debug { "[#{file}]: dynamic:#{dynamic.size} rpath:#{dynamic.size - external.size} ext:#{external.size}" } if logger.debug?
88
94
  external
89
95
  end
@@ -4,6 +4,8 @@ module Dply
4
4
  class Rpm
5
5
  include Helper
6
6
 
7
+ # libs should include ()(64bit) in their name if 64bit libs
8
+
7
9
  def libs_packages_map(libs)
8
10
  h = {}
9
11
  libs.each do |lib|
@@ -21,7 +23,6 @@ module Dply
21
23
  end
22
24
 
23
25
  def whatprovides(lib)
24
- lib = "#{lib}()(64bit)"
25
26
  command = ["rpm", "--queryformat", "%{NAME} ", "-q", "--whatprovides", lib]
26
27
  output = cmd command, return_output: true, display: false
27
28
  list = output.strip.split.select {|pkg| not filtered? pkg }
@@ -1,3 +1,3 @@
1
1
  module Dply
2
- VERSION = "0.2.18"
2
+ VERSION = "0.2.19"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dply
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.18
4
+ version: 0.2.19
5
5
  platform: ruby
6
6
  authors:
7
7
  - Neeraj
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-11-02 00:00:00.000000000 Z
11
+ date: 2016-12-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ruby-elf