# Application makefile. 
#
#

#
# Name of the application. 
#
NAME = exampsynthpatch

#
# Source files for this application. 
#
# If you add your own SynthPatch, add it in 2 places:
#    in the MFILES list and the LDFLAGS list.
MFILES = Simplicity.m Envy.m FM.m EnvySimplified.m playscorefile2.m
HFILES = Simplicity.h Envy.h FM.h EnvySimplified.h
CFILES = 
NIBFILES =
TIFFFILES = 
PSWFILES = 
SCOREFILES = Simplicity.score Envy.score FM.score EnvySimplified.score

#
# Libraries used by this application.
#
LIBS = -lmusic_s -ldsp_s -lNeXT_s -lsys_s
#
# Flags to pass on to the compiler and linker.
#
CFLAGS=	-g 

# Here's where you put the list of non-Music Kit SynthPatches to be loaded:
LDFLAGS = -u .objc_class_name_Simplicity -u .objc_class_name_Envy -u .objc_class_name_FM -u .objc_class_name_EnvySimplified

#
# Rules.
#
SRCFILES = $(MFILES) $(HFILES) $(CFILES) $(NIBFILES) $(TIFFFILES) $(PSWFILES) $(SCOREFILES)
OBJFILES = $(MFILES:.m=.o) $(CFILES:.c=.o) $(PSWFILES:.psw=.o) 
DERIVED = $(PSWFILES:.psw=.c) 
GARBAGE = $(DERIVED) core errs 
INSTALLDIR = $(HOME)/Apps
INSTALLFLAGS = -c -s -m 755

$(NAME): $(OBJFILES) 
	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(OBJFILES) $(LIBS) 

all: $(NAME)

clean: 
	-rm -f *.o $(NAME) $(DERIVED) $(GARBAGE) 

help: 
	@echo '  make $(NAME) - to make the application'
	@echo '  make clean -    to remove all files but the source'
	@echo '  make install [DSTROOT=somepath] - to make and install the application'

installsrc:
	-rm -rf $(SRCROOT)
	mkdirs -m 755 $(SRCROOT)
	cp $(SRCFILES) Makefile README $(SRCROOT)
	chmod 444 $(SRCROOT)/*

install: $(DSTROOT)$(INSTALLDIR) all
	install $(INSTALLFLAGS) $(NAME) $(DSTROOT)$(INSTALLDIR)

$(DSTROOT)$(INSTALLDIR):
	mkdirs $(DSTROOT)$(INSTALLDIR)
