# This Makefile is only for kernel docs-2.4-ja  -*-makefile-*-

include ../../JF.conf

ARCHIVENAME	= kernel-docs-2.4
ARCHIVEFILE	= $(ARCHIVENAME)-current.tar.gz
TEMPLATE	= support/template.m4
KDOCSCRIPT	= support/kdoc.pl
TREE-SCRIPT	= support/tree.pl
TREE-TMPL	= support/tree-template.m4
TOPDIR		= support/topdir.m4
INFO_MODIFIED   = support/info-modified

SRC := $(shell find . -name '*.info' -type f | sed -e 's,^\./,,' -e 's,\.info$$,,' | sort)

REMOVEDSRC =

IMGSRC	= support/tree_img/folder.open.gif support/tree_img/generic_file.gif

HTMLFILES = $(SRC:=.html)
INFOFILES = $(SRC:=.info)
INDEXHTML = index.html
TOPDIRHTML = topdir.html

all: $(HTMLFILES) $(TOPDIRHTML) $(INDEXHTML) $(ARCHIVEFILE) touch_info

$(ARCHIVEFILE): $(INDEXHTML) $(SRC)
	rm -rf $(ARCHIVENAME); \
	mkdir -p $(ARCHIVENAME); \
	rm -f $(ARCHIVEFILE); \
	tar cf - $(SRC) | ( cd $(ARCHIVENAME); tar xf -); \
	echo "== Making archive of kernel docs: $(ARCHIVENAME).tar.gz =="; \
	tar zcf $(ARCHIVEFILE) $(ARCHIVENAME); \

$(HTMLFILES): $(TEMPLATE) $(KDOCSCRIPT) $(SRC)
#	rm -f $(REMOVEDSRC:=.html)
	@for doc in $(SRC) ; do \
	if [ ! -r $${doc}.html -o $${doc} -nt $${doc}.html \
	       -o $${doc}.info -nt $${doc}.html ]; then \
		echo "== creating $${doc}.html..." ;\
		$(KDOCSCRIPT) $(TEMPLATE) $${doc}.info ;\
	fi; done;


$(INDEXHTML): $(INFOFILES) $(TREE-SCRIPT) $(TREE-TMPL)
	rm -f $@
	$(TREE-SCRIPT) $(CURDIR) | m4 -P | nkf -w > $@

$(TOPDIRHTML): $(TOPDIR)
	m4 -P $(TOPDIR) > $@

touch_info:
	support/chkinfo.sh $(INFO_MODIFIED)

$(INFO_MODIFIED): support/chkinfo.sh touch_info


install: $(HTMLFILES) $(INDEXHTML) $(ARCHIVEFILE) install-www install-ftp

ifneq ($(INSTALL_WWW), yes)
install-www:
else
install-www: $(DEST_WWW_HTML)/$(ARCHIVEFILE)
endif

ifneq ($(INSTALL_FTP), yes)
install-ftp:
else
install-ftp: $(FTP_ROOT)/$(ARCHIVEFILE)
endif


$(DEST_WWW_HTML)/$(ARCHIVEFILE): $(ARCHIVEFILE)
	mkdir -p $(@D)
	rm -rf $(@D)/$(ARCHIVENAME)
	gzip -dc $< | ( cd $(@D); tar xvf - )
	tar cf - $(HTMLFILES) $(INDEXHTML) | \
	(cd $(@D)/$(ARCHIVENAME); tar xvf -)
	$(INSTALL) $< $@
	mkdir -p $(@D)/../images
	cp -p $(IMGSRC) $(@D)/../images

$(FTP_ROOT)/$(ARCHIVEFILE): $(ARCHIVEFILE)
	mkdir -p $(@D)
	$(INSTALL) $< $@

clean:
	rm -f $(ARCHIVEFILE)
	rm -rf $(ARCHIVENAME)
	rm -f `find . -name "*.html" -print`

# eof
