#!/usr/bin/make

NAME="airoscript-ng"
name=$(NAME)
# Binary install programs
INSTALL = install -c
INSTALLDATA = install -c -m 644
DESTDIR =

# Destdirs. 
	# prefixes
data=$(DESTDIR)/$(prefix)/share

	# main
bindir=$(DESTDIR)/$(prefix)/sbin/
datadir=$(data)/$(NAME)/
picdir=/usr/share/pixmaps/
appdir=/usr/share/applications/
docdir=$(data)/doc/$(NAME)
etcdir=$(DESTDIR)/etc
locale=$(data)/locale
mandir=$(data)/man
srcdir=./src

install: installdirs\
	 install-binary \
	 install-docs \
	 install-locale \
	 install-desktop \

installdirs:
	@$(SHELL) ./.mkinstalldirs $(bindir) $(datadir) \
        			$(docdir)/html/images $(etcdir) \
        			$(docdir)/html/css \
                    $(mandir)/man1 $(locale) \
					$(datadir)/themes \
					$(datadir)/plugins \
					$(datadir)/airosperl \
					$(docdir)/tools
	
install-binary:
	@echo "Installing airoscript"
	@$(INSTALL) $(srcdir)/airoscript-ng $(bindir)/$(name)
	@$(INSTALL) $(srcdir)/airoscript-ng.conf $(etcdir)
	@$(INSTALL) $(srcdir)/airoscript-ng_advanced.conf $(etcdir)
	@cp -r $(srcdir)/functions/* $(datadir)
	@$(INSTALLDATA) $(srcdir)/screenrc.airoscript $(etcdir)
	@echo "Installing themes"
	@$(INSTALLDATA) $(srcdir)/themes/*.theme $(datadir)/themes
	@echo "Installing plugins"
	@$(INSTALLDATA) $(srcdir)/plugins/* $(datadir)/plugins

install-docs:
	@echo "Installing documentation"
	@echo "\t Installing standard documentation"
	@for i in doc/* ; do if [ -d $$i ] && [ $$i != "." ] && [ $$i != ".." ]; then make -s -C $$i docdir="$(docdir)" INSTALLDATA="$(INSTALLDATA)" ; else $(INSTALLDATA) $$i $(docdir) ;fi ; done
	@# This will install any manpage on manpages dir. (Just man1 manpages)
	@echo  "\t Installing manpages"
	@for i in $(srcdir)/*.1 ; do $(INSTALLDATA) $$i $(mandir)/man1/ ; done
	@echo "\t Installing artwork"
	@install src/airoscriptlogo_med.png $(docdir)/airoscript-ng.png

install-desktop:
	@install aircrack-airoscript.desktop $(appdir)/
	@install src/airoscriptlogo_med.png $(picdir)/airoscript-ng.png
	@xdg-desktop-menu install $(appdir)/aircrack-airoscript.desktop

generate-locale:
	@for i in $(srcdir)/locale/* ; do \
		if [ -d $$i ] && [ $$i != "." ] && [ $$i != ".." ]; then \
			make -s -C $$i &> /dev/null ; \
		fi ; \
	done


install-locale: generate-locale
	@echo "Installing locales"
	@for i in $(srcdir)/locale/* ; do \
		if [ -d $$i ] && [ $$i != "." ] && [ $$i != ".." ]; then \
			make -s -C $$i install localedir="$(locale)" INSTALLDATA="$(INSTALLDATA)" ; \
		fi ; \
	done

uninstall: 
	@rm  $(bindir)/$(name)
	@rm $(etcdir)/airoscript-ng.conf
	@rm -r $(datadir)
	@rm -r $(docdir)
	@for i in $(srcdir)/*.1 ; do rm $(mandir)/man1/$$i ; done
	@for i in $(srcdir)/locale/* ; do \
		if [ -d $$i ] && [ $$i != "." ] && [ $$i != ".." ]; then \
			make -s -C $$i uninstall localedir=$(locale) ; \
		fi ; \
	done
	@echo "Uninstalled succesfully"
	

all: install 

.PHONY: all install uninstall slackware debian-package airosperl locale manpages
