From a96b6f060406c15d56f3cc6a493a8b3d59c3fed9 Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 15 Jun 2007 13:31:54 +0000 Subject: * common.mk (realclean): separate local and ext. * ext/extmk.rb: not remove unrelated directories. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12553 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 6 ++++++ common.mk | 5 ++++- ext/extmk.rb | 14 +++++++++++--- 3 files changed, 21 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index 702e2fd217..dca59a9bbf 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Fri Jun 15 22:33:29 2007 Nobuyoshi Nakada + + * common.mk (realclean): separate local and ext. + + * ext/extmk.rb: not remove unrelated directories. + Fri Jun 15 20:50:02 2007 Tanaka Akira * keywords: enclose C code in declaration section by %{ and %}. diff --git a/common.mk b/common.mk index 4a81708540..133d0c0611 100644 --- a/common.mk +++ b/common.mk @@ -306,8 +306,11 @@ distclean-local:: clean-local distclean-ext: @-$(MINIRUBY) $(srcdir)/ext/extmk.rb $(EXTMK_ARGS) distclean -realclean:: distclean +realclean:: realclean-ext realclean-local +realclean-local:: distclean-local @$(RM) parse.c lex.c +realclean-ext:: + @-$(MINIRUBY) $(srcdir)/ext/extmk.rb $(EXTMK_ARGS) realclean check: test test-all diff --git a/ext/extmk.rb b/ext/extmk.rb index e4b62c8553..1c34fa0aa1 100644 --- a/ext/extmk.rb +++ b/ext/extmk.rb @@ -297,9 +297,9 @@ parse_args() if target = ARGV.shift and /^[a-z-]+$/ =~ target $mflags.push(target) - target = target.sub(/^(dist|real)(?=(?:clean)?$)/, '') case target - when /clean/ + when /^(dist|real)?(clean)$/ + target = $2 $ignore ||= true $clean = $1 ? $1[0] : true when /^install\b/ @@ -427,7 +427,15 @@ if $ignore Dir.chdir ".." if $clean Dir.rmdir('ext') rescue nil - FileUtils.rm_rf(extout) if $extout + if $extout + FileUtils.rm_rf([extout+"/common", extout+"/include/ruby"]) + FileUtils.rm_rf(extout+"/"+CONFIG["arch"]) + if $clean != true + FileUtils.rm_rf(extout+"/include/"+CONFIG["arch"]) + Dir.rmdir(extout+"/include") rescue nil + Dir.rmdir(extout) rescue nil + end + end end exit end -- cgit v1.2.3