Update of /cvsroot/libfunutil/libfunutil/toc/make
In directory sc8-pr-cvs1:/tmp/cvs-serv32544/toc/make
Added Files:
DOXYGEN.make NAMESPACE.make
Log Message:
egg
--- NEW FILE: DOXYGEN.make ---
#!/do/not/make
# a (big) snippet to build API docs using doxygen
# Much of this process was written by Rusty Ballinger.
#
# Edit the file Doxyfile template, Doxyfile.at, using
# @at-token@ conventions.
#
# Define:
# DOXYGEN_PREDEF = predfined C vars
# DOXYGEN_ATPARSE_ARGS = list of args to pass to the @at-parser@
# Some globally-defined vars are pre-set.
# In particular you may want to add:
# DOXYGEN_INPUT="index.txt $(top_includesdir)/yourincludes)"
# DOXYGEN_FILTER=/path/to/filter (may be left blank)
# Useful sometimes for perl/sed'ing, e.g., C macros in API docs.
#
# Sample:
# INCLUDES_DIRS = $(addprefix $(top_includesdir)/,lib1 otherlib)
#
# DOXYGEN_PREDEF = \
# HAVE_CONFIG_H=1
#
# DOXYGEN_ATPARSE_ARGS = \
# DOXYGEN_INPUT="index.txt $(INCLUDES_DIRS)"
#
# Of course your Doxyfile.at must have the appropriate @tokens@ in it,
# but the one shipped with this file is already set up for you.
ifeq (,$(DOXYGEN_BIN))
$(error The variable DOXYGEN_BIN must be set before including this file.)
endif
DOXYFILE = Doxyfile
doxygen_outdir = ./doxygen
DOXYGEN_IN = Doxyfile.at
DIST_FILES += $(DOXYGEN_IN) index.txt
doxygen_install_dirname = doxygen-$(PACKAGE_NAME)-$(PACKAGE_VERSION)
docs: doxygen
clean: clean-doxygen
install: install-doxygen
DOXYGEN_ATPARSE_ARGS += \
top_srcdir=${top_srcdir} \
top_libdir=${top_libdir} \
top_includesdir=${top_includesdir} \
PERL="$(PERL)" \
PACKAGE_NAME=$(PACKAGE_NAME) \
PACKAGE_VERSION=$(PACKAGE_VERSION)\
PREDEFINED="$(DOXYGEN_PREDEF)" \
DOXYGEN_FILTER=$(DOXYGEN_FILTER)
DOXYGEN_MAKE = $(toc_makesdir)/DOXYGEN.make
CLEAN_FILES += $(DOXYGEN_FILTER)
atparser = $(top_srcdir)/toc/bin/atsign_parse
$(top_srcdir)/configure:
$(DOXYFILE): $(DOXYGEN_FILTER) $(DOXYGEN_IN) Makefile $(top_srcdir)/configure
@echo "Creating $@."; \
$(call toc_atparse_file,$(DOXYGEN_IN),$@, \
$(DOXYGEN_ATPARSE_ARGS) \
)
CLEAN_FILES += $(DOXYFILE)
INSTALL_DEST_DOXYGEN = $(INSTALL_DOCS_DEST)
DISTCLEAN_FILES += $(DOXYFILE)
doxygen: clean-doxygen $(DOXYFILE)
$(DOXYGEN_BIN)
@echo Output is in $(doxygen_outdir) and ./latex.
clean-doxygen:
-rm -fr $(doxygen_outdir) latex
install-doxygen: doxygen
@echo "Installing docs to $(INSTALL_DOCS_DEST)/$(doxygen_install_dirname)"
@test -d $(INSTALL_DEST_DOXYGEN) || mkdir -p $(INSTALL_DEST_DOXYGEN); \
cp -r $(doxygen_outdir) $(INSTALL_DOCS_DEST)/$(doxygen_install_dirname)
# all: docs
--- NEW FILE: NAMESPACE.make ---
#!/do/not/make
#
# A snippet to help filter source code files to replace a namespace.
# Usage:
# define:
# NAMESPACE = mynamespace
# NAMESPACE_TOKEN = token to replace when filtering. e.g. MY_NAMESPACE
# NAMESPACE_PREFIX = filename prefix for pre-filtered files. Defaults to ns.
# NAMESPACE_FILTERED_FILES = list containing XXX which should be filtered from
# $(NAMESPACE_PREFIX)XXX.
# then include this file.
NAMESPACE_PREFIX ?= ns.
NAMESPACE_TOKEN ?= NAMESPACE
ifeq (,$(NAMESPACE))
$(error You must set the variable NAMESPACE before including this file.)
endif
NAMESPACE_MAKE = $(toc_makesdir)/NAMESPACE.make
NAMESPACE_TMPFILE = .toc.NAMESPACE.tmp
$(NAMESPACE_FILTERED_FILES): %: $(NAMESPACE_PREFIX)% Makefile $(top_srcdir)/toc.$(PACKAGE_NAME).make $(NAMESPACE_MAKE)
@nsf=$<; \
echo -n "namespace $(NAMESPACE): $$nsf --> $@ ... "; \
sed -e 's,$(NAMESPACE_TOKEN),$(NAMESPACE),g' < $$nsf > $(NAMESPACE_TMPFILE); \
cmp -s $(NAMESPACE_TMPFILE) $@ && rm $(NAMESPACE_TMPFILE); \
test -f $(NAMESPACE_TMPFILE) && { mv $(NAMESPACE_TMPFILE) $@; echo " updated"; } || echo " up to date";
|