diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2014-02-25 09:22:06 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2014-02-25 09:22:06 +0200 |
commit | 3939c9a6ceebbb237d8bdc041fd11f90ffc3b7ea (patch) | |
tree | a9273a78e9406a447976d22a3e2448c8debf5f49 /doc/makefile | |
parent | 7f2876d1fb227951bf2531847a4f540df7fcbb78 (diff) |
Rename documentation/ to doc/
Diffstat (limited to 'doc/makefile')
-rw-r--r-- | doc/makefile | 158 |
1 files changed, 158 insertions, 0 deletions
diff --git a/doc/makefile b/doc/makefile new file mode 100644 index 0000000..ee3c5bd --- /dev/null +++ b/doc/makefile @@ -0,0 +1,158 @@ +# file : doc/makefile +# author : Boris Kolpackov <boris@codesynthesis.com> +# copyright : Copyright (c) 2005-2011 Code Synthesis Tools CC +# license : GNU GPL v2 + exceptions; see accompanying LICENSE file + +include $(dir $(lastword $(MAKEFILE_LIST)))../build/bootstrap.make + +default := $(out_base)/ +dist := $(out_base)/.dist +dist-win := $(out_base)/.dist-win +install := $(out_base)/.install +cleandoc := $(out_base)/.cleandoc + +# Import. +# +$(call import,\ + $(scf_root)/import/cli/stub.make,\ + cli: cli,cli-rules: cli_rules) + +# Build. +# +$(default): \ +$(out_base)/cxx/ \ +$(out_base)/xsde.xhtml \ +$(out_base)/xsde.1 + +# Man/html pages. +# +$(out_base)/xsde.xhtml $(out_base)/xsde.1: cli := $(cli) +$(out_base)/xsde.xhtml $(out_base)/xsde.1: cli_options += -I $(src_root)/xsde + +$(out_base)/xsde.xhtml $(out_base)/xsde.1: \ +$(src_root)/xsde/options.cli \ +$(src_root)/xsde/cxx/options.cli \ +$(src_root)/xsde/cxx/hybrid/options.cli \ +$(src_root)/xsde/cxx/parser/options.cli \ +$(src_root)/xsde/cxx/serializer/options.cli + +# Assemble the options from different files in a specific order. +# + +# XHTML +# +$(out_base)/xsde.xhtml: $(src_base)/xsde-prologue.xhtml \ + $(src_base)/xsde-epilogue.xhtml \ + $(src_base)/xsde-hybrid-header.xhtml \ + $(src_base)/xsde-parser-header.xhtml \ + $(src_base)/xsde-serializer-header.xhtml \ + | $(out_base)/. +# Common options. +# + $(call message,cli-html $$1,$(cli) $(cli_options) --generate-html \ +--stdout --suppress-undocumented --exclude-base --class CXX::options \ +--class options --html-prologue-file $(src_base)/xsde-prologue.xhtml \ +$$1 >$@, $(src_root)/xsde/cxx/options.cli) + +# C++/Hybrid options. +# + $(call message,cli-html $$1,$(cli) $(cli_options) --generate-html \ +--stdout --suppress-undocumented --exclude-base \ +--html-prologue-file $(src_base)/xsde-hybrid-header.xhtml \ +$$1 >>$@, $(src_root)/xsde/cxx/hybrid/options.cli) + +# C++/Parser options. +# + $(call message,cli-html $$1,$(cli) $(cli_options) --generate-html \ +--stdout --suppress-undocumented --exclude-base \ +--html-prologue-file $(src_base)/xsde-parser-header.xhtml \ +$$1 >>$@, $(src_root)/xsde/cxx/parser/options.cli) + +# C++/Serializer options. +# + $(call message,cli-html $$1,$(cli) $(cli_options) --generate-html \ +--stdout --suppress-undocumented --exclude-base \ +--html-prologue-file $(src_base)/xsde-serializer-header.xhtml \ +--html-epilogue-file $(src_base)/xsde-epilogue.xhtml \ +$$1 >>$@, $(src_root)/xsde/cxx/serializer/options.cli) + + +# MAN +# +$(out_base)/xsde.1: $(src_base)/xsde-prologue.1 \ + $(src_base)/xsde-epilogue.1 \ + $(src_base)/xsde-hybrid-header.1 \ + $(src_base)/xsde-parser-header.1 \ + $(src_base)/xsde-serializer-header.1 \ + | $(out_base)/. +# Common options. +# + $(call message,cli-man $$1,$(cli) $(cli_options) --generate-man \ +--stdout --suppress-undocumented --exclude-base --class CXX::options \ +--class options --man-prologue-file $(src_base)/xsde-prologue.1 \ +$$1 >$@, $(src_root)/xsde/cxx/options.cli) + +# C++/Hybrid options. +# + $(call message,cli-man $$1,$(cli) $(cli_options) --generate-man \ +--stdout --suppress-undocumented --exclude-base \ +--man-prologue-file $(src_base)/xsde-hybrid-header.1 \ +$$1 >>$@, $(src_root)/xsde/cxx/hybrid/options.cli) + +# C++/Parser options. +# + $(call message,cli-man $$1,$(cli) $(cli_options) --generate-man \ +--stdout --suppress-undocumented --exclude-base \ +--man-prologue-file $(src_base)/xsde-parser-header.1 \ +$$1 >>$@, $(src_root)/xsde/cxx/parser/options.cli) + +# C++/Serializer options. +# + $(call message,cli-man $$1,$(cli) $(cli_options) --generate-man \ +--stdout --suppress-undocumented --exclude-base \ +--man-prologue-file $(src_base)/xsde-serializer-header.1 \ +--man-epilogue-file $(src_base)/xsde-epilogue.1 \ +$$1 >>$@, $(src_root)/xsde/cxx/serializer/options.cli) + + +# Dist. +# +dist-common := $(out_base)/.dist-common + +$(dist-common): $(out_base)/xsde.xhtml \ + $(out_base)/xsde.1 + $(call install-data,$(src_base)/default.css,$(dist_prefix)/doc/default.css) + $(call install-data,$(out_base)/xsde.xhtml,$(dist_prefix)/doc/xsde.xhtml) + $(call install-data,$(out_base)/xsde.1,$(dist_prefix)/doc/xsde.1) + +$(dist): $(dist-common) $(out_base)/cxx/.dist +$(dist-win): $(dist-common) $(out_base)/cxx/.dist + +# Install. +# +$(install): $(out_base)/xsde.xhtml \ + $(out_base)/xsde.1 + $(call install-dir,$(src_base)/cxx,$(install_doc_dir)/xsde/cxx) + $(call install-data,$(src_base)/default.css,$(install_doc_dir)/xsde/default.css) + $(call install-data,$(out_base)/xsde.xhtml,$(install_doc_dir)/xsde/xsde.xhtml) + $(call install-data,$(out_base)/xsde.1,$(install_man_dir)/man1/xsde.1) + +# Clean. +# +$(cleandoc): $(src_base)/cxx/.cleandoc + $(call message,rm $$1,rm -f $$1,$(out_base)/xsde.1) + $(call message,rm $$1,rm -f $$1,$(out_base)/xsde.xhtml) + +# Generated .gitignore. +# +ifeq ($(out_base),$(src_base)) +$(out_base)/xsde.xhtml $(out_base)/xsde.1: | $(out_base)/.gitignore + +$(out_base)/.gitignore: files := xsde.1 xsde.xhtml +$(clean): $(out_base)/.gitignore.clean + +$(call include,$(bld_root)/git/gitignore.make) +endif + +$(call include,$(bld_root)/install.make) +$(call import,$(src_base)/cxx/makefile) |