# 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.

# DO NOT EDIT.  Automatically generated by gobuild.
# gobuild -m >Makefile

D=

include $(GOROOT)/src/Make.$(GOARCH)
AR=gopack

default: packages

clean:
	rm -rf *.[$(OS)] *.a [$(OS)].out _obj

test: packages
	gotest

coverage: packages
	gotest
	6cov -g `pwd` | grep -v '_test\.go:'

%.$O: %.go
	$(GC) -I_obj $*.go

%.$O: %.c
	$(CC) $*.c

%.$O: %.s
	$(AS) $*.s

O1=\
	sleep.$O\
	zoneinfo.$O\

O2=\
	time.$O\

O3=\
	tick.$O\


phases: a1 a2 a3
_obj$D/time.a: phases

a1: $(O1)
	$(AR) grc _obj$D/time.a sleep.$O zoneinfo.$O
	rm -f $(O1)

a2: $(O2)
	$(AR) grc _obj$D/time.a time.$O
	rm -f $(O2)

a3: $(O3)
	$(AR) grc _obj$D/time.a tick.$O
	rm -f $(O3)


newpkg: clean
	mkdir -p _obj$D
	$(AR) grc _obj$D/time.a

$(O1): newpkg
$(O2): a1
$(O3): a2
$(O4): a3

nuke: clean
	rm -f $(GOROOT)/pkg/$(GOOS)_$(GOARCH)$D/time.a

packages: _obj$D/time.a

install: packages
	test -d $(GOROOT)/pkg && mkdir -p $(GOROOT)/pkg/$(GOOS)_$(GOARCH)$D
	cp _obj$D/time.a $(GOROOT)/pkg/$(GOOS)_$(GOARCH)$D/time.a
