[前][次][番号順一覧][スレッド一覧]

ruby-changes:46182

From: nobu <ko1@a...>
Date: Mon, 10 Apr 2017 10:22:52 +0900 (JST)
Subject: [ruby-changes:46182] nobu:r58295 (trunk): Add --with-git option

nobu	2017-04-10 10:22:48 +0900 (Mon, 10 Apr 2017)

  New Revision: 58295

  https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=58295

  Log:
    Add --with-git option
    
    * configure.in, win32/configure.bat: add --with-git option to
      tell git command to use, or not to use git.

  Modified files:
    trunk/Makefile.in
    trunk/common.mk
    trunk/configure.in
    trunk/win32/Makefile.sub
    trunk/win32/configure.bat
Index: configure.in
===================================================================
--- configure.in	(revision 58294)
+++ configure.in	(revision 58295)
@@ -58,6 +58,18 @@ fi https://github.com/ruby/ruby/blob/trunk/configure.in#L58
 AC_SUBST(BASERUBY)
 AC_SUBST(HAVE_BASERUBY)
 
+GIT=git
+HAVE_GIT=yes
+AC_ARG_WITH(git,
+	AS_HELP_STRING([--without-git], [never use git]),
+	[AS_CASE([$withval],
+	    [no],  [GIT=never-use HAVE_GIT=no],
+	    [yes], [GIT=git],
+	    [GIT=$withval])])
+AS_IF([test x"$HAVE_GIT" = xyes], [command -v "$GIT" > /dev/null || HAVE_GIT=no])
+AC_SUBST(GIT)
+AC_SUBST(HAVE_GIT)
+
 AC_DEFUN([RUBY_MINGW32],
 [AS_CASE(["$host_os"],
 [cygwin*], [
@@ -4644,19 +4656,19 @@ AC_CONFIG_FILES(Makefile, [ https://github.com/ruby/ruby/blob/trunk/configure.in#L4656
 	    :
 	elif svn info "$srcdir" > /dev/null 2>&1; then
 	    VCS='svn'
-	elif git_dir=`git --work-tree="$srcdir" --git-dir="$srcdir/.git" rev-parse --git-dir 2>/dev/null`; then
+	elif git_dir=`$GIT --work-tree="$srcdir" --git-dir="$srcdir/.git" rev-parse --git-dir 2>/dev/null`; then
 	    if test -d "$git_dir/svn"; then
-		VCS='git svn'
+		VCS='$(GIT) svn'
 	    else
-		VCS='git'
+		VCS='$(GIT)'
 	    fi
 	else
 	    VCS='echo cannot'
 	fi
 	AS_CASE("$VCS",
-		[svn],       [VCSUP='$(VCS) up $(SVNUPOPTIONS)'],
-		["git svn"], [VCSUP='$(VCS) rebase $(GITSVNREBASEOPTIONS)'],
-		[git],       [VCSUP='$(VCS) pull $(GITPULLOPTIONS)'],
+		[svn],          [VCSUP='$(VCS) up $(SVNUPOPTIONS)'],
+		['$(GIT) svn'], [VCSUP='$(VCS) rebase $(GITSVNREBASEOPTIONS)'],
+		['$(GIT)'|git], [VCSUP='$(VCS) pull $(GITPULLOPTIONS)'],
 		[VCSUP='$(VCS)'])
 	sed -n \
 	    -e '[/^@%:@define \(RUBY_RELEASE_[A-Z]*\) \([0-9][0-9]*\)/]{' \
Index: Makefile.in
===================================================================
--- Makefile.in	(revision 58294)
+++ Makefile.in	(revision 58295)
@@ -172,6 +172,8 @@ IFCHANGE      = $(srcdir)/tool/ifchange https://github.com/ruby/ruby/blob/trunk/Makefile.in#L172
 SET_LC_MESSAGES = env LC_MESSAGES=C
 OBJDUMP       = @OBJDUMP@
 OBJCOPY       = @OBJCOPY@
+HAVE_GIT      = @HAVE_GIT@
+GIT           = @GIT@
 VCS           = @VCS@
 VCSUP         = @VCSUP@
 DTRACE        = @DTRACE@ @DTRACE_OPT@
Index: common.mk
===================================================================
--- common.mk	(revision 58294)
+++ common.mk	(revision 58295)
@@ -1078,9 +1078,11 @@ up:: https://github.com/ruby/ruby/blob/trunk/common.mk#L1078
 
 after-update:: extract-extlibs
 
-update-remote:: update-src update-rubyspec update-download
+update-remote:: update-src update-download $(HAVE_GIT:yes=)update-rubyspec
 update-download:: update-unicode update-gems download-extlibs
 
+noupdate-rubyspec:
+
 update-config_files: PHONY
 	$(Q) $(BASERUBY) -C "$(srcdir)/tool" \
 	    ../tool/downloader.rb -e gnu \
Index: win32/configure.bat
===================================================================
--- win32/configure.bat	(revision 58294)
+++ win32/configure.bat	(revision 58295)
@@ -41,6 +41,8 @@ if "%1" == "--path" goto :path https://github.com/ruby/ruby/blob/trunk/win32/configure.bat#L41
 if "%1" == "--with-baseruby" goto :baseruby
 if "%1" == "--with-ntver" goto :ntver
 if "%1" == "--with-libdir" goto :libdir
+if "%1" == "--with-git" goto :git
+if "%1" == "--without-git" goto :nogit
 if "%1" == "--without-ext" goto :witharg
 if "%1" == "--without-extensions" goto :witharg
 if "%opt:~0,10%" == "--without-" goto :withoutarg
@@ -179,6 +181,18 @@ goto :loop ; https://github.com/ruby/ruby/blob/trunk/win32/configure.bat#L181
   shift
   shift
 goto :loop ;
+:git
+  echo>> ~tmp~.mak 	"GIT=%~2" \
+  echo>>confargs.tmp  %1=%2 \
+  shift
+  shift
+goto :loop ;
+:nogit
+  echo>> ~tmp~.mak 	"GIT=never-use" \
+  echo>> ~tmp~.mak 	"HAVE_GIT=no" \
+  echo>>confargs.tmp  %1 \
+  shift
+goto :loop ;
 :witharg
   echo>>confargs.tmp  %1=%2\
   set witharg=1
Index: win32/Makefile.sub
===================================================================
--- win32/Makefile.sub	(revision 58294)
+++ win32/Makefile.sub	(revision 58295)
@@ -393,14 +393,34 @@ top_srcdir = $(srcdir) https://github.com/ruby/ruby/blob/trunk/win32/Makefile.sub#L393
 hdrdir = $(srcdir)/include
 VPATH = $(arch_hdrdir)/ruby;$(hdrdir)/ruby;$(srcdir);$(srcdir)/missing;$(win_srcdir)
 
+!ifndef GIT
+GIT = git
+!endif
+!if "$(HAVE_GIT)" == "yes" || "$(HAVE_GIT)" == "no"
+!else if "$(GIT)" == ""
+HAVE_GIT = no
+!else if [for %I in ($(GIT)) @if not "%~xI" == "" exit 1]
+! if [for %I in ($(GIT)) @if not "%~$PATH:I" == "" exit 1]
+HAVE_GIT = yes
+! else
+HAVE_GIT = no
+! endif
+!else
+! if [for %x in (%PATHEXT:;= %) do @for %I in ($(GIT)%x) do @if not "%~$PATH:I" == . exit 1]
+HAVE_GIT = yes
+! else
+HAVE_GIT = no
+! endif
+!endif
+
 !if exist($(srcdir)/.svn)
 VCS = svn
 VCSUP = $(VCS) up $(SVNUPOPTIONS)
 !else if exist($(srcdir)/.git/svn)
-VCS = git svn
+VCS = $(GIT) svn
 VCSUP = $(VCS) rebase $(GITSVNREBASEOPTIONS)
 !else if exist($(srcdir)/.git)
-VCS = git
+VCS = $(GIT)
 VCSUP = $(VCS) pull $(GITPULLOPTIONS)
 !else
 VCSUP = rem

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]