# 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=/go/

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=\
	scanner.$O\


phases: a1
_obj$D/scanner.a: phases

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


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

$(O1): newpkg
$(O2): a1

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

packages: _obj$D/scanner.a

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