
#ident	"@(#)Makefile.demo	1.4	01/01/09 SMI"
#
# Copyright (c) 2001 by Sun Microsystems, Inc.
# All rights reserved.
#

MACH:sh=	uname -p


sparc_XARCH=	-xarch=v8
sparcv9_XARCH=	-xarch=v9

KSHSRC=		sotruss.ksh symbindrep.ksh perfcnt.ksh whocalls.ksh

PROGS=		dumpbind
LIBS=		truss.so.1 symbindrep.so.1 perfcnt.so.1 who.so.1 \
		bindings.so.1
SCRIPTS=	$(KSHSRC:%.ksh=%)
DIRS=		objs pics pics64 64

sparc_LIBS64=		$(LIBS:%=64/%)
i386_LIBS64=

LIBS64=		$($(MACH)_LIBS64)

ALLLIBS= $(LIBS) $(LIBS64)

$(LIBS):=	CFLAGS += $($(MACH)_XARCH) -Kpic
$(LIBS64):=	CFLAGS += $($(MACH)v9_XARCH) -Kpic

LDFLAGS=		-zdefs -ztext
CLEANFILES=		core pics64/*.o pics/*.o objs/*.o
CLOBBERFILES=		$(ALLLIBS) $(SCRIPTS) $(PROGS) .make.state



.KEEP_STATE:

all: $(DIRS) .WAIT $(ALLLIBS) $(SCRIPTS) $(PROGS)

%:	src/%.ksh
	rm -f $@
	cat $< > $@
	chmod a+x $@

objs/%.o pics/%.o pics64/%.o: src/%.c
	$(COMPILE.c) $< -o $@

dumpbind: objs/dumpbind.o
	$(LINK.c) objs/dumpbind.o -o $@

bindings.so.1: pics/bindings.o pics/env.o
	$(LINK.c) -G pics/bindings.o pics/env.o -o $@ -lmapmalloc -lc

64/bindings.so.1: pics64/bindings.o pics64/env.o
	$(LINK.c) -G pics64/bindings.o pics64/env.o -o $@ -lmapmalloc -lc

perfcnt.so.1: pics/perfcnt.o pics/hash.o pics/env.o
	$(LINK.c) -G pics/perfcnt.o pics/hash.o pics/env.o \
		-o $@ -lmapmalloc -lc

64/perfcnt.so.1: pics64/perfcnt.o pics64/hash.o pics64/env.o
	$(LINK.c) -G pics64/perfcnt.o pics64/hash.o pics64/env.o \
		-o $@ -lmapmalloc -lc

symbindrep.so.1: pics/symbindrep.o pics/env.o
	$(LINK.c) -G pics/symbindrep.o pics/env.o -o $@ -lmapmalloc -lc

64/symbindrep.so.1: pics64/symbindrep.o pics64/env.o
	$(LINK.c) -G pics64/symbindrep.o pics64/env.o -o $@ -lmapmalloc -lc

truss.so.1: pics/truss.o pics/env.o
	$(LINK.c) -G pics/truss.o pics/env.o -o $@ -lmapmalloc -lc

64/truss.so.1: pics64/truss.o pics64/env.o
	echo "CFLAGS: " $(CFLAGS) "-" $(sparcv9_XARCH)
	$(LINK.c) -G pics64/truss.o pics64/env.o -o $@ -lmapmalloc -lc

who.so.1: pics/who.o pics/env.o
	$(LINK.c) -G pics/who.o pics/env.o \
		-o $@ -lelf -lmapmalloc -ldl -lc

64/who.so.1: pics64/who.o pics64/env.o
	$(LINK.c) -xarch=v9 -G pics64/who.o pics64/env.o \
		-o $@ -lelf -lmapmalloc -ldl -lc

objs:	
	-@mkdir objs

pics:
	-@mkdir pics

pics64:
	-@mkdir pics64

64:
	-@mkdir 64

clean: FRC
	rm -f $(CLEANFILES)

clobber: clean FRC
	rm -f $(CLOBBERFILES)
	rm -rf $(DIRS)

FRC:
