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

# -*- Makefile -*-

GO = /home/iant/go/bin/gccgo

LDFLAGS = -Wl,-R,/home/iant/go/lib,-static-libgo

PRETTY_OBJS = \
	astprinter.o \
	format.o \
	pretty.o \

pretty: $(PRETTY_OBJS)
	$(GO) $(LDFLAGS) -o $@ $(PRETTY_OBJS)

test: pretty
	test.sh

install: pretty
	cp pretty $(HOME)/bin/pretty

clean:
	rm -f pretty *.o  *~


pretty.o:	 astprinter.o format.o

.SUFFIXES:
.SUFFIXES: .go .o

.go.o:
	$(GO) -O2 -c -g $<
