summaryrefslogtreecommitdiff
path: root/build/xsd
diff options
context:
space:
mode:
Diffstat (limited to 'build/xsd')
-rw-r--r--build/xsd/parser/xsd-cxx.make9
-rw-r--r--build/xsd/tree/xsd-cxx.make9
2 files changed, 14 insertions, 4 deletions
diff --git a/build/xsd/parser/xsd-cxx.make b/build/xsd/parser/xsd-cxx.make
index b31568a..0c05508 100644
--- a/build/xsd/parser/xsd-cxx.make
+++ b/build/xsd/parser/xsd-cxx.make
@@ -39,14 +39,19 @@ $(xsd_parser_pattern): xsd_options := $(ops)
.PRECIOUS: $(xsd_parser_pattern)
-$(xsd_parser_pattern): $(out_base)/%.xsd | $$(dir $$@).
+ifeq ($(out_base),$(src_base))
+
+$(xsd_parser_pattern): $(src_base)/%.xsd
$(call message,xsd $<,$(xsd) $(xsd_command) $(xsd_options) --output-dir $(dir $@) $<)
-ifneq ($(out_base),$(src_base))
+else
$(xsd_parser_pattern): $(src_base)/%.xsd | $$(dir $$@).
$(call message,xsd $<,$(xsd) $(xsd_command) $(xsd_options) --output-dir $(dir $@) $<)
+$(xsd_parser_pattern): $(out_base)/%.xsd | $$(dir $$@).
+ $(call message,xsd $<,$(xsd) $(xsd_command) $(xsd_options) --output-dir $(dir $@) $<)
+
endif
diff --git a/build/xsd/tree/xsd-cxx.make b/build/xsd/tree/xsd-cxx.make
index 55136db..16cc8d9 100644
--- a/build/xsd/tree/xsd-cxx.make
+++ b/build/xsd/tree/xsd-cxx.make
@@ -20,14 +20,19 @@ $(xsd_tree_pattern): xsd_options :=
.PRECIOUS: $(xsd_tree_pattern)
-$(xsd_tree_pattern): $(out_base)/%.xsd | $$(dir $$@).
+ifeq ($(out_base),$(src_base))
+
+$(xsd_tree_pattern): $(src_base)/%.xsd
$(call message,xsd $<,$(xsd) $(xsd_command) $(xsd_options) --output-dir $(dir $@) $<)
-ifneq ($(out_base),$(src_base))
+else
$(xsd_tree_pattern): $(src_base)/%.xsd | $$(dir $$@).
$(call message,xsd $<,$(xsd) $(xsd_command) $(xsd_options) --output-dir $(dir $@) $<)
+$(xsd_tree_pattern): $(out_base)/%.xsd | $$(dir $$@).
+ $(call message,xsd $<,$(xsd) $(xsd_command) $(xsd_options) --output-dir $(dir $@) $<)
+
endif
.PHONY: $(out_base)/%$(xsd_tree_suffix).cxx.xsd.clean