X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=tools%2Fmake-chisedb-tarball.rb;h=111ac8f3ea1b99553facaf1d72e704c1513bb284;hb=85d5c7d449c81b6e0fdb3838cad47bb80cef80bd;hp=1fc57ccdfc78b317634d27e3c5d6991c11eb6771;hpb=5b25cdbb3d6d0d4621f1ecf82a12b4a3a6f8edba;p=chise%2Fruby.git diff --git a/tools/make-chisedb-tarball.rb b/tools/make-chisedb-tarball.rb index 1fc57cc..111ac8f 100755 --- a/tools/make-chisedb-tarball.rb +++ b/tools/make-chisedb-tarball.rb @@ -3,39 +3,52 @@ $LOAD_PATH.unshift("..") require "find" -require "chise/util" +require "pathname" +require "fileutils" +require "chise/path" +require "chise/qp" def usage() - print "Usage: make-chisedb-tarball.rb \n" - print "% ./make-chisedb-tarball.rb /usr/local/lib/xemacs-21.4.14/i686-pc-linux /var/tmp\n" + puts "Usage: make-chisedb-tarball.rb " + puts "% ./make-chisedb-tarball.rb /usr/local/lib/xemacs-21.4.14/i686-pc-linux/chise-db /var/tmp" exit end def main(argv) usage if argv.length < 1 dir = argv.shift - unless FileTest.directory?(dir+"/chise-db") + unless dir.path.directory? print "no chise-db here. #{dir}\n" usage end - tmpdir = argv.shift - tmpdir = "/var/tmp" if tmpdir.nil? - + tmpdir = argv.shift || "/var/tmp" orgdir = Dir.pwd - Dir.chdir(tmpdir) # “K“–‚Èdir‚Ɉړ®‚µ‚Ä‚©‚ç - system "cp -a #{dir}/chise-db ." # ‚Ü‚¸‚»‚Ìdirectory‚É–â“š–³—p‚Å‘S•”ƒRƒs[‚·‚éB - Find.find("."){|f| - if f =~ /([*?<>])/ # Windows‚É‚¨‚¯‚é‹ÖŽ~•¶Žš‚ªŠÜ‚Ü‚ê‚Ä‚¢‚½‚çA’uŠ·‚·‚é - nf = CHISE.unix_to_win(f) - cmd = "mv '#{f}' '#{nf}'" - #print cmd, "\n" - system cmd - end + print "copy all chise-db to tmpdir" + system "cp -a #{dir} #{tmpdir}" # + puts "." + + print "escape special characters" + Find.find(tmpdir+"/chise-db") {|f| + next if f.path.directory? + nf = f.path.escape.to_s + next if f == nf + cmd = "mv '#{f}' '#{nf}'" + #puts cmd + system cmd } + puts "." - system "tar czf chise-db.tar.gz chise-db" - system "mv chise-db.tar.gz #{orgdir}" - system "rm -rf #{tmpdir}/chise-db" + Dir.chdir(tmpdir){ + print "make tarball" + system "tar czf chise-db.tar.gz chise-db" + puts "." + print "mv it" + system "mv chise-db.tar.gz #{orgdir}" + puts "." + print "remove tmpdir/chise-db" + system "rm -rf #{tmpdir}/chise-db" + puts "." + } end main(ARGV)