SHELL	= /bin/sh
CC		= gcc
DIRS	= bin

all:	$(DIRS) compile

static:	$(DIRS) compile-static

$(DIRS):
	mkdir -p $@

compile: no-perl mactime sorter

compile-static: no-perl-static mactime sorter

no-perl:
	cd src/misc; make "CC=$(CC)" MAKELEVEL=
	cd src/hashtools; make "CC=$(CC)" MAKELEVEL=
	cd src/fstools; make "CC=$(CC)" MAKELEVEL=
	cd src/mmtools; make "CC=$(CC)" MAKELEVEL=
	cd src/file; CC="$(CC)" sh ./install

no-perl-static:
	cd src/misc; make "CC=$(CC)" OPT=-static MAKELEVEL=
	cd src/hashtools; make "CC=$(CC)" OPT=-static MAKELEVEL= 
	cd src/fstools; make "CC=$(CC)" OPT=-static MAKELEVEL= 
	cd src/mmtools; make "CC=$(CC)" OPT=-static MAKELEVEL= 
	cd src/file; sh ./install
	cd src/file; CC="$(CC)" sh ./install


sorter:
	cd src/sorter; sh ./install

mactime:
	cd src/timeline; make 


clean: 
	cd src/hashtools; make $@ "CC=$(CC)" MAKELEVEL=
	cd src/misc; make $@ "CC=$(CC)" MAKELEVEL=
	cd src/fstools; make $@ "CC=$(CC)" MAKELEVEL=
	cd src/mmtools; make $@ "CC=$(CC)" MAKELEVEL=
	cd src/file; sh ./clean
	cd src/timeline; make $@
	cd src/sorter; sh ./clean
	rm -f bin/*core
	rm -f bin/.gdb_history
	find . -name ".*" | grep -v "cvsignore"
	cat patchlevel

tidy: clean
	rm -f *core *.old *.bak *.orig .nfs* .pure *- make.* *.tmp* \
	*/*/*.old */*/*.bak */*/*.orig */*/.nfs* */*/.pure */*/*- */*/make.* \
	*/*.old */*.bak */*.orig */.nfs* */.pure */*- */make.* typescript
	find . -type f -print | xargs chmod 644
	find . -type d -print | xargs chmod 755

