jw-pkg/make/doxygen.mk
Jan Lindemann fa2dc47678 doxygen.mk: Improve upload support
- Add support for __PROJECT_TOPDIR__ pattern substitution
  - Fix upload url
  - Create files with umask 0022 to prevent them from ending up
    online as 0660
2010-08-02 17:35:10 +00:00

80 lines
1.9 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
all: html
install: install.done
distclean: clean
clean: clean.doxygen
doc: all
upload: upload.done
html: doxygen.done cpfiles.done
%: %.tmpl
cat $< \
| sed "s/__VERSION__/$(VERSION)/" \
| sed "s/__PROJECT__/$(PROJECT)/" \
| sed "s/__PROJECT_CAPNAME__/$(PROJECT_CAPNAME)/" \
| sed "s/__OUTPUT_DIR__/$(OUTPUT_DIR)/" \
| sed "s%__PROJECT_TOPDIR__%$(TOPDIR)%" \
> $@
doxygen.done: $(UNTEMPLATED)
umask 022; doxygen $(DOXYGEN_CONF)
touch $@
cpfiles.done: doxygen.done $(DOC_FILES)
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