summaryrefslogtreecommitdiff
path: root/src/Make.clib
blob: 25fe88463cb4c5c595190d348e9594bca8f6f100 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# 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 included for C libraries

all: $(LIB)

%.$(HOST_O): %.c
	$(HOST_CC) $(HOST_CFLAGS) -c "$(PWD)/$*.c"

$(OFILES): $(HFILES)

ifneq ($(NOINSTALL),1)
install: $(QUOTED_GOROOT)/lib/$(LIB)
endif

$(QUOTED_GOROOT)/lib/$(LIB): $(LIB)
	cp $(LIB) "$(GOROOT)/lib/$(LIB)"

$(LIB): $(OFILES)
	$(HOST_AR) rsc $(LIB) $(OFILES)

CLEANFILES+=y.tab.[ch] y.output a.out $(LIB)

clean:
	rm -f *.$(HOST_O) $(CLEANFILES)

nuke: clean
	rm -f "$(GOROOT)/lib/$(LIB)"

y.tab.h: $(YFILES)
	LANG=C LANGUAGE="en_US.UTF8" bison -v -y $(HOST_YFLAGS) $(YFILES)

y.tab.c: y.tab.h
	test -f y.tab.c && touch y.tab.c