aboutsummaryrefslogtreecommitdiff
path: root/examples/cxx/parser/polymorphism/makefile
diff options
context:
space:
mode:
Diffstat (limited to 'examples/cxx/parser/polymorphism/makefile')
-rw-r--r--examples/cxx/parser/polymorphism/makefile18
1 files changed, 15 insertions, 3 deletions
diff --git a/examples/cxx/parser/polymorphism/makefile b/examples/cxx/parser/polymorphism/makefile
index c096e5a..a8f5167 100644
--- a/examples/cxx/parser/polymorphism/makefile
+++ b/examples/cxx/parser/polymorphism/makefile
@@ -31,9 +31,8 @@ $(driver): $(obj) $(xsde.l)
$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base)
$(obj) $(dep): $(xsde.l.cpp-options)
-skel := $(out_base)/$(xsd:.xsd=-pskel.hxx) \
- $(out_base)/$(xsd:.xsd=-pskel.ixx) \
- $(out_base)/$(xsd:.xsd=-pskel.cxx)
+skelf := $(xsd:.xsd=-pskel.hxx) $(xsd:.xsd=-pskel.ixx) $(xsd:.xsd=-pskel.cxx)
+skel := $(addprefix $(out_base)/,$(skelf))
$(skel): xsde := $(out_root)/xsde/xsde
$(skel): xsde_options += --generate-polymorphic
@@ -57,6 +56,19 @@ $(clean): $(driver).o.clean \
$(addprefix $(out_base)/,$(xsd:.xsd=-pskel.cxx.xsd.clean))
+# Generated .gitignore.
+#
+ifeq ($(out_base),$(src_base))
+$(skel): | $(out_base)/.gitignore
+$(driver): | $(out_base)/.gitignore
+
+$(out_base)/.gitignore: files := driver $(skelf)
+$(clean): $(out_base)/.gitignore.clean
+
+$(call include,$(bld_root)/git/gitignore.make)
+endif
+
+
# How to.
#
$(call include,$(bld_root)/cxx/o-e.make)