sysdeps 0.0.2 → 0.0.3

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.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/bin/sysdeps +3 -3
  3. data/changelog +4 -0
  4. data/lib/sysdeps.rb +3 -2
  5. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d5f78517e09a48df91284a9d757e074fba51edd7b9ddf02fcddbc2db6a54973c
4
- data.tar.gz: e6450a60d29d1bcfe2f396da7619368fad53499c1001ff3a088217bd24aa7854
3
+ metadata.gz: a24d25de4ab3f20610bee4a8a800d7201879d81cb9cf7fefc265316e54d247a6
4
+ data.tar.gz: 1ae9d47f0ef037c59fad6642a1ff2682b357d6af1bf20b9161b0e267266f5e86
5
5
  SHA512:
6
- metadata.gz: 88298ab34df52ad56b5f2f50cb056b24f26e86877d67569e70c613dcc3876ade5a5bfe174f1218f1cbfa2cc5a325c4bbc2062c147071da8932487a562548aea3
7
- data.tar.gz: 826094aeb421e3a3ee5e030cdede219c23e4b046b3b3ab49ab4eecf30d3ce3a1dd9e8bfc13204dcc92883a2398657ee70824fedde42db295f46af4edc13483d3
6
+ metadata.gz: f6a3aff396839a0e68001239a15b51a03dc35decd7e8a19ce2445bc8b46f4ab8b4b8e9fb186927f53f469d3ed7e541e95b5d76baeba1b5095373b97b712ad9a8
7
+ data.tar.gz: a3884cd0ce32d53358783184615bfe28d1435cc61910ae1e668e10924805901b995a10ebb3c50e799289cdcf58fc3c980066342d43c70d8780d1cfb5baf66c5f
@@ -48,7 +48,7 @@ help = ->() {
48
48
 
49
49
  build_cache = ->() {
50
50
  STDERR.print 'Collecting system libs infos ... '
51
- syslibs = SysDeps.get_syslibs ['/usr/lib', '/usr/libexec']
51
+ syslibs = SysDeps.get_syslibs ['/lib', '/lib64', '/usr/lib', '/usr/lib64', '/usr/local/lib', '/usr/local/lib64', '/usr/libexec']
52
52
  STDERR.puts 'done'
53
53
 
54
54
  STDERR.print 'Collecting dependencies of programs ... '
@@ -100,9 +100,9 @@ missing_proc = ->() {
100
100
 
101
101
  depends_on = ->(patterns) {
102
102
  o = get_data_from_cache.call CACHE_PATH
103
- prog_deps = 'prog_deps'
103
+ deps = o['prog_deps'].merge(o['lib_deps'])
104
104
  patterns.each_with_object({KDEPENDON => {}}) { |p, obj|
105
- pbd = get_programs_by_deps(o[prog_deps], p)
105
+ pbd = get_programs_by_deps(deps, p)
106
106
  obj[KDEPENDON]["~#{p}"] = pbd if pbd }}
107
107
 
108
108
 
data/changelog CHANGED
@@ -1,3 +1,7 @@
1
1
  0.0.2:
2
2
  - fixed -p and -d argument passing
3
3
  - fixed -p and -d printing
4
+
5
+ 0.0.3:
6
+ - added dependency detection for libraries to -d option too
7
+ - fixed set of path libraries when ld.so.conf is not a file
@@ -29,7 +29,8 @@ readlink_absolute = ->(path) {
29
29
 
30
30
 
31
31
  get_syslibs = ->(paths) {
32
- ldpaths = (File.read(LDCONFPATH).split + paths).uniq.join ' '
32
+ ldconf_paths = File.file?(LDCONFPATH) && File.readable?(LDCONFPATH) ? File.read(LDCONFPATH).split : []
33
+ ldpaths = ldconf_paths.union(paths).join ' '
33
34
  sopat = /\.so\.?/
34
35
 
35
36
  %x(find #{ldpaths} \\( -type f -o -type l \\) 2>/dev/null)
@@ -65,7 +66,7 @@ get_programs_dependencies = ->() {
65
66
  deppat = /\s+#{DEPMARK}\s+/
66
67
  paths = ENV['PATH'].split(':').join(' ')
67
68
 
68
- IO.popen("find #{paths} -type f -executable") { |find_io|
69
+ IO.popen("find #{paths} -type f -executable 2>/dev/null") { |find_io|
69
70
  find_io.each_with_object({}) { |l, o|
70
71
  next if %x{file #{l}}.split[1] != ELF
71
72
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sysdeps
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Francesco Palumbo