DOCUMENT_NAMES=asymmetrie chaosradio copyleft intro mailserviceanbieter mozilla outlook pgp_vs_gnupg senselab thunderbird thunderbirdnutzung warumverschluesselung wiefunktionierts winpt

LYX_FILES := $(foreach dir,$(DOCUMENT_NAMES),$(dir)/$(dir).lyx)
TEX_FILES := $(patsubst %.lyx,%.tex,$(LYX_FILES))
HTML_FILES := $(patsubst %.lyx,%.html,$(LYX_FILES))
TARGET_FILES := $(foreach dir,$(DOCUMENT_NAMES),_output/$(dir).html)
ASC_FILES := $(wildcard *.asc)
LINE_STATUS = offline

LATEX2HTMLPREFIX := -no_auto_link -split 0 -no_navigation -no_subdir -dir _output


.PHONY : clean online offline clean-targets install

# default target (offline)
all: $(HTML_FILES)

install: $(TARGET_FILES)
    ifndef CCD_BUILD_DIR
      $(error "CCD_BUILD_DIR must be defined!")
    endif
	@if [ ! -e "$(CCD_BUILD_DIR)" ] ; \
		then	echo "CCD_BUILD_DIR ($(CCD_BUILD_DIR)) does not exist!" ; \
			exit 1 ; \
	  fi
	@cp -r _output/* "$(CCD_BUILD_DIR)/doku"


clean-targets:
	-rm $(TARGET_FILES) 2>/dev/null

online:	 LINE_STATUS=online
offline: LINE_STATUS=offline
online offline: clean-targets $(TARGET_FILES)

$(TARGET_FILES): $(HTML_FILES) $(ASC_FILES)
	cat header.asc nav.$(LINE_STATUS).asc $(notdir $(basename $@))/$(notdir $@) footer.asc >$@


# create tex files from lyx
$(TEX_FILES): %.tex: %.lyx
	lyx -e latex $*.lyx


# original html-files, as they are created by lyx
$(HTML_FILES): %.html: %.tex 
	@-[ ! -e "_output" ] && mkdir _output
	latex2html $(LATEX2HTMLPREFIX) $*.tex
	# die html-Datei wurde jetzt im _output-Verzeichnis erstellt (inklusive Bilder)
	-rm _output/WARNINGS $*-labels.pl $*-internals.pl $*.log 2>/dev/null
	-rm _output/$(notdir $(basename $@)).css 2>/dev/null
	-rm _output/images.aux _output/images.log _output/images.out _output/images.pl _output/images.text _output/img?.old _output/labels.pl _output/missfont.log _output/images.tex 2>/dev/null
	mv _output/$(shell dirname $@).html $@
	python mod_html_files.py $@


clean:
	-rm $(TEX_FILES) 2>/dev/null
	-rm $(HTML_FILES) 2>/dev/null
	-rm -r _output 2>/dev/null
	-rm $(foreach dir,$(DOCUMENT_NAMES),$(dir)/WARNINGS) 2>/dev/null
	-rm $(foreach dir,$(DOCUMENT_NAMES),$(dir)/$(dir).emergency) 2>/dev/null