# GSI - general sound interface
#
# Copyright (C) 1998 W.H.Scholten
#
# Makefile for gsiplay


# ** Defines (USE_GUS_SYNTH, USE_OPL3_SYNTH)
DEFINES=-DUSE_SOUND -DUSE_OSS

# ** Various
INCLUDES=-I/usr/local/include -I..

CFLAGS = -O2 -fomit-frame-pointer -DDEBUG -g

# ** Now together
ALL_CFLAGS=$(CFLAGS) $(DEFINES) $(INCLUDES)



INSTALL_DIR=/usr/local/bin
INSTALL_BASE=/usr/local

GSI_SERVER	= gsiplay
GSI_SERVER_OBJS	= main.o sound.o
#GSI_SERVER_OBJS	= gsi_server.o gsi_midi.o gsi_patchload_gus.o gsi_patchload_opl3.o


INSTALL_FILE=$(INSTALL_DIR)/$(GSI_SERVER)

# ** Targets:
all:	.depend $(GSI_SERVER)

$(GSI_SERVER): .depend $(GSI_SERVER_OBJS)
	$(CC) -o $(GSI_SERVER) $(GSI_SERVER_OBJS) -lm -lcurses

strip:	$(GSI_SERVER)
	strip --strip-unneeded -R .note -R .comment $(GSI_SERVER)

clean:
	rm -f $(GSI_SERVER) *.o *~ .depend

install: $(GSI_SERVER) $(INSTALL_FILE) install.man
#	install.man

#	cp $(GSI_SERVER) $(INSTALL_DIR)

$(INSTALL_FILE): $(GSI_SERVER)
	cp $(GSI_SERVER) $(INSTALL_FILE)

install.man:
#	cp doc/*.3 $(INSTALL_BASE)/man/man3/

install.header:
	mkdir -p $(INSTALL_BASE)/gsi/
	cp *.h *.e *interface*  $(INSTALL_BASE)/include/gsi/



ifeq (.depend, $(wildcard .depend))
.depend depend dep:
	for i in *.c; do $(CC) -M $(CFLAGS) $(INCLUDES) -I/usr/X11R6/include $$i; done >.depend

include .depend
else
depend dep:
	for i in *.cc; do $(CC) -M $(CFLAGS) $(INCLUDES) -I/usr/X11R6/include  $$i; done >.depend

.depend:
	$(MAKE) depend
	@exit 0
endif


# ------------------------------------------------------------------
#  Implicit rules
# ------------------------------------------------------------------
# Compile C files to object files.
%.o: %.c
	$(CC) $(ALL_CFLAGS) -c -o $(addprefix $(dir $<), $(notdir $@)) $<

# Compile assembler files to object files.
%.s: %.c
	$(CC) $(ALL_CFLAGS) -S -o $(addprefix $(dir $<), $(notdir $@)) $<

# Compile C++ files to object files
%.o: %.cc
	$(CC) $(ALL_CFLAGS) -c -o $(addprefix $(dir $<), $(notdir $@)) $<
#	g++ $(ALL_CFLAGS)   -c -o $(addprefix $(dir $<), $(notdir $@)) $<
