NEDIT_MK = $(NEDIT_HOME)/macro-kit/
NEDIT_AUTOLOAD = $(NEDIT_HOME)/autoload.nm
NEDIT_BIN=nedit
LOAD_MK=./install/load_mk.nm
INSTALL_TXT=./install/install-help.txt
MK_IMPORT=./install/macro-kit.rc

first:

install: check_install
	# if autoload.nm doesn't exist, create it
	@if ! test -f $(NEDIT_AUTOLOAD) ; then ( echo "$(NEDIT_AUTOLOAD) does not exist. I create it for you."; touch $(NEDIT_AUTOLOAD); ) fi;
	@if ! test -f $(NEDIT_AUTOLOAD) ; then ( echo "Error: impossible to create $(NEDIT_AUTOLOAD)" ; test 0 -eq 1; ) fi;
	
	# check if mk.nm is allready loaded in autoload.nm
	@if test 0 -lt `grep -E '^load_macro_file\(.*mk.nm"\)' $(NEDIT_AUTOLOAD) | wc -l` ; then ( echo "Warning: macro-kit seems to be allready loaded from $(NEDIT_AUTOLOAD)" ; ) else ( mv -f $(NEDIT_AUTOLOAD) $(NEDIT_AUTOLOAD).mk_save ; ( cat $(NEDIT_AUTOLOAD).mk_save ; cat $(LOAD_MK) | sed s/NEDIT_HOME_SED/`echo "$(NEDIT_HOME)" | sed s/'\/'/'\\\\\/'/g`/ ) > $(NEDIT_AUTOLOAD); ) fi;
	
	# copy directory
	@cp -r ./macro $(NEDIT_MK)/macro
	@if test -d $(NEDIT_MK)/customize ; then ( echo "You allready have a $(NEDIT_MK)/customize directory. I don't install the default one."; ) else ( cp -r ./customize $(NEDIT_MK)/customize ;) fi;
	
	# import stuff
	@$(NEDIT_BIN) -import $(MK_IMPORT) $(INSTALL_TXT)
	
	
uninstall: check_uninstall
	# remove macro
	@if test -d $(NEDIT_MK)/macro ; then ( rm -fr $(NEDIT_MK)/macro; ) fi;
	
	# remove some lines in autoload.nm
	@if test -f $(NEDIT_HOME)/autoload.nm ; then ( mv $(NEDIT_HOME)/autoload.nm $(NEDIT_HOME)/autoload.nm.save ; ./install/extract.py -auto $(NEDIT_HOME)/autoload.nm.save > $(NEDIT_HOME)/autoload.nm ; ) fi;
	
	# remove some lines in nedit.rc
	@if test -f $(NEDIT_HOME)/nedit.rc ; then ( mv $(NEDIT_HOME)/nedit.rc $(NEDIT_HOME)/nedit.rc.save ; ./install/extract.py -noMK $(NEDIT_HOME)/nedit.rc.save > $(NEDIT_HOME)/nedit.rc ; ) fi;

	
check_install: check_dir check_version
	# create NEDIT_HOME if it doesn't exist
	@if ! test -d $(NEDIT_HOME) ; then ( echo "$(NEDIT_HOME) does not exist, I create it for you"; mkdir $(NEDIT_HOME); ) fi;
	
	# create NEDIT_MK if it doesn't exist
	@if ! test -d $(NEDIT_MK) ; then ( mkdir $(NEDIT_MK) ; ) fi;
	
	# ask to uninstall
	@if test -d $(NEDIT_MK)/macro ; then ( echo "$(NEDIT_MK)/macro exist. Please uninstall current version of Macro-Kit (make uninstall)." ; test 0 -eq 1; ) fi;
	

check_uninstall: check_dir check_version
	# check if NEDIT_HOME exists
	@if ! test -d $(NEDIT_HOME) ; then ( echo "$(NEDIT_HOME) does not exist, I create it for you"; test 0 -eq 1; ) fi;
	# check if NEDIT_MK exists and remove it
	@if ! test -d $(NEDIT_MK) ; then ( echo "Error: $(NEDIT_MK) does not  exist."; test 0 -eq 1; ) else ( if test -d $(NEDIT_HOME)/macro-kit.save ; then ( rm -rf $(NEDIT_HOME)/macro-kit.save; ) fi; cp -rf $(NEDIT_MK) $(NEDIT_HOME)/macro-kit.save ; ) fi;


check_version: force
	# check nedit version
	@if test -f $(NEDIT_HOME)/nedit.rc ; then ( if ! test `grep -E "nedit\.fileVersion: (5\.[4|5|6|7|8|9](\.[0-9]))?" $(NEDIT_HOME)/nedit.rc | wc -l` == "1" ; then ( echo "Wrong NEdit version."; test 0 -eq 1;) fi; ) else ( echo "Impossible to check nedit version... I hope it's superior to 5.4." ;) fi;

check_dir: force
	# check NEDIT_HOME variable
	@if test -z $(NEDIT_HOME) ; then ( echo "The variable NEDIT_HOME is not set. "; test 0 -eq 1; ) fi;
	@if ! test `echo "$(NEDIT_HOME)" | grep -E ^/ | wc -l` -eq 1 ; then ( echo "The variable NEDIT_HOME is not valid"; test 0 -eq 1; ) fi;

force:
