1
0
mirror of https://github.com/golang/go synced 2024-11-21 21:24:45 -07:00
go/src/Make.ccmd
Russ Cox 2e41120a82 build: explain $PWD use
R=golang-dev, gri
CC=golang-dev
https://golang.org/cl/4639064
2011-06-22 17:00:46 -04:00

49 lines
1.1 KiB
Plaintext

# Copyright 2010 The Go Authors. All rights reserved.
# Use of this source code is governed by a BSD-style
# license that can be found in the LICENSE file.
# Makefile for commands written in C.
ifeq (windows,$(findstring windows, $(shell uname | tr A-Z a-z | sed 's/mingw/windows/')))
TARG:=$(TARG).exe
endif
$(TARG): $(OFILES) $(LIB)
$(HOST_LD) -o $(TARG) -L"$(GOROOT)"/lib $(OFILES) $(LIB) -lmach -lbio -l9 -lm $(HOST_LDFLAGS)
$(OFILES): $(HFILES)
CLEANFILES+=y.tab.[ch]
clean:
rm -f *.$(HOST_O) $(TARG) $(CLEANFILES)
nuke: clean
rm -f "$(GOBIN)/$(TARG)"
ifneq ($(NOINSTALL),1)
install: $(QUOTED_GOBIN)/$(TARG)
endif
$(QUOTED_GOBIN)/$(TARG): $(TARG)
cp $(TARG) "$(GOBIN)"/$(TARG)
y.tab.h: $(YFILES)
bison -y $(HOST_YFLAGS) $(YFILES)
y.tab.c: y.tab.h
test -f y.tab.c && touch y.tab.c
all: $(TARG)
# Use $(PWD)/$*.c so that gdb shows full path in stack traces.
%.$(HOST_O): %.c
$(HOST_CC) $(HOST_CFLAGS) -c "$(PWD)/$*.c"
# These are used by enough different Makefiles to be
# worth writing down in one place, even if they don't
# apply to every command that builds with Make.ccmd
../%l/enam.o:
cd ../$*l; $(MAKE) enam.o