Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
G
golang
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
go
golang
Commits
54f1e1b1
Commit
54f1e1b1
authored
Feb 09, 2012
by
Gustavo Niemeyer
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
cmd/dist: fix GOROOT_FINAL
R=rsc, gustavo CC=golang-dev
https://golang.org/cl/5642045
parent
eb02b9cf
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
16 additions
and
23 deletions
+16
-23
a.h
src/cmd/dist/a.h
+1
-1
build.c
src/cmd/dist/build.c
+5
-16
buildruntime.c
src/cmd/dist/buildruntime.c
+1
-1
make.bash
src/make.bash
+3
-1
make.bat
src/make.bat
+6
-4
No files found.
src/cmd/dist/a.h
View file @
54f1e1b1
...
...
@@ -62,7 +62,6 @@ void splitlines(Vec*, char*);
void
splitfields
(
Vec
*
,
char
*
);
// build.c
extern
char
*
default_goroot
;
extern
char
*
goarch
;
extern
char
*
gobin
;
extern
char
*
gochar
;
...
...
@@ -70,6 +69,7 @@ extern char *gohostarch;
extern
char
*
gohostos
;
extern
char
*
goos
;
extern
char
*
goroot
;
extern
char
*
goroot_final
;
extern
char
*
goversion
;
extern
char
*
workdir
;
extern
char
*
slash
;
...
...
src/cmd/dist/build.c
View file @
54f1e1b1
...
...
@@ -15,13 +15,12 @@ char *gobin;
char
*
gohostarch
;
char
*
gohostos
;
char
*
goos
;
char
*
goroot
;
char
*
goroot
=
GOROOT_FINAL
;
char
*
goroot_final
=
GOROOT_FINAL
;
char
*
workdir
;
char
*
gochar
;
char
*
goroot_final
;
char
*
goversion
;
char
*
slash
;
// / for unix, \ for windows
char
*
default_goroot
=
DEFAULT_GOROOT
;
static
bool
shouldbuild
(
char
*
,
char
*
);
static
void
copy
(
char
*
,
char
*
);
...
...
@@ -74,12 +73,8 @@ init(void)
binit
(
&
b
);
xgetenv
(
&
b
,
"GOROOT"
);
if
(
b
.
len
==
0
)
{
if
(
default_goroot
==
nil
)
fatal
(
"$GOROOT not set and not available"
);
bwritestr
(
&
b
,
default_goroot
);
}
goroot
=
btake
(
&
b
);
if
(
b
.
len
>
0
)
goroot
=
btake
(
&
b
);
xgetenv
(
&
b
,
"GOBIN"
);
if
(
b
.
len
==
0
)
...
...
@@ -116,12 +111,6 @@ init(void)
bprintf
(
&
b
,
"%c"
,
gochars
[
i
]);
gochar
=
btake
(
&
b
);
xgetenv
(
&
b
,
"GOROOT_FINAL"
);
if
(
b
.
len
>
0
)
goroot_final
=
btake
(
&
b
);
else
goroot_final
=
goroot
;
xsetenv
(
"GOROOT"
,
goroot
);
xsetenv
(
"GOARCH"
,
goarch
);
xsetenv
(
"GOOS"
,
goos
);
...
...
@@ -777,7 +766,7 @@ install(char *dir)
if
(
streq
(
name
,
"goos.c"
))
{
vadd
(
&
compile
,
bprintf
(
&
b
,
"-DGOOS=
\"
%s
\"
"
,
goos
));
vadd
(
&
compile
,
bprintf
(
&
b
,
"-DGOARCH=
\"
%s
\"
"
,
goarch
));
bprintf
(
&
b1
,
"%s"
,
goroot
);
bprintf
(
&
b1
,
"%s"
,
goroot
_final
);
bsubst
(
&
b1
,
"
\\
"
,
"
\\\\
"
);
// turn into C string
vadd
(
&
compile
,
bprintf
(
&
b
,
"-DGOROOT=
\"
%s
\"
"
,
bstr
(
&
b1
)));
vadd
(
&
compile
,
bprintf
(
&
b
,
"-DGOVERSION=
\"
%s
\"
"
,
goversion
));
...
...
src/cmd/dist/buildruntime.c
View file @
54f1e1b1
...
...
@@ -29,7 +29,7 @@ mkzversion(char *dir, char *file)
"package runtime
\n
"
"
\n
"
"const defaultGoroot = `%s`
\n
"
"const theVersion = `%s`
\n
"
,
goroot
,
goversion
));
"const theVersion = `%s`
\n
"
,
goroot
_final
,
goversion
));
writefile
(
&
out
,
file
);
...
...
src/make.bash
View file @
54f1e1b1
...
...
@@ -47,7 +47,9 @@ done
echo
'# Building C bootstrap tool.'
mkdir
-p
../bin/tool
DEFGOROOT
=
'-DDEFAULT_GOROOT="'
"
$(
cd
..
&&
pwd
)
"
'"'
export
GOROOT
=
"
$(
cd
..
&&
pwd
)
"
GOROOT_FINAL
=
"
${
GOROOT_FINAL
:-
$GOROOT
}
"
DEFGOROOT
=
'-DGOROOT_FINAL="'
"
$GOROOT_FINAL
"
'"'
gcc
-O2
-Wall
-Werror
-o
../bin/tool/dist
-Icmd
/dist
"
$DEFGOROOT
"
cmd/dist/
*
.c
echo
...
...
src/make.bat
View file @
54f1e1b1
...
...
@@ -10,14 +10,16 @@ echo Must run make.bat from Go src directory.
goto fail
:ok
:: Grab default
$GOROOT, escape \ for C string
.
:: The expression %
CD:\=\\% means to take %CD
%
:: Grab default
GOROOT_FINAL and set GOROOT for build
.
:: The expression %
VAR:\=\\% means to take %VAR
%
:: and apply the substitution \ = \\, escaping the
:: backslashes. Then we wrap that in quotes to create
:: a C string.
cd ..
set
DEFGOROOT=-DDEFAULT_GOROOT="\"%CD:\=\\%\"
"
set
GOROOT="%CD%
"
cd src
if "x%GOROOT_FINAL%"=="x" set GOROOT_FINAL="%GOROOT%"
set DEFGOROOT=-DGOROOT_FINAL="\"%GOROOT_FINAL:\=\\%\""
echo # Building C bootstrap tool.
if not exist ..\bin\tool mkdir ..\bin\tool
...
...
@@ -40,7 +42,7 @@ if errorlevel 1 goto fail
del ..\bin\tool\go_bootstrap.exe
echo .
if
x%1==x--no-banner
goto nobanner
if
"x%1"=="x--no-banner"
goto nobanner
..\bin\tool\dist banner
:nobanner
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment