From 2a413f97a497b2e86a0523b5c849e3fc075e887c Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 6 Mar 2009 09:37:31 +0000 Subject: * configure.in, Makefile.in, win32/Makefile.sub (CHDIR): cd using phisical directory. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22797 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 28 ++++------------------------ Makefile.in | 11 ++++++----- common.mk | 6 +++--- configure.in | 17 +++++++++++++++++ win32/Makefile.sub | 3 ++- 5 files changed, 32 insertions(+), 33 deletions(-) diff --git a/ChangeLog b/ChangeLog index f7b342fb6d..38926cdf8e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,11 +1,7 @@ -Fri Mar 6 16:17:45 2009 Nobuyoshi Nakada +Fri Mar 6 18:37:30 2009 Nobuyoshi Nakada - * win32/Makefile.sub (.c.asm): removed $(COUTFLAG). - -Fri Mar 6 14:59:30 2009 Yukihiro Matsumoto - - * error.c (report_bug): message updated to better English. - [ruby-core:22665] + * configure.in, Makefile.in, win32/Makefile.sub (CHDIR): cd using + phisical directory. Fri Mar 6 14:28:36 2009 Nobuyoshi Nakada @@ -104,22 +100,6 @@ Wed Mar 4 20:27:10 2009 Nobuyoshi Nakada * win32/setup.mak (-unicows-): checks if unicows.lib is available. -Wed Mar 4 05:19:27 2009 James Edward Gray II - - * lib/csv.rb: Some minor documentation fixes from Gregory Brown. - -Wed Mar 4 03:42:56 2009 James Edward Gray II - - * lib/csv.rb: A patch from Madoka Yakamamoto to prevent an infinite - loop while reading some encodings. - -Wed Mar 4 00:54:43 2009 Yuki Sonoda (Yugui) - - * lib/prime.rb (Prime::prime?): used to return a wrong answer. - [ruby-core:22646]. - - * test/test_prime.rb (test_prime?): test case for [ruby-core:22646]. - Tue Mar 3 17:10:09 2009 Nobuyoshi Nakada * ext/extmk.rb (extmake): removes object files no longer used and @@ -3296,7 +3276,7 @@ Tue Jan 13 18:21:44 2009 NAKAMURA Usaku Tue Jan 13 18:19:49 2009 NAKAMURA Usaku * io.c (rb_io_initialize): workaround for Windows. [ruby-dev:37686] - (also see [ruby-dev:37721]) + (also see [ruby-dev:37721]) Tue Jan 13 17:29:02 2009 Nobuyoshi Nakada diff --git a/Makefile.in b/Makefile.in index bdbe36d9bd..d258e1ffcf 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,6 +1,7 @@ SHELL = /bin/sh NULLCMD = : RUNCMD = $(SHELL) +CHDIR = @CHDIR@ exec = exec #### Start of system configuration section. #### @@ -174,10 +175,10 @@ uncommon.mk: $(srcdir)/common.mk sed 's/{\$$([^(){}]*)[^{}]*}//g' $< > $@ config.status: $(srcdir)/configure $(srcdir)/enc/Makefile.in - MINIRUBY="$(MINIRUBY)" $(SHELL) ./config.status --recheck + PWD= MINIRUBY="$(MINIRUBY)" $(SHELL) ./config.status --recheck $(srcdir)/configure: $(srcdir)/configure.in - unset PWD; cd $(srcdir) && exec $(AUTOCONF) + $(CHDIR) $(srcdir) && exec $(AUTOCONF) incs: id.h id.h: parse.h $(srcdir)/tool/generic_erb.rb $(srcdir)/template/id.h.tmpl @@ -247,11 +248,11 @@ ext/extinit.$(OBJEXT): ext/extinit.c $(SETUP) $(CC) $(CFLAGS) $(XCFLAGS) $(CPPFLAGS) $(COUTFLAG)$@ -c ext/extinit.c up:: - @cd "$(srcdir)" && LC_TIME=C exec $(VCSUP) + @$(CHDIR) "$(srcdir)" && LC_TIME=C exec $(VCSUP) update-rubyspec: @if [ -d $(srcdir)/spec/mspec ]; then \ - cd $(srcdir)/spec/mspec; \ + $(CHDIR) $(srcdir)/spec/mspec; \ echo updating mspec ...; \ git pull; \ cd ../..; \ @@ -260,7 +261,7 @@ update-rubyspec: git clone $(MSPEC_GIT_URL) $(srcdir)/spec/mspec; \ fi @if [ -d $(srcdir)/spec/rubyspec ]; then \ - cd $(srcdir)/spec/rubyspec; \ + $(CHDIR) $(srcdir)/spec/rubyspec; \ echo updating rubyspec ...; \ git pull; \ else \ diff --git a/common.mk b/common.mk index d69afd1987..d08a856d60 100644 --- a/common.mk +++ b/common.mk @@ -129,7 +129,7 @@ main: exts exts: $(MKMAIN_CMD) -$(MKMAIN_CMD): $(MKFILES) incs $(PREP) $(RBCONFIG) $(LIBRUBY) +$(MKMAIN_CMD): $(MKFILES) incs $(PREP) $(RBCONFIG) $(LIBRUBY) @$(MINIRUBY) $(srcdir)/ext/extmk.rb --make="$(MAKE)" --command-output=$@ $(EXTMK_ARGS) prog: $(PROGRAM) $(WPROGRAM) @@ -464,7 +464,7 @@ dl_os2.$(OBJEXT): {$(VPATH)}dl_os2.c ia64.$(OBJEXT): {$(VPATH)}ia64.s $(CC) $(CFLAGS) -c $< -# when I use -I., there is confliction at "OpenFile" +# when I use -I., there is confliction at "OpenFile" # so, set . into environment varible "include" win32.$(OBJEXT): {$(VPATH)}win32.c $(RUBY_H_INCLUDES) @@ -690,7 +690,7 @@ $(srcdir)/revision.h: $(srcdir)/version.h $(srcdir)/ChangeLog $(srcdir)/tool/fil @$(IFCHANGE) "$@" "$@.tmp" $(srcdir)/ext/ripper/ripper.c: - cd $(srcdir)/ext/ripper && $(exec) $(MAKE) -f depend $(MFLAGS) top_srcdir=../.. srcdir=. + $(CHDIR) $(srcdir)/ext/ripper && $(exec) $(MAKE) -f depend $(MFLAGS) top_srcdir=../.. srcdir=. ## diff --git a/configure.in b/configure.in index 88b83d6007..529e567c96 100644 --- a/configure.in +++ b/configure.in @@ -296,6 +296,23 @@ AC_SUBST(MAKEDIRS) AC_SUBST(RMDIRS, ['$(top_srcdir)/tool/rmdirs']) AC_SUBST(RMALL, ['rm -fr']) +AC_MSG_CHECKING([for cd using phisical directory]) +rm -fr conf$$.dir +mkdir conf$$.dir && +(cd conf$$.dir && mkdir src build && cd src && +$as_ln_s ../build . > /dev/null 2>&1 && cd build && +for chdir in 'cd -P' 'PWD= cd'; do + ($chdir ../src 2> /dev/null && echo "$chdir" > cdcmd) && break +done) +if test -e conf$$.dir/src/cdcmd; then + read CHDIR < conf$$.dir/src/cdcmd 2> /dev/null +else + CHDIR=cd +fi +rm -fr conf$$.dir +AC_MSG_RESULT([$CHDIR]) +AC_SUBST(CHDIR) + dnl } dnl compiler section { diff --git a/win32/Makefile.sub b/win32/Makefile.sub index c495152e6c..aede5357e0 100644 --- a/win32/Makefile.sub +++ b/win32/Makefile.sub @@ -4,6 +4,7 @@ SHELL = $(COMSPEC) RUNCMD = $(COMSPEC) /c MKFILES = Makefile NULL = nul +CHDIR = cd !ifndef MFLAGS MFLAGS=-l @@ -301,7 +302,7 @@ ruby: $(PROGRAM) rubyw: $(WPROGRAM) up:: - @(set LC_TIME=C & $(VCSUP) "$(srcdir)") + @cd "$(srcdir:/=\)" && set LC_TIME=C && $(VCSUP) !include $(srcdir)/common.mk -- cgit v1.2.3