1
0
mirror of https://github.com/golang/go synced 2024-11-26 13:38:20 -07:00

fix race with fresh perforce checkouts

R=r
DELTA=15  (9 added, 0 deleted, 6 changed)
OCL=20977
CL=20981
This commit is contained in:
Russ Cox 2008-12-11 11:58:45 -08:00
parent cb64ec5bb6
commit fa945d5bf8

View File

@ -39,13 +39,22 @@ y.tab.h: $(YFILES)
y.tab.c: y.tab.h
test -f y.tab.c && touch y.tab.c
# the test here checks whether we have 6g at all.
# if so, use it. if not, just use the sysimport.c we have.
# this happens on fresh perforce checkouts where
# sysimport.c ends up with an older time stamp
# than sys.go (or unsafe.go or mksys.c).
sysimport.c: sys.go unsafe.go mksys.c
gcc -o mksys mksys.c
6g sys.go
6g unsafe.go
if test -x $(BIN)/6g; then \
gcc -o mksys mksys.c; \
6g sys.go; \
6g unsafe.go; \
./mksys sys >_sysimport.c && \
./mksys unsafe >>_sysimport.c && \
mv _sysimport.c sysimport.c
mv _sysimport.c sysimport.c; \
elif test -f sysimport.c; then \
touch sysimport.c; \
fi
clean:
rm -f $(OFILES) *.6 enam.c 6.out a.out y.tab.h y.tab.c $(LIB) _sysimport.c