# Makefile for Intel Fortran ver.6 postinstall procedure
#
# 2002/05/04 S.Takehiro
# 2003/08/18 M.Odaka
# 2003/09/19 M.Odaka
# 2004/03/16 M.Odaka
# 2005/08/08 M.Nakano
#
#  This makefile links executables, library files, and manuals 
#  to the oridinal desitination of the Debian/GNU Linux system. 
# 
#  Procedure
#    1. Install the intel-ifc rpm file by converting deb with alien.
#    2. Check src directories and install destinaton below.
#    3. Execute "make check" to avoid overwriting existing files.
#    4. Execute "make install"
#    5. Execute "make install-doc" if you want to make Debian document directory
#
#  Src directories
#
SRCDIR=/opt/intel/fc/9.1.036
BINSRC=$(SRCDIR)/bin
LIBSRC=$(SRCDIR)/lib
MANSRC=$(SRCDIR)/man
DOCSRC=$(SRCDIR)/doc
INCSRC=$(SRCDIR)/include

MANSUBDIRS=man1
#
#  Install Destination
#
DESTDIR=./debian/tmp
#DESTDIR=
#
DESTBIN=$(DESTDIR)/usr/bin
DESTLIB=$(DESTDIR)/usr/lib
DESTMAN=$(DESTDIR)/usr/share/man
DESTDOC=$(DESTDIR)/usr/share/doc/ifc
DESTINC=$(DESTDIR)/usr/include/ifc
#
#  Do not change below
#
check::	check-bin check-lib check-man check-doc check-inc

check-bin:
	@echo "Checking binary files"
	@for i in `ls $(BINSRC)` ; do \
	    if [ -x $(BINSRC)/$$i ]; then \
		if [ -e $(DESTBIN)/$$i ] ; then \
		    echo "$(DESTBIN)/$$i already exists" ;\
		fi ;\
	    fi ;\
	done

check-lib:
	@echo "Checking library files"
	@for i in `ls $(LIBSRC)` ; do \
	    if [ -x $(LIBSRC)/$$i ]; then \
		if [ -e $(DESTLIB)/$$i ]; then \
		    echo "$(DESTLIB)/$${i} already exists" ; \
		fi ;\
	    fi ;\
	done

check-man:
	@echo "Checking man files"
	@for j in $(MANSUBDIRS) ; do \
	     for i in `ls $(MANSRC)/$$j` ; do \
		if [ -e $(DESTMAN)/$$j/$$i ]; then \
		    echo "$(DESTMAN)/$$j/$$i already exists"; \
		fi ;\
	     done; \
	done

check-doc:
	@echo "Checking doc files"
	@if [ -e $(DESTDOC) ]; then \
		echo $(DESTDOC) already exists ;\
	fi

check-inc:
	@echo "Checking include files"
	@for i in `ls $(INCSRC)` ; do \
	    if [ -x $(INCSRC)/$$i ]; then \
		if [ -e $(DESTINC)/$$i ]; then \
		    echo "$(DESTINC)/$${i} already exists" ; \
		fi ;\
	    fi ;\
	done


install:: install-bin install-lib install-man install-inc #install-doc 

install-bin:
	@echo "Linking binary files"
	@for i in `ls $(BINSRC)` ; do \
	    if [ -x $(BINSRC)/$$i ]; then \
		ln -s $(BINSRC)/$$i $(DESTBIN)/$${i}; \
	    fi ;\
	done

install-lib:
	@echo "Linking library files"
	@for i in `ls $(LIBSRC)` ; do \
	    if [ -x $(LIBSRC)/$$i ]; then \
		ln -s $(LIBSRC)/$$i $(DESTLIB)/$${i}; \
	    fi ;\
	done
	ln -s $(LIBSRC)/ifcore_msg.cat $(DESTLIB)/ifcore_msg.cat

install-man:
	@echo "Linking man files"
	@for j in $(MANSUBDIRS) ; do \
	     for i in `ls $(MANSRC)/$$j` ; do \
		ln -s $(MANSRC)/$$j/$$i $(DESTMAN)/$$j/$$i ; \
	     done; \
	done

install-doc:
	@echo "Linking doc files"
	if [ ! -d $(DESTDOC) ]; then \
		mkdir $(DESTDOC) ;\
	fi
	@for i in `ls $(DOCSRC)` ; do \
		ln -s $(DOCSRC)/$$i $(DESTDOC)/$$i ; \
	done

install-inc:
	@echo "Linking include files"
	if [ ! -d $(DESTINC) ]; then \
		mkdir $(DESTINC) ;\
	fi
	@for i in `ls $(INCSRC)` ; do \
	    if [ -f $(INCSRC)/$$i ]; then \
		ln -s $(INCSRC)/$$i $(DESTINC)/$${i}; \
	    fi ;\
	done



uninstall:: uninstall-bin uninstall-lib uninstall-man uninstall-inc # uninstall-doc 

uninstall-bin:
	@echo "Uninstall binary files"
	@for i in `ls $(BINSRC)` ; do \
	    if [ -x $(BINSRC)/$$i ]; then \
		$(RM) $(DESTBIN)/$${i}; \
	    fi ;\
	done

uninstall-lib:
	@echo "Uninstall library files"
	@for i in `ls $(LIBSRC)` ; do \
	    if [ -x $(LIBSRC)/$$i ]; then \
		$(RM) $(DESTLIB)/$${i}; \
	    fi ;\
	done

uninstall-man:
	@echo "Uninstall man files"
	@for j in $(MANSUBDIRS) ; do \
	     for i in `ls $(MANSRC)/$$j` ; do \
		$(RM) $(DESTMAN)/$$j/$$i ; \
	     done; \
	done

uninstall-doc:
	@echo "Uninstall doc files"
	@for i in `ls $(DOCSRC)` ; do \
		$(RM) $(DESTDOC)/$$i ; \
	done
	rmdir $(DESTDOC)

uninstall-inc:
	@echo "Uninstall include files"
	@for i in `ls $(INCSRC)` ; do \
	    if [ -f $(INCSRC)/$$i ]; then \
		$(RM) $(DESTINC)/$${i}; \
	    fi ;\
	done
	rmdir $(DESTINC)


clean:
	-$(RM) *~ 
