1
0
mirror of https://gitlab.gnome.org/GNOME/libxslt synced 2025-07-29 15:41:13 +03:00

Rework documentation build system

Since several generated files are under version control, their
timestamps are essentially random and rebuilding documentation using
Makefile dependencies can't work reliably. Simply add a phony rebuild
target that regenerates the whole documentation and other files
unconditionally.

    make -C doc rebuild
This commit is contained in:
Nick Wellnhofer
2022-03-30 23:45:55 +02:00
parent 8622c46160
commit b3fdf8a966
4 changed files with 14 additions and 62 deletions

View File

@ -90,13 +90,6 @@ AC_ARG_WITH(html-subdir, AS_HELP_STRING([--with-html-subdir=path],
AC_SUBST(HTML_DIR) AC_SUBST(HTML_DIR)
AC_ARG_ENABLE(rebuild-docs,
[ --enable-rebuild-docs[[=yes/no]] rebuild some generated docs [[default=no]]])
if test "$enable_rebuild_docs" = "yes" -a "$srcdir" != "."; then
AC_MSG_ERROR([cannot rebuild docs when builddir != srcdir])
fi
AM_CONDITIONAL([REBUILD_DOCS], [test "$enable_rebuild_docs" = "yes"])
dnl dnl
dnl Check the environment dnl Check the environment
dnl dnl

View File

@ -23,16 +23,7 @@ EXTRA_FORMAT= \
EXTRA_DIST = devhelp2.xsl html.xsl EXTRA_DIST = devhelp2.xsl html.xsl
if REBUILD_DOCS rebuild:
cd $(srcdir) && $(XSLTPROC) --nonet -o libexslt.devhelp2 devhelp2.xsl ../libexslt-api.xml
rebuild: libexslt.devhelp2
.PHONY: rebuild .PHONY: rebuild
$(HTML_FILES): libexslt.devhelp2
libexslt.devhelp2: devhelp2.xsl html.xsl $(top_srcdir)/doc/EXSLT/libexslt-api.xml
-@(if [ -x $(XSLTPROC) ] ; then \
echo Rebuilding devhelp2 files ; \
$(XSLTPROC) --nonet -o $(srcdir)/libexslt.devhelp2 $(srcdir)/devhelp2.xsl $(top_srcdir)/doc/EXSLT/libexslt-api.xml ; fi );
endif

View File

@ -37,37 +37,16 @@ EXTRA_DIST = \
man_MANS = xsltproc.1 man_MANS = xsltproc.1
if REBUILD_DOCS rebuild:
cd $(srcdir) && ./apibuild.py
all-local: $(man_MANS) xsltproc.html cd $(srcdir) && $(XSLTPROC) checkapisym.xsl libxslt-api.xml
cd $(srcdir) && $(XSLTPROC) -o ../libxslt/libxslt.syms syms.xsl symbols.xml
libxslt-api.xml libxslt-refs.xml EXSLT/libexslt-api.xml \ cd $(srcdir) && $(XSLTPROC) --nonet xsltproc.xml
EXSLT/libexslt-refs.xml ../libxslt/libxslt.syms : $(srcdir)/apibuild.py $(top_srcdir)/libxslt/*.h \ cd $(srcdir) && $(XSLTPROC) --nonet -o xsltproc.html http://docbook.sourceforge.net/release/xsl/current/html/docbook.xsl xsltproc.xml
$(top_srcdir)/libxslt/*.c $(top_srcdir)/libexslt/*.h \ cd $(srcdir) && $(XSLTPROC) -o $(WIN32_DIR)/libxslt.def.src \
$(top_srcdir)/libexslt/*.c --nonet $(WIN32_DIR)/defgen.xsl libxslt-api.xml
-(cd $(srcdir) && ./apibuild.py) cd $(srcdir) && $(XSLTPROC) -o $(WIN32_DIR)/libexslt.def.src \
($(XSLTPROC) $(srcdir)/checkapisym.xsl $(srcdir)/libxslt-api.xml) --nonet $(WIN32_DIR)/defgen.xsl EXSLT/libexslt-api.xml
($(XSLTPROC) -o ../libxslt/libxslt.syms $(srcdir)/syms.xsl $(srcdir)/symbols.xml)
xsltproc.html: xsltproc.xml
-@($(XSLTPROC) --nonet -o $@ http://docbook.sourceforge.net/release/xsl/current/html/docbook.xsl xsltproc.xml)
xsltproc.1: $(srcdir)/xsltproc.xml
-@(if [ -x $(XSLTPROC) ] ; then \
echo "Rebuilding the man pages from the xml" ; \
$(XSLTPROC) --nonet $(srcdir)/xsltproc.xml ; fi)
$(WIN32_DIR)/libxslt.def.src: libxslt-api.xml
-@(if [ -x $(XSLTPROC) ] ; then \
$(XSLTPROC) -o $(WIN32_DIR)/libxslt.def.src \
--nonet $(WIN32_DIR)/defgen.xsl $(srcdir)/libxslt-api.xml ; fi )
$(WIN32_DIR)/libexslt.def.src: EXSLT/libexslt-api.xml
-@(if [ -x $(XSLTPROC) ] ; then \
$(XSLTPROC) -o $(WIN32_DIR)/libexslt.def.src \
--nonet $(WIN32_DIR)/defgen.xsl $(srcdir)/EXSLT/libexslt-api.xml ; fi )
rebuild: all
wildcards = \ wildcards = \
*.1 \ *.1 \
@ -93,8 +72,6 @@ check-extra-dist:
test -n "$$present" || echo "not in EXTRA_DIST: $$a" ; \ test -n "$$present" || echo "not in EXTRA_DIST: $$a" ; \
done done
endif
install-data-local: install-data-local:
$(MKDIR_P) $(DESTDIR)$(HTML_DIR) $(MKDIR_P) $(DESTDIR)$(HTML_DIR)
-$(INSTALL) -m 0644 $(srcdir)/xsltproc.html $(DESTDIR)$(HTML_DIR) -$(INSTALL) -m 0644 $(srcdir)/xsltproc.html $(DESTDIR)$(HTML_DIR)

View File

@ -41,16 +41,7 @@ EXTRA_FORMAT= \
EXTRA_DIST = devhelp2.xsl html.xsl EXTRA_DIST = devhelp2.xsl html.xsl
if REBUILD_DOCS rebuild:
cd $(srcdir) && $(XSLTPROC) --nonet -o libxslt.devhelp2 devhelp2.xsl ../libxslt-api.xml
rebuild: libxslt.devhelp2
.PHONY: rebuild .PHONY: rebuild
$(HTML_FILES): libxslt.devhelp2
libxslt.devhelp2: devhelp2.xsl html.xsl $(top_srcdir)/doc/libxslt-api.xml
-@(if [ -x $(XSLTPROC) ] ; then \
echo Rebuilding devhelp2 files ; \
$(XSLTPROC) --nonet -o $(srcdir)/libxslt.devhelp2 $(srcdir)/devhelp2.xsl $(top_srcdir)/doc/libxslt-api.xml ; fi );
endif