1 # $Id: Makefile.tests 8481 2009-07-13 20:18:41Z abdelazer $
 
   3 # This makefile does a "smoketest" of stylesheets for various
 
   4 # output formats in the DocBook XSL Stylesheets release package.
 
   5 # It doesn't actually check the output -- it's just useful for
 
   6 # confirming whether each XSLT transformation actually executes
 
   7 # successfully without any errors.
 
   9 # To use it, run "make check" or just "make"
 
  14 TESTFILE=tests/refentry.007.xml
 
  15 TESTFILE_NS=tests/refentry.007.ns.xml
 
  17 NORMAL_STYLES=fo/docbook.xsl html/docbook.xsl xhtml/docbook.xsl
 
  18 NORMAL_PROFILE_STYLES=fo/profile-docbook.xsl html/profile-docbook.xsl xhtml/profile-docbook.xsl
 
  19 CHUNK_STYLES=html/chunk.xsl html/onechunk.xsl xhtml/chunk.xsl xhtml/onechunk.xsl
 
  20 HELP_STYLES=htmlhelp/htmlhelp.xsl javahelp/javahelp.xsl eclipse/eclipse.xsl
 
  21 MULTIFILE_STYLES=$(CHUNK_STYLES) $(HELP_STYLES)
 
  22 CHUNK_PROFILE_STYLES=html/profile-chunk.xsl html/profile-onechunk.xsl xhtml/profile-chunk.xsl xhtml/profile-onechunk.xsl
 
  23 HELP_PROFILE_STYLES=htmlhelp/profile-htmlhelp.xsl eclipse/profile-eclipse.xsl javahelp/profile-javahelp.xsl
 
  24 MULTIFILE_PROFILE_STYLES=$(CHUNK_PROFILE_STYLES) $(HELP_PROFILE_STYLES)
 
  26 MAN_STYLE=manpages/docbook.xsl
 
  27 MAN_PROFILE_STYLE=manpages/profile-docbook.xsl
 
  29 TWO_PROFILE_STYLE=profiling/profile.xsl 
 
  31 ROUNDTRIP_STYLES=roundtrip/dbk2ooo.xsl roundtrip/dbk2pages.xsl roundtrip/dbk2wordml.xsl
 
  32 SLIDES_STYLES=slides/html/default.xsl slides/xhtml/default.xsl slides/fo/plain.xsl
 
  33 WEBSITE_STYLES=website/website.xsl
 
  34 WEBSITE_CHUNK_STYLES=website/chunk-website.xsl
 
  36 # chunked output gets written to TMP_OUTPUT_DIR
 
  37 TMP_OUTPUT_DIR=/tmp/smoketest-output/
 
  38 # if you don't want TMP_OUTPUT_DIR and its contents deleted, unset
 
  39 # SMOKETEST_CLEAN_TARGET; e.g. "make check SMOKETEST_CLEAN_TARGET=''"
 
  40 SMOKETEST_CLEAN_TARGET=smoketest-clean
 
  42 check: smoketest-make-tmp-dir smoketest-normal smoketest-normal-profile smoketest-chunk smoketest-chunk-profile smoketest-man smoketest-man-profile smoketest-two-profile $(SMOKETEST_CLEAN_TARGET)
 
  44 smoketest-make-tmp-dir:
 
  45         $(RM) -r $(TMP_OUTPUT_DIR)
 
  46         mkdir '$(TMP_OUTPUT_DIR)'
 
  49         for stylesheet in $(NORMAL_STYLES); do \
 
  50         echo "$(XSLT) $(TESTFILE) $$stylesheet > /dev/null"; \
 
  51         $(XSLT) $(TESTFILE) $$stylesheet > /dev/null; \
 
  52         echo "$(XSLT) $(TESTFILE_NS) $$stylesheet > /dev/null"; \
 
  53         $(XSLT) $(TESTFILE_NS) $$stylesheet > /dev/null; \
 
  56 smoketest-normal-profile:
 
  57         for stylesheet in $(NORMAL_PROFILE_STYLES); do \
 
  58         echo "$(XSLT) $(TESTFILE) $$stylesheet > /dev/null"; \
 
  59         $(XSLT) $(TESTFILE) $$stylesheet > /dev/null; \
 
  60         echo "$(XSLT) $(TESTFILE_NS) $$stylesheet > /dev/null"; \
 
  61         $(XSLT) $(TESTFILE_NS) $$stylesheet > /dev/null; \
 
  65         for stylesheet in $(MULTIFILE_STYLES) ; do \
 
  66         $(XSLT) $(TESTFILE) $$stylesheet manifest.in.base.dir=1 base.dir=$(TMP_OUTPUT_DIR) ; \
 
  67         $(XSLT) $(TESTFILE_NS) $$stylesheet manifest.in.base.dir=1 base.dir=$(TMP_OUTPUT_DIR) ; \
 
  70 smoketest-chunk-profile:
 
  71         for stylesheet in $(MULTIFILE_PROFILE_STYLES) ; do \
 
  72         $(XSLT) $(TESTFILE) $$stylesheet manifest.in.base.dir=1 base.dir=$(TMP_OUTPUT_DIR) ; \
 
  73         $(XSLT) $(TESTFILE_NS) $$stylesheet manifest.in.base.dir=1 base.dir=$(TMP_OUTPUT_DIR) ; \
 
  77         $(XSLT) $(TESTFILE) $(MAN_STYLE) man.output.in.separate.dir=1 man.output.base.dir=$(TMP_OUTPUT_DIR) ; \
 
  78         $(XSLT) $(TESTFILE_NS) $(MAN_STYLE) man.output.in.separate.dir=1 man.output.base.dir=$(TMP_OUTPUT_DIR) ; 
 
  80 smoketest-man-profile:
 
  81         $(XSLT) $(TESTFILE) $(MAN_PROFILE_STYLE) man.output.in.separate.dir=1 man.output.base.dir=$(TMP_OUTPUT_DIR) ; \
 
  82         $(XSLT) $(TESTFILE_NS) $(MAN_PROFILE_STYLE) man.output.in.separate.dir=1 man.output.base.dir=$(TMP_OUTPUT_DIR) ; 
 
  84 smoketest-two-profile:
 
  85         $(XSLT) $(TESTFILE_NS) $(TWO_PROFILE_STYLE) > /dev/null ; 
 
  88         $(RM) -r $(TMP_OUTPUT_DIR)