# toplevel makefile for jazz
# all settings are in make.env
# DO NOT EDIT THIS FILE

include make.env


DIRS = bitmaps src # doc midinetd linux

all:
	for i in $(DIRS); do (cd $$i && make all) || exit 1; done
	cp jazz.cfg src/.jazz
	for i in $(JZI_FILES); do (cp conf/$$i src/$$i); done


win:
	cd doc && make win
	cat jazz.cfg | scripts/unix2dos > mswin/jazz.cfg
	for i in $(JZI_FILES); do (cat conf/$$i | scripts/unix2dos > mswin/$$i); done

clean:
	for i in $(DIRS); do (cd $$i && make clean GUI=$(GUI)) || exit 1; done

depend:
	(cd src; make depend GUI=$(GUI))

install:
	echo please use the install-jazz script

# --------------------------------------------------------
# how to build distributions

TMPDIR=/usr/tmp
BINDIST=jazz-bin-$(REL)

SRCDIST=jazz-src-$(REL)
$(SRCDIST).tar.gz: 
	rm -rf $(SRCDIST)
	cvs -d :pserver:andreas@www.jazzware.com:/usr/local/cvs get -d $(SRCDIST) -r $(TAG) jazz
	cd $(SRCDIST) && rm -rf itsopen
	tar cvf - $(SRCDIST) | gzip -9 > $(SRCDIST).tar.gz

$(BINDIST).tar.gz: $(SRCDIST).tar.gz
	#cvs export -d $(BINDIST) -r $(TAG) jazz
	cp -r $(SRCDIST) $(BINDIST)
	-cd $(BINDIST) && find . -name CVS -exec rm -rf {} \;
	mv $(BINDIST)/src/jazz.mid $(BINDIST)/.
	cd $(BINDIST) && make GUI=$(GUI) LFLAGS="-static $(LFLAGS)"
	strip $(BINDIST)/src/$(GUI)/jazz
	cd $(BINDIST) && mv src/$(GUI)/jazz .
	cd $(BINDIST)/midinetd && make clean
	cd $(BINDIST)/doc && make dist
	cd $(BINDIST) && rm -rf itsopen
	cd $(BINDIST) && rm -rf src vc5 bitmaps mswin Makefile make.env
	cd $(BINDIST) && chmod 666 jazz.cfg
	cp $(WXDIR)/utils/wxhelp/src/wxhelp_$(GUI) $(BINDIST)/wxhelp
	strip $(BINDIST)/wxhelp
	tar cvf - $(BINDIST) | gzip -9 > $(BINDIST).tar.gz

dist: 
	rm -rf $(TMPDIR)/jazz*
	cp make.env Makefile $(TMPDIR)
	cd $(TMPDIR) && make $(SRCDIST).tar.gz
	cd $(TMPDIR) && make $(BINDIST).tar.gz

tag:
	perl -i.bak scripts/version.pl \"$(REL)\" src/about.h
	cvs commit -m.
	cvs tag -F $(TAG)

