]> Cypherpunks.ru repositories - gostls13.git/commitdiff
build: add default GOROOT_BOOTSTRAP in Windows
authorGiovanni Bajo <rasky@develer.com>
Sun, 25 Feb 2018 10:32:59 +0000 (11:32 +0100)
committerGiovanni Bajo <rasky@develer.com>
Sun, 22 Mar 2020 08:44:07 +0000 (08:44 +0000)
CL 57753 added support to make.bash and make.rc to
default GOROOT_BOOTSTRAP to 'go env GOROOT'. This
patch does the same in make.bat for Windows.

Updates #18545
Fixes #28641

Change-Id: I9152cc5080ed219b4de5bad0bd12d7725422ee1a
Reviewed-on: https://go-review.googlesource.com/c/go/+/96455
Reviewed-by: Alex Brainman <alex.brainman@gmail.com>
src/make.bat

index 5dbde85564e9ff3166e11e5b404db9a2bcdf25fc..f7955ec88a9488c3bb893be9592ab1b8a337faae 100644 (file)
@@ -61,7 +61,8 @@ del /F ".\pkg\runtime\runtime_defs.go" 2>NUL
 
 :: Set GOROOT for build.
 cd ..
-set GOROOT=%CD%
+set GOROOT_TEMP=%CD%
+set GOROOT=
 cd src
 set vflag=
 if x%1==x-v set vflag=-v
@@ -70,8 +71,25 @@ if x%3==x-v set vflag=-v
 if x%4==x-v set vflag=-v
 
 if not exist ..\bin\tool mkdir ..\bin\tool
+
+:: Calculating GOROOT_BOOTSTRAP
+if not "x%GOROOT_BOOTSTRAP%"=="x" goto bootstrapset
+for /f "tokens=*" %%g in ('where go 2^>nul') do (
+       if "x%GOROOT_BOOTSTRAP%"=="x" (
+               for /f "tokens=*" %%i in ('%%g env GOROOT 2^>nul') do (
+                       if /I not %%i==%GOROOT_TEMP% (
+                               set GOROOT_BOOTSTRAP=%%i
+                       )
+               )
+       )
+)
 if "x%GOROOT_BOOTSTRAP%"=="x" set GOROOT_BOOTSTRAP=%HOMEDRIVE%%HOMEPATH%\Go1.4
+
+:bootstrapset
 if not exist "%GOROOT_BOOTSTRAP%\bin\go.exe" goto bootstrapfail
+set GOROOT=%GOROOT_TEMP%
+set GOROOT_TEMP=
+
 echo Building Go cmd/dist using %GOROOT_BOOTSTRAP%
 if x%vflag==x-v echo cmd/dist
 setlocal