jw-pkg/make/doxygen.mk
2012-02-04 10:59:02 +00:00

92 lines
2.3 KiB
Makefile

include $(MODDIR)/make/defs.mk
# broken by IMAGEDIR in rpmbuild
ifeq ($(DEVELOPMENT),true)
GENERATE_DOXYGEN ?= true
endif
ifneq ($(GENERATE_DOXYGEN),true)
include $(MODDIR)/make/dummy.mk
else
UPLOAD_FILE_MODE ?= 644
UPLOAD_DIR_MODE ?= 755
include $(MODDIR)/make/upload-defs.mk
UPLOAD_URL ?= $(UPLOAD_URL_DEVEL_DOC)/$(PROJECT)/doxygen/:$(UPLOAD_FILE_MODE):$(UPLOAD_DIR_MODE):$(UPLOAD_USER).$(UPLOAD_GROUP)
UNTEMPLATED = $(patsubst %.tmpl,%,$(wildcard *.tmpl))
OUTPUT_DIR ?= html
INSTALL_DOXYGEN_DIR ?= $(DOC_PREFIX)/devel
DOC_FILES = $(IMAGEDIR)/jannet_08.png
DOXYGEN_CONF ?= doxygen.conf
# replaced pattern defaults
DOC_FILE_PATTERNS ?= *.h
DOC_INPUT_DIRS ?= $(TOPDIR)/include
DOC_SRC_IS_JAVA ?= NO
DOC_EXCLUDE_FILES ?=
DOC_INCLUDE_PATH ?=
all: html
install: install.done
distclean: clean
clean: clean.doxygen
doc: all
upload: upload.done
html: doxygen.done cpfiles.done
%: %.tmpl
$(SED) " \
s/__VERSION__/$(DIST_VERSION)/; \
s/__PROJECT__/$(PROJECT)/; \
s/__PROJECT_CAPNAME__/$(PROJECT_CAPNAME)/; \
s/__OUTPUT_DIR__/$(OUTPUT_DIR)/; \
s%__PROJECT_TOPDIR__%$(TOPDIR)%; \
s%__FILE_PATTERNS__%$(DOC_FILE_PATTERNS)%; \
s%__INPUT_DIRS__%$(DOC_INPUT_DIRS)%; \
s%__SRC_IS_JAVA__%$(DOC_SRC_IS_JAVA)%; \
s%__EXCLUDE_FILES__%$(DOC_EXCLUDE_FILES)%; \
s%__INCLUDE_PATH__%$(DOC_INCLUDE_PATH)%; \
" $< > $@
doxygen.done: $(UNTEMPLATED)
umask 022; doxygen $(DOXYGEN_CONF)
touch $@
cpfiles.done: doxygen.done $(DOC_FILES)
umask 022; cp $(DOC_FILES) $(OUTPUT_DIR)
touch $@
doc.done: doxygen.done cpfiles.done
touch $@
view: doc.done
konqueror $(OUTPUT_DIR)/index.html
upload.done: doxygen.done cpfiles.done
upload.sh $(OUTPUT_DIR)/ $(UPLOAD_URL)
clean.doxygen:
rm -rf $(OUTPUT_DIR) *.done $(UNTEMPLATED)
inst-dir.done:
$(INSTALL) -d -o $(DOCDIROWNER) -g $(DOCDIRGROUP) -m $(DOCDIRMODE) $(INSTALL_DOXYGEN_DIR)
touch $@
install.done: doxygen.done inst-dir.done
make install.doxygen
touch $@
install.doxygen:
$(INSTALL) -o $(DOCOWNER) -g $(DOCGROUP) -m $(DOCMODE) \
$(wildcard $(OUTPUT_DIR)/*.html) \
$(wildcard $(OUTPUT_DIR)/*.gif) \
$(wildcard $(OUTPUT_DIR)/*.png) \
$(wildcard $(OUTPUT_DIR)/*.css) \
$(INSTALL_DOXYGEN_DIR)
endif