# Ordbanken – Skript og fullformsordlister for oppslag i Norsk ordbank.
#
# Copyright © 2008, 2009 Karl Ove Hufthammer
# karl@huftis.org
#
# Copyright © 2008, 2009 Karl Ove Hufthammer <karl@huftis.org>.
#
#     This file is part of Ordbanken.
#
#     Ordbanken is free software: you can redistribute it and/or modify
#     it under the terms of the GNU General Public License as published by
#     the Free Software Foundation, either version 3 of the License, or
#     (at your option) any later version.
#
#     This program is distributed in the hope that it will be useful,
#     but WITHOUT ANY WARRANTY; without even the implied warranty of
#     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#     GNU General Public License for more details.
#
#     You should have received a copy of the GNU General Public License
#     along with this program.  If not, see <http://www.gnu.org/licenses/>.

# Toppmappe for installering (tom som standard):
DESTDIR ?=

# Kva undermappe under DESTDIR ting skal installerast:
PREFIX ?= /usr/local

# Kor ting skal installerast:
INST_PREFIX=$(DESTDIR)$(PREFIX)

# Mappeadressa brukt i skripta frå før:
BUILT_IN_PREFIX=/usr/local

# Kor datafilene skal installerast:
DATA_PREFIX=$(INST_PREFIX)/share/ordbanken

# Kor dokumentasjonsfilene skal installerast:
DOC_PREFIX=$(INST_PREFIX)/share/doc/packages/ordbanken

# Namna på ordlistefilene:
OPT_FILES=$(wildcard *.dat)
DICT_FILES=$(wildcard fullform_*.txt)
DICT_TO_OPT=$(DICT_FILES:fullform_%.txt=fullform_%.dat)

# Namna på dei ulike tekstfilene som skal installerast:
DATA_FILES=fullform_bm.dat fullform_nn.dat
DOC_FILES=dataformat.txt gpl.txt opphavsrett.txt paradigme_bm.txt paradigme_nn.txt


# «make» utan argument klargjer ordlistefilene.
all: $(OPT_FILES) $(DICT_TO_OPT) ordbanken.plasmoid

# Klargjer ordlistefilene.
fullform_%.dat : fullform_%.txt skript/optimer
	@echo
	@echo "Klargjer ordlistefilene."
	@echo
	@./skript/optimer $<

# Klargjer plasmoiden.
ordbanken.plasmoid : plasmoide/metadata.desktop plasmoide/contents/code/main.py
	@echo
	@echo "Klargjer plasmoide."
	@echo
	@rm -f ordbanken.plasmoid
	@cd plasmoide && zip -q -r ../ordbanken.plasmoid . -x \*.svn\*

# Installer ordbankskripta og fullformsordlistene:
install: all
	@echo
	@echo "Installerer Ordbanken til mappa «$(INST_PREFIX)»."
	@echo
	@mkdir -p $(INST_PREFIX)/bin
	@echo 'skript/ordbanken -> '$(INST_PREFIX)/bin/ordbanken
	@sed s%$(BUILT_IN_PREFIX)%$(PREFIX)% skript/ordbanken > $(INST_PREFIX)/bin/ordbanken
	@chmod 755 $(INST_PREFIX)/bin/ordbanken
	@mkdir -p $(DATA_PREFIX)
	@for fil in $(DATA_FILES); \
	do\
	  echo $$fil' -> '"$(DATA_PREFIX)/$$fil" ; \
	  cp -f $$fil "$(DATA_PREFIX)/$$fil" ; \
	done
	@mkdir -p $(DOC_PREFIX)
	@for fil in $(DOC_FILES); \
	do\
	  echo $$fil' -> '"$(DOC_PREFIX)/$$fil" ; \
	  cp -f $$fil "$(DOC_PREFIX)/$$fil" ; \
	done
	@mkdir -p ${DESTDIR}/etc/bash_completion.d
	@echo 'skript/bash_completion_ordbanken -> '${DESTDIR}/etc/bash_completion.d/ordbanken
	@sed s%$(BUILT_IN_PREFIX)%$(PREFIX)% skript/bash_completion_ordbanken > ${DESTDIR}/etc/bash_completion.d/ordbanken
	@mkdir -p $(INST_PREFIX)/share/icons/hicolor
	@chmod 755 $(INST_PREFIX)/share/icons/hicolor
	@find icons -name 'ordbanken.???' | while read fil; \
	do\
	  echo $$fil' -> '"$(INST_PREFIX)/share/$$fil" ; \
		mkdir -p $$(dirname "$(INST_PREFIX)/share/$$fil") ; \
		chmod 755 $$(dirname "$(INST_PREFIX)/share/$$fil") ; \
	  cp -Rf $$fil "$(INST_PREFIX)/share/$$fil" ; \
	done
	@echo


.PHONY clean:
	@echo
	@echo "Slettar alle .dat-filene (klargjorde ordlistefiler)."
	@rm -f *.dat
	@echo "Slettar plasmoide-pakken."
	@rm -f plasmoide.zip
	@echo

.PHONY releaseclean: clean
.PHONY distclean: clean


# Avinstaller ordbankskripta og fullformsordlistene.
# Sjå til at PREFIX-variabelen er lik som han var
# når du installerte.
uninstall:
	@echo
	@echo "Avinstallerer ordbanken frå «$(INST_PREFIX)»."
	@echo
	@echo "Fjernar programfila $(INST_PREFIX)/bin/ordbanken"
	@rm -f $(INST_PREFIX)/bin/ordbanken
	@echo "Fjernar autofullføringsskriptet /etc/bash_completion.d/ordbanken"
	@rm -f ${DESTDIR}/etc/bash_completion.d/ordbanken
	@echo "Fjernar datafilene i $(DATA_PREFIX)"
	@rm -rf $(DATA_PREFIX)
	@echo "Fjernar dokumentasjonsfilene i $(DOC_PREFIX)"
	@rm -rf $(DOC_PREFIX)
	@echo "Fjernar ikona under $(INST_PREFIX)/share/icons/hicolor"
	@echo "Fjernar ikona under $(INST_PREFIX)/share/icons/hicolor"
	@rm -rf $(INST_PREFIX)/share/icons/hicolor/*/*/ordbanken.???
	@rm -rf $(INST_PREFIX)/share/icons/hicolor/*/*/*/*/ordbanken.???
	@echo
