1
0
mirror of https://github.com/golang/go synced 2024-11-26 08:07:57 -07:00
go/src/Make.pkg
Russ Cox 090efde407 makefile fixes; convert runtime to use new makefiles
R=r
DELTA=67  (17 added, 29 deleted, 21 changed)
OCL=33215
CL=33219
2009-08-13 14:41:10 -07:00

66 lines
1.2 KiB
Plaintext

# Copyright 2009 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.
all: package
package: _obj/$(TARG).a
testpackage: _test/$(TARG).a
elem=$(lastword $(subst /, ,$(TARG)))
dir=$(patsubst %/$(elem),%,./$(TARG))
pkgdir=$(GOROOT)/pkg/$(GOOS)_$(GOARCH)
coverage:
gotest
6cov -g $(shell pwd) | grep -v '_test\.go:'
clean:
rm -rf *.[$(OS)] *.a [$(OS)].out _obj _test _testmain.go
test:
gotest
nuke: clean
rm -f $(pkgdir)/$(TARG).a
testpackage-clean:
rm -f _test/$(TARG).a _gotest_.$O
install: $(pkgdir)/$(TARG).a
$(pkgdir)/$(TARG).a: package
test -d $(GOROOT)/pkg && mkdir -p $(pkgdir)/$(dir)
cp _obj/$(TARG).a $(pkgdir)/$(TARG).a
_go_.$O: $(GOFILES)
$(GC) -o $@ $(GOFILES)
_gotest_.$O: $(GOFILES) $(GOTESTFILES)
$(GC) -o $@ $(GOFILES) $(GOTESTFILES)
%.$O: %.c
$(CC) $(CFLAGS) $*.c
%.$O: %.s
$(AS) $*.s
%.$O: $(HFILES)
_obj/$(TARG).a: _go_.$O $(OFILES)
mkdir -p _obj/$(dir)
rm -f _obj/$(TARG).a
gopack grc $@ _go_.$O $(OFILES)
_test/$(TARG).a: _gotest_.$O $(OFILES)
mkdir -p _test/$(dir)
rm -f _test/$(TARG).a
gopack grc $@ _gotest_.$O $(OFILES)
importpath:
@echo $(TARG)
dir:
@echo $(dir)