# Standard 'conf'-system makefile with productions for standardized targets;
# 'make install', 'make clean', 'make manifest', 'make setup', 'make distrib'
# See the top-level 'conf' system Makefile for more details.

INSTALL_DIR=..
PREFIX=.
MANIFEST=$(PREFIX)/src
MAKEFILE=Makefile
USRINC=/usr/include
GCC=gcc
GCCFLAGS=$(CFLAGS)
GLDFLAGS=-nostdlib /lib/crts0.o
GLIBFLAGS=/lib/libc.a

DRIVER=$(INSTALL_DIR)/Driver.a

TARGETS=$(DRIVER)

OBJS= $(DRIVER)(sound.o)

all: $(TARGETS)

gcc:
	+@exec make "CC=$(GCC)" "CFLAGS=$(GCCFLAGS)" \
		    "LDFLAGS=$(GLDFLAGS)" "LIBFLAGS=$(GLIBFLAGS)" \
		    -f $(MAKEFILE)

install setup:

clean:
	rm -f $(TARGETS)

manifest:
	@for i in *; do \
		case $$i in \
		RCS)	;; \
		*)	echo $(MANIFEST)/$$i \
			;; \
		esac \
	done

distrib:
	@for i in $(TARGETS); do echo $(PREFIX)/$${i\#$(INSTALL_DIR)/}; done

$(DRIVER): $(OBJS)

$(DRIVER)(sound.o):	sound.c
	${CC} ${CFLAGS} -o $% -c sound.c
	$(AR) $(ARFLAGS) $@ $%
	rm -f $%

depend:
	echo > makedep
	grep "^\#include" * \
		| sed 's/\(.*\)\.c:.*"\(.*\)".*/$$(DRIVER)(\1.o): \2/' \
		| sed '/\#include/d' >> makedep
	grep "^\#include" * \
		| sed 's/\(.*\)\.c:.*<\(.*\)>.*/$$(DRIVER)(\1.o): $$(USRINC)\/\2/' \
		| sed '/\#include/d' >> makedep
	grep "^\#include" * \
		| sed 's/\(.*\)\.spc:.*<\(.*\)>.*/$$(INSTALL_DIR)\/\1.c: $$(USRINC)\/\2/' \
		| sed '/\#include/d' >> makedep
	echo '/^\# DO NOT DELETE THIS LINE/+1,$$d' > eddep
	echo '$$r makedep' >> eddep
	echo 'w' >> eddep
	ed $(MAKEFILE) < eddep
	rm makedep eddep
	echo >> $(MAKEFILE)
	echo "\# DEPENDENCIES MUST END AT END OF FILE:" \
	     "IF YOU PUT STUFF HERE, IT WILL GO AWAY" >> $(MAKEFILE)
	echo "\# See make depend, above" >> $(MAKEFILE)

# DO NOT DELETE THIS LINE - make depend needs it

$(DRIVER)(dsp.o): $(USRINC)/sys/coherent.h
$(DRIVER)(dsp.o): $(USRINC)/sys/errno.h
$(DRIVER)(dsp.o): $(USRINC)/sys/file.h
$(DRIVER)(dsp.o): $(USRINC)/sys/sb16.h
$(DRIVER)(dsp.o): $(USRINC)/sys/sched.h
$(DRIVER)(dsp.o): $(USRINC)/sys/sound.h
$(DRIVER)(dsp.o): $(USRINC)/kernel/param.h
$(DRIVER)(dsp.o): $(USRINC)/kernel/pri.h
$(DRIVER)(dsp.o): $(USRINC)/kernel/timeout.h
$(DRIVER)(dsp.o): $(USRINC)/fcntl.h
$(DRIVER)(dsp.o): $(USRINC)/limits.h
$(DRIVER)(mixer.o): $(USRINC)/sys/coherent.h
$(DRIVER)(mixer.o): $(USRINC)/sys/errno.h
$(DRIVER)(mixer.o): $(USRINC)/sys/file.h
$(DRIVER)(mixer.o): $(USRINC)/sys/sb16.h
$(DRIVER)(mixer.o): $(USRINC)/sys/sound.h
$(DRIVER)(mixer.o): $(USRINC)/sys/types.h
$(DRIVER)(sound.o): $(USRINC)/sys/coherent.h
$(DRIVER)(sound.o): $(USRINC)/sys/cmn_err.h
$(DRIVER)(sound.o): $(USRINC)/sys/cred.h
$(DRIVER)(sound.o): $(USRINC)/sys/devices.h
$(DRIVER)(sound.o): $(USRINC)/sys/errno.h
$(DRIVER)(sound.o): $(USRINC)/sys/file.h
$(DRIVER)(sound.o): $(USRINC)/sys/sound.h
$(DRIVER)(sound.o): $(USRINC)/sys/stat.h

# DEPENDENCIES MUST END AT END OF FILE: IF YOU PUT STUFF HERE, IT WILL GO AWAY
# See make depend, above
