[#23168] File.fnmatch のリファクタリング — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>

山本です。

13 messages 2004/03/08

[#23192] File.fnmatch と Dir.glob の非互換部分 — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>

山本です。

19 messages 2004/03/13
[#23194] Re: File.fnmatch と Dir.glob の非互換部分 — matz@... (Yukihiro Matsumoto) 2004/03/13

まつもと ゆきひろです

[#23195] Re: File.fnmatch とDir.glob の非互換部分 — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/03/14

山本です。

[#23196] Re: File.fnmatch とDir.glob の非互換部分 — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/03/14

山本です。

[#23260] Re: File.fnmatch とDir.glob の非互換部分 — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/03/30

山本です。

[#23261] Re: File.fnmatch とDir.glob の非互換部分 — matz@... (Yukihiro Matsumoto) 2004/03/30

まつもと ゆきひろです

[#23265] Re: File.fnmatch とDir.glob の非互換部分 — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp> 2004/03/30

山本です。

[#23238] Re: [ruby-cvs] ruby, ruby/lib, ruby/lib/rss, ruby/sample/openssl: * lib/logger.rb: trim tail space of each line. no user visible change. — Kouhei Sutou <kou@...>

須藤です.

10 messages 2004/03/27

[ruby-dev:23127] Re: extconf results depend on rbconfig.rb (Re: Re:File.fnmatchとDir.glob)

From: nobu.nakada@...
Date: 2004-03-04 10:39:45 UTC
List: ruby-dev #23127
なかだです。

At Thu, 4 Mar 2004 17:40:06 +0900,
H.Yamamoto wrote in [ruby-dev:23124]:
> >再コンパイルはしていませんが、extconf.rbの実行結果が
> >rbconfig.rb(正確にはその中のconfigure_args)に依存するために
> >Makefileを作り直しているので、そのために時間がかかるのが気にな
> >るということでしょうか。
> 
> コンパイルじゃなかったんですね。でも、できれば前みたいにスパっと終わるほうが気持ちいいです。

configure_argsの変更は検出したいので、ターゲットを分けますかねぇ。

# winceはワケ分からない状態になってるのでペンディング。


* Makefile.in: miniruby is not needed for cross compile.

* Makefile.in, */Makefile.sub, mkconfig.rb: keep rbconfig.rb old if
  unchanged.

* configure.in (PREP): miniruby for native compile.


Index: Makefile.in
===================================================================
RCS file: /cvs/ruby/src/ruby/Makefile.in,v
retrieving revision 1.62
diff -u -2 -p -d -r1.62 Makefile.in
--- Makefile.in	22 Feb 2004 05:44:35 -0000	1.62
+++ Makefile.in	4 Mar 2004 10:14:35 -0000
@@ -50,4 +50,5 @@ MINIRUBY = @MINIRUBY@
 RUNRUBY = @RUNRUBY@
 EXTCONF = extconf.rb
+RBCONFIG = .rbconfig.time
 
 #### End of system configuration section. ####
@@ -122,5 +123,5 @@ SCRIPT_ARGS   =	--dest-dir="$(DESTDIR)" 
 EXTMK_ARGS    =	$(SCRIPT_ARGS) --extout="$(EXTOUT)" --extension $(EXTS) --extstatic $(EXTSTATIC) --
 
-all:		@MAKEFILES@ miniruby$(EXEEXT) rbconfig.rb $(LIBRUBY)
+all:		@MAKEFILES@ miniruby$(EXEEXT) $(RBCONFIG) $(LIBRUBY)
 		@$(MINIRUBY) $(srcdir)/ext/extmk.rb $(EXTMK_ARGS)
 
@@ -129,5 +130,5 @@ miniruby$(EXEEXT):	config.status $(LIBRU
 		$(PURIFY) $(CC) $(LDFLAGS) $(MAINLIBS) $(MAINOBJ) $(LIBRUBY_A) $(LIBS) -o $@
 
-$(PROGRAM):     $(LIBRUBY) $(MAINOBJ) $(EXTOBJS) $(SETUP) miniruby$(EXEEXT)
+$(PROGRAM):     $(LIBRUBY) $(MAINOBJ) $(EXTOBJS) $(SETUP) $(PREP)
 		@rm -f $@
 		$(PURIFY) $(CC) $(LDFLAGS) $(XLDFLAGS) $(MAINLIBS) $(MAINOBJ) $(EXTOBJS) $(LIBRUBYARG) $(LIBS) -o $@
@@ -145,5 +146,5 @@ $(LIBRUBY_A):	$(OBJS) $(DMYEXT)
 		@-@RANLIB@ $@ 2> /dev/null || true
 
-$(LIBRUBY_SO):	$(OBJS) $(DLDOBJS) miniruby$(EXEEXT) $(PREP) $(ARCHFILE)
+$(LIBRUBY_SO):	$(OBJS) $(DLDOBJS) $(PREP) $(ARCHFILE)
 		$(LDSHARED) $(DLDFLAGS) $(OBJS) $(DLDOBJS) $(SOLIBS) -o $@
 		@-$(MINIRUBY) -e 'ARGV.each{|link| File.delete link if File.exist? link; \
@@ -159,7 +160,7 @@ install-all:	install-nodoc install-doc
 
 install-nodoc:	install-local install-ext
-install-local:	rbconfig.rb
+install-local:	$(RBCONFIG)
 		$(MINIRUBY) $(srcdir)/instruby.rb $(SCRIPT_ARGS) --mantype="$(MANTYPE)"
-install-ext:	rbconfig.rb
+install-ext:	$(RBCONFIG)
 		$(MINIRUBY) $(srcdir)/ext/extmk.rb $(EXTMK_ARGS) install
 
@@ -167,8 +168,8 @@ what-where-all no-install-all:	no-instal
 what-where no-install:	no-install-local no-install-ext
 what-where-local:	no-install-local
-no-install-local:	rbconfig.rb
+no-install-local:	$(RBCONFIG)
 		$(MINIRUBY) $(srcdir)/instruby.rb -n $(SCRIPT_ARGS) --mantype="$(MANTYPE)"
 what-where-ext:	no-install-ext
-no-install-ext:	rbconfig.rb
+no-install-ext:	$(RBCONFIG)
 		$(MINIRUBY) $(srcdir)/ext/extmk.rb -n $(EXTMK_ARGS) install
 
@@ -191,5 +192,5 @@ distclean-ext:
 
 distclean-local: clean-local
-		@rm -f @MAKEFILES@ config.h rbconfig.rb
+		@rm -f @MAKEFILES@ config.h rbconfig.rb $(RBCONFIG)
 		@rm -f ext/config.cache config.cache config.log config.status
 		@rm -f *~ core *.core gmon.out y.tab.c y.output ruby.imp
@@ -201,5 +202,5 @@ realclean: 	distclean
 		@rm -f lex.c
 
-test:		miniruby$(EXEEXT) rbconfig.rb $(PROGRAM) PHONY
+test:		miniruby$(EXEEXT) $(RBCONFIG) $(PROGRAM) PHONY
 		@./miniruby$(EXEEXT) $(srcdir)/rubytest.rb
 
@@ -211,8 +212,8 @@ extconf:
 		$(RUNRUBY) -C "$(EXTCONFDIR)" $(EXTCONF) $(EXTCONFARGS)
 
-rbconfig.rb:	miniruby$(EXEEXT) $(srcdir)/mkconfig.rb config.status $(PREP)
-		@$(MINIRUBY) $(srcdir)/mkconfig.rb rbconfig.rb
+$(RBCONFIG):	$(srcdir)/mkconfig.rb config.status $(PREP)
+		@$(MINIRUBY) $(srcdir)/mkconfig.rb -timestamp=$@ rbconfig.rb
 
-fake.rb:	miniruby$(EXEEXT) Makefile
+fake.rb:	Makefile
 		@echo ' \
 		class Object; \
Index: configure.in
===================================================================
RCS file: /cvs/ruby/src/ruby/configure.in,v
retrieving revision 1.226
diff -u -2 -p -d -r1.226 configure.in
--- configure.in	16 Feb 2004 06:45:31 -0000	1.226
+++ configure.in	3 Mar 2004 01:52:44 -0000
@@ -1113,5 +1113,5 @@ if test x"$cross_compiling" = xyes; then
 else
   MINIRUBY='./miniruby$(EXEEXT)'
-  PREP=''
+  PREP='$(MINIRUBY)'
   RUNRUBY='$(MINIRUBY) $(srcdir)/runruby.rb --extout=$(EXTOUT) --'
 fi
Index: mkconfig.rb
===================================================================
RCS file: /cvs/ruby/src/ruby/mkconfig.rb,v
retrieving revision 1.35
diff -u -2 -p -d -r1.35 mkconfig.rb
--- mkconfig.rb	14 Feb 2004 15:12:40 -0000	1.35
+++ mkconfig.rb	4 Mar 2004 10:33:47 -0000
@@ -140,5 +140,16 @@ $stdout.flush
 $stdout.reopen($orgout)
 config.close
-File.rename(rbconfig_rb_tmp, rbconfig_rb)
+if $timestamp and
+    File.exist?(rbconfig_rb) and
+    FileUtils.compare_file(rbconfig_rb, rbconfig_rb_tmp)
+  puts "#{rbconfig_rb} unchanged"
+  File.unlink(rbconfig_rb_tmp)
+  if String === $timestamp
+    FileUtils.touch($timestamp)
+  end
+else
+  puts "#{rbconfig_rb} updated"
+  File.rename(rbconfig_rb_tmp, rbconfig_rb)
+end
 
 # vi:set sw=2:
Index: bcc32/Makefile.sub
===================================================================
RCS file: /cvs/ruby/src/ruby/bcc32/Makefile.sub,v
retrieving revision 1.53
diff -u -2 -p -d -r1.53 Makefile.sub
--- bcc32/Makefile.sub	29 Feb 2004 08:22:48 -0000	1.53
+++ bcc32/Makefile.sub	4 Mar 2004 10:27:10 -0000
@@ -153,4 +153,5 @@ MINIRUBY = .\miniruby$(EXEEXT)
 RUNRUBY = .\ruby$(EXEEXT) "$(srcdir)runruby.rb" --extout="$(EXTOUT)" --
 EXTCONF = extconf.rb
+RBCONFIG = .rbconfig.time
 
 ORGLIBPATH = $(LIB)
@@ -163,4 +164,6 @@ LIBRUBY       = $(RUBY_SO_NAME).lib
 LIBRUBYARG    = $(LIBRUBY)
 
+PREP          = miniruby$(EXEEXT)
+
 !ifndef EXTOBJS
 EXTOBJS       = dmyext.obj
@@ -214,6 +217,5 @@ SCRIPT_ARGS   =	"--dest-dir=$(DESTDIR)" 
 EXTMK_ARGS    =	$(SCRIPT_ARGS) --extout="$(EXTOUT)" --extension $(EXTS) --extstatic $(EXTSTATIC) --
 
-all:		miniruby$(EXEEXT) rbconfig.rb \
-		$(LIBRUBY) $(MISCLIBS)
+all:		$(PREP) $(RBCONFIG) $(LIBRUBY) $(MISCLIBS)
 		@$(MINIRUBY) $(srcdir)ext/extmk.rb $(EXTMK_ARGS)
 
@@ -426,5 +428,5 @@ $(LIBRUBY_SO) $(LIBRUBY): $(LIBRUBY_A) $
 		$(LIBRUBY_LDSHARED) $(LIBRUBY_DLDFLAGS) $(EXTOBJS:/=\),$(LIBRUBY_SO),nul,$(LIBRUBY_A) $(LIBS),$(RUBYDEF),$(RUBY_SO_NAME).res
 
-$(RUBYDEF):	$(LIBRUBY_A) miniruby$(EXEEXT)
+$(RUBYDEF):	$(LIBRUBY_A) $(PREP)
 		$(MINIRUBY) $(srcdir)bcc32/mkexports.rb -output=$@ $(LIBRUBY_A)
 
@@ -433,7 +435,7 @@ install-all:	install-nodoc install-doc
 
 install-nodoc:	install-local install-ext
-install-local:	rbconfig.rb
+install-local:	$(RBCONFIG)
 		$(MINIRUBY) $(srcdir)instruby.rb $(SCRIPT_ARGS)
-install-ext:	rbconfig.rb
+install-ext:	$(RBCONFIG)
 		$(MINIRUBY) $(srcdir)ext/extmk.rb $(EXTMK_ARGS) install
 
@@ -441,8 +443,8 @@ what-where-all no-install-all:	no-instal
 what-where no-install:		no-install-local no-install-ext
 what-where-local:	no-install-local
-no-install-local:	rbconfig.rb
+no-install-local:	$(RBCONFIG)
 		$(MINIRUBY) $(srcdir)instruby.rb -n $(SCRIPT_ARGS)
 what-where-ext:	no-install-ext
-no-install-ext:	rbconfig.rb
+no-install-ext:	$(RBCONFIG)
 		$(MINIRUBY) $(srcdir)ext/extmk.rb -n $(EXTMK_ARGS) install
 
@@ -456,4 +458,5 @@ clean-local:
 		@if exist $(LIBRUBY_A) del $(LIBRUBY_A)
 		@if exist $(MAINOBJ) del $(MAINOBJ)
+		@if exist $(RBCONFIG) del $(RBCONFIG)
 		@if exist rbconfig.rb del rbconfig.rb
 		@if exist ext\extinit.c del ext\extinit.c
@@ -516,10 +519,10 @@ extconf:
 		$(RUNRUBY) -C "$(EXTCONFDIR)" $(EXTCONF) $(EXTCONFARGS)
 
-rbconfig.rb:	miniruby$(EXEEXT) config.status
-		@$(MINIRUBY) $(srcdir)mkconfig.rb -srcdir=$(srcdir) \
+$(RBCONFIG):	$(PREP) config.status
+		@$(MINIRUBY) $(srcdir)mkconfig.rb -srcdir=$(srcdir) -timestamp=$@ \
 			-install_name=$(RUBY_INSTALL_NAME) \
-			-so_name=$(RUBY_SO_NAME) rbconfig.rb
+			-so_name=$(RUBY_SO_NAME) -rbconfig.rb
 
-$(RUBY_INSTALL_NAME).rc $(RUBYW_INSTALL_NAME).rc $(RUBY_SO_NAME).rc: rbconfig.rb
+$(RUBY_INSTALL_NAME).rc $(RUBYW_INSTALL_NAME).rc $(RUBY_SO_NAME).rc: $(RBCONFIG)
 		@$(MINIRUBY) $(srcdir)win32/resource.rb \
 			-ruby_name=$(RUBY_INSTALL_NAME) \
Index: win32/Makefile.sub
===================================================================
RCS file: /cvs/ruby/src/ruby/win32/Makefile.sub,v
retrieving revision 1.72
diff -u -2 -p -d -r1.72 Makefile.sub
--- win32/Makefile.sub	2 Mar 2004 03:26:09 -0000	1.72
+++ win32/Makefile.sub	4 Mar 2004 10:11:08 -0000
@@ -2,4 +2,5 @@
 
 SHELL = $(COMSPEC)
+MAKEFILES = Makefile $(srcdir)/wince/Makefile.sub
 
 #### Start of system configuration section. ####
@@ -142,4 +143,5 @@ MINIRUBY = .\miniruby$(EXEEXT)
 RUNRUBY = .\ruby$(EXEEXT) "$(srcdir)/runruby.rb" --extout="$(EXTOUT)" --
 EXTCONF = extconf.rb
+RBCONFIG = .rbconfig.time
 
 !if !defined(STACK)
@@ -155,4 +157,6 @@ LIBRUBY       = $(RUBY_SO_NAME).lib
 LIBRUBYARG    = $(LIBRUBY)
 
+PREP          = miniruby$(EXEEXT)
+
 !if !defined(EXTSTATIC)
 EXTSTATIC     = 
@@ -210,6 +214,5 @@ SCRIPT_ARGS   =	"--dest-dir=$(DESTDIR)" 
 EXTMK_ARGS    =	$(SCRIPT_ARGS) --extout="$(EXTOUT)" --extension $(EXTS) --extstatic $(EXTSTATIC) --
 
-all:		ext miniruby$(EXEEXT) rbconfig.rb \
-		$(LIBRUBY) $(MISCLIBS)
+all:		ext $(RBCONFIG) $(LIBRUBY) $(MISCLIBS)
 		@$(MINIRUBY) $(srcdir)/ext/extmk.rb $(EXTMK_ARGS)
 
@@ -313,5 +316,5 @@ config.h:
 <<KEEP
 
-config.status: Makefile $(srcdir)/win32/Makefile.sub
+config.status: $(MAKEFILES)
 	@echo Creating <<$@
 # Generated automatically by Makefile.sub.
@@ -441,5 +444,5 @@ $(LIBRUBY_SO):	$(LIBRUBY_A) $(DLDOBJS) $
 			-Fe$@ $(LDFLAGS) $(LIBRUBY_DLDFLAGS)
 
-$(RUBYDEF):	$(LIBRUBY_A) miniruby$(EXEEXT)
+$(RUBYDEF):	$(LIBRUBY_A) $(PREP)
 		$(MINIRUBY) $(srcdir)/win32/mkexports.rb -output=$@ $(LIBRUBY_A)
 
@@ -451,7 +454,7 @@ install-all:	install-nodoc install-doc
 
 install-nodoc:	install-local install-ext
-install-local:	rbconfig.rb
+install-local:	$(RBCONFIG)
 		$(MINIRUBY) $(srcdir)/instruby.rb $(SCRIPT_ARGS)
-install-ext:	rbconfig.rb
+install-ext:	$(RBCONFIG)
 		$(MINIRUBY) $(srcdir)/ext/extmk.rb $(EXTMK_ARGS) install
 
@@ -459,8 +462,8 @@ what-where-all no-install-all:	no-instal
 what-where no-install:		no-install-local no-install-ext
 what-where-local:	no-install-local
-no-install-local:	rbconfig.rb
+no-install-local:	$(RBCONFIG)
 		$(MINIRUBY) $(srcdir)/instruby.rb -n $(SCRIPT_ARGS)
 what-where-ext:	no-install-ext
-no-install-ext:	rbconfig.rb
+no-install-ext:	$(RBCONFIG)
 		$(MINIRUBY) $(srcdir)/ext/extmk.rb -n $(EXTMK_ARGS) install
 
@@ -474,4 +477,5 @@ clean-local:
 		@if exist $(LIBRUBY_A) del $(LIBRUBY_A)
 		@if exist $(MAINOBJ) del $(MAINOBJ)
+		@if exist $(RBCONFIG) del $(RBCONFIG)
 		@if exist rbconfig.rb del rbconfig.rb
 		@if exist ext\extinit.c del ext\extinit.c
@@ -532,11 +536,11 @@ extconf:
 		$(RUNRUBY) -C "$(EXTCONFDIR)" $(EXTCONF) $(EXTCONFARGS)
 
-rbconfig.rb:	miniruby$(EXEEXT) config.status
-		@$(MINIRUBY) $(srcdir)/mkconfig.rb -srcdir=$(srcdir) \
+$(RBCONFIG):	miniruby$(EXEEXT) config.status
+		$(MINIRUBY) $(srcdir)/mkconfig.rb -srcdir=$(srcdir) -timestamp=$@ \
 			-install_name=$(RUBY_INSTALL_NAME) \
 			-so_name=$(RUBY_SO_NAME) rbconfig.rb
 
-$(RUBY_INSTALL_NAME).rc $(RUBYW_INSTALL_NAME).rc $(RUBY_SO_NAME).rc: rbconfig.rb
-		@$(MINIRUBY) $(srcdir)/win32/resource.rb \
+$(RUBY_INSTALL_NAME).rc $(RUBYW_INSTALL_NAME).rc $(RUBY_SO_NAME).rc: $(RBCONFIG)
+		$(MINIRUBY) $(srcdir)/win32/resource.rb \
 			-ruby_name=$(RUBY_INSTALL_NAME) \
 			-rubyw_name=$(RUBYW_INSTALL_NAME) \


-- 
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
    中田 伸悦

In This Thread