mirror of
https://github.com/golang/go
synced 2024-09-05 16:04:50 +00:00
49 lines
1.1 KiB
Plaintext
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
|
|
|