#
#       Makefile for ispack
#

include Mkinclude

all:
	@for i in $(DIRS) ; do \
	  cd $$i/src ; \
	  echo "Making $$i/src" ; \
	  $(MAKE) ; \
	  cd ../.. ; \
	done

static: all
	$(AR) $(ARFLAGS) $(STATICLIB) */src/*.o
	$(RANLIB) $(STATICLIB)

shared: all
	$(CC) $(CFLAGS) -o $(SHAREDLIB) */src/*.o

src:
	@for i in $(DIRS) ; do \
	  cd $$i/src ; \
	  $(MAKE) src ; \
	  cd ../.. ; \
	done

pack: src
	@for i in $(DIRS) ; do \
	  echo "Packing $$i/src" ; \
	  $(CAT) $$i/src/*.f $$i/src/*.mpif >> $(PACKFILE) ; \
	done

clean:
	@for i in $(DIRS) ; do \
	  cd $$i/src ; \
	  echo "Cleaning $$i/src" ; \
	  $(MAKE) clean ; \
	  cd ../.. ; \
	done

veryclean: clean
	echo "Cleaning lib"
	$(RM) $(STATICLIB)
	$(RM) $(SHAREDLIB)
	$(RM) $(PACKFILE)
	$(RM) *~
	$(RM) */*~
	$(RM) */*/*~
	$(RM) */*/*.dat
	$(RM) */*/*.out	
	$(RM) */doc/*.dvi
	$(RM) */doc/*.log	
	$(RM) */doc/*.aux		

release:
	@r=ispack-`cat VERSION`;\
	  echo "Making release $$r";\
	  rsync -av . ../$$r/ --exclude /test --exclude /obsolete --exclude *.dat --exclude *.out  --exclude *.o --exclude *.old --exclude *.a --delete ;\
 	  cd ../$$r; make veryclean;\
	  cd ..; tar czf $$r.tar.gz $$r
