diff -ur allinoneruby-0.1.tar.gz/allinoneruby/ev/dependencies.rb allinoneruby-0.1.1.tar.gz/allinoneruby/ev/dependencies.rb
--- allinoneruby-0.1.tar.gz/allinoneruby/ev/dependencies.rb 2004-07-30 18:00:17.000000000 +0200
+++ allinoneruby-0.1.1.tar.gz/allinoneruby/ev/dependencies.rb 2004-08-04 23:58:20.000000000 +0200
@@ -1,4 +1,4 @@
-def dlls(file, notthedefaults=true)
+def dlls(file, path=File.dirname(file))
# Only the dependencies in the same directory as the executable.
@@ -17,7 +17,7 @@
strings.delete_if{|s| s !~ /\.dll$/i}
strings.each do |lib|
- lib = File.expand_path(lib, File.dirname(file))
+ lib = File.expand_path(lib, path)
if not lib.nil? and File.file?(lib) and not res.include?(lib)
todo << lib
diff -ur allinoneruby-0.1.tar.gz/allinoneruby/ev/ftools.rb allinoneruby-0.1.1.tar.gz/allinoneruby/ev/ftools.rb
--- allinoneruby-0.1.tar.gz/allinoneruby/ev/ftools.rb 2004-07-30 18:00:17.000000000 +0200
+++ allinoneruby-0.1.1.tar.gz/allinoneruby/ev/ftools.rb 2004-08-04 23:58:20.000000000 +0200
@@ -4,23 +4,15 @@
def self.mkdirrec(dir)
pdir = File.dirname(dir)
- if not pdir.empty? and not FileTest.directory?(pdir)
- mkdirrec (pdir)
+ if not pdir.empty? and not File.directory?(pdir)
+ Dir.mkdirrec(pdir)
end
Dir.mkdir(dir) rescue nil
end
def self.copy(from, to)
- if FileTest.file?(from)
- todir = File.dirname(File.expand_path(to))
-
- mkdirrec(todir)
-
- File.copy(from, to)
- end
-
- if FileTest.directory?(from)
+ if File.directory?(from)
pdir = Dir.pwd
todir = File.expand_path(to)
@@ -28,33 +20,61 @@
Dir.chdir(from)
Dir.new(".").each do |e|
- copy(e, todir+"/"+e) if not [".", ".."].include?(e)
+ Dir.copy(e, todir+"/"+e) if not [".", ".."].include?(e)
end
Dir.chdir(pdir)
+ else
+ todir = File.dirname(File.expand_path(to))
+
+ mkdirrec(todir)
+
+ File.copy(from, to)
end
end
def self.move(from, to)
- copy(from, to)
- rm_rf(from)
+ Dir.copy(from, to)
+ Dir.rm_rf(from)
end
def self.rm_rf(entry)
- if FileTest.file?(entry)
+ if File.ftype(entry) == "directory"
+ pdir = Dir.pwd
+
+ Dir.chdir(entry)
+ Dir.new(".").each do |e|
+ Dir.rm_rf(e) if not [".", ".."].include?(e)
+ end
+ Dir.chdir(pdir)
+
+ Dir.delete(entry)
+ else
File.delete(entry)
end
+ end
+
+ def self.find(entry=nil, mask=nil)
+ entry = @dir if entry.nil?
+
+ entry.gsub!(/[\/\\]*$/, "") unless entry.nil?
+
+ res = []
- if FileTest.directory?(entry)
+ if File.directory?(entry)
pdir = Dir.pwd
+ res += ["%s/" % entry] if mask.nil? or entry =~ mask
+
Dir.chdir(entry)
Dir.new(".").each do |e|
- rm_rf(e) if not [".", ".."].include?(e)
+ res += Dir.find(e, mask).collect{|e| entry+"/"+e} unless [".", ".."].include?(e)
end
Dir.chdir(pdir)
-
- Dir.rmdir(entry)
+ else
+ res += [entry] if mask.nil? or entry =~ mask
end
+
+ res
end
end
@@ -112,4 +132,30 @@
def self.touch(file)
File.open(file, "a"){|f|}
end
+
+ def self.which(file)
+ res = nil
+
+ if windows?
+ file = file.gsub(/\.exe$/i, "") + ".exe"
+ sep = ";"
+ else
+ sep = ":"
+ end
+
+ catch :stop do
+ ENV["PATH"].split(/#{sep}/).reverse.each do |d|
+ if File.directory?(d)
+ Dir.new(d).each do |e|
+ if e.downcase == file.downcase
+ res = File.expand_path(e, d)
+ throw :stop
+ end
+ end
+ end
+ end
+ end
+
+ res
+ end
end
diff -ur allinoneruby-0.1.tar.gz/allinoneruby/ev/oldandnewlocation.rb allinoneruby-0.1.1.tar.gz/allinoneruby/ev/oldandnewlocation.rb
--- allinoneruby-0.1.tar.gz/allinoneruby/ev/oldandnewlocation.rb 2004-07-30 18:00:17.000000000 +0200
+++ allinoneruby-0.1.1.tar.gz/allinoneruby/ev/oldandnewlocation.rb 2004-08-04 23:58:20.000000000 +0200
@@ -1,5 +1,5 @@
-ENV["OLDDIR"] = Dir.pwd if not ENV.include?("OLDDIR")
-ENV["NEWDIR"] = Dir.pwd if not ENV.include?("NEWDIR")
+ENV["OLDDIR"] = Dir.pwd unless ENV.include?("OLDDIR")
+ENV["NEWDIR"] = File.dirname($0) unless ENV.include?("NEWDIR")
begin
oldlocation
@@ -15,7 +15,7 @@
res = yield
Dir.chdir(pdir)
else
- res = File.expand_path(file, dir) if not file.nil?
+ res = File.expand_path(file, dir) unless file.nil?
end
res
@@ -36,7 +36,7 @@
res = yield
Dir.chdir(pdir)
else
- res = File.expand_path(file, dir) if not file.nil?
+ res = File.expand_path(file, dir) unless file.nil?
end
res
diff -ur allinoneruby-0.1.tar.gz/allinoneruby/init.rb allinoneruby-0.1.1.tar.gz/allinoneruby/init.rb
--- allinoneruby-0.1.tar.gz/allinoneruby/init.rb 2004-07-30 17:05:27.000000000 +0200
+++ allinoneruby-0.1.1.tar.gz/allinoneruby/init.rb 2004-07-31 02:10:58.000000000 +0200
@@ -55,6 +55,14 @@
puts "Copying #{s1}/ ..."
Dir.copy(s1, s2)
+Dir.find(libdir2, /\.so$/).collect{|file| dlls(file, bindir1)}.flatten.sort.uniq.each do |s1|
+ file = File.basename(s1)
+ s2 = File.expand_path(file, bindir2)
+
+ puts "Copying #{s1} ..."
+ File.copy(s1, s2)
+end
+
puts "Creating #{exefile} ..."
File.open("allinoneruby.eee", "w") do |f|
@@ -73,5 +81,8 @@
system(backslashes("./eee allinoneruby.eee #{exefile} #{eeeexe}"))
oldlocation do
- File.copy(newlocation(exefile), exefile)
+ from = newlocation(exefile)
+ to = oldlocation(exefile)
+
+ File.copy(from, to) unless from == to
end
Binary files allinoneruby-0.1.tar.gz/allinoneruby/eee.exe and allinoneruby-0.1.1.tar.gz/allinoneruby/eee.exe differ
Binary files allinoneruby-0.1.tar.gz/allinoneruby/eeew.exe and allinoneruby-0.1.1.tar.gz/allinoneruby/eeew.exe differ