summaryrefslogtreecommitdiff
path: root/tools/d2c/d2c.mk
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2016-01-30 17:23:16 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2016-01-30 17:23:16 (GMT)
commit792b330c1bbe573a591687d25e14d4cd1eccd3c6 (patch)
tree9a3e0955205c0221ea5db03b1f3a4d56846efed2 /tools/d2c/d2c.mk
parentc922b6b9c841a97dd948755658cff07b2c6762ff (diff)
Introduced a format switch to distinguish different kinds of definitions.
Diffstat (limited to 'tools/d2c/d2c.mk')
-rw-r--r--tools/d2c/d2c.mk37
1 files changed, 30 insertions, 7 deletions
diff --git a/tools/d2c/d2c.mk b/tools/d2c/d2c.mk
index b0b7b92..72269b7 100644
--- a/tools/d2c/d2c.mk
+++ b/tools/d2c/d2c.mk
@@ -9,19 +9,42 @@ fix_verbose = $(fix_verbose_@AM_V@)
fix_verbose_ = $(fix_verbose_@AM_DEFAULT_V@)
fix_verbose_0 = echo " FIX " `basename $$f`;
-# D2C_BIN =
-# D2C_OUTDIR =
-# D2C_ARCH =
-# D2C_HEADER =
-# D2C_ENCODINGS =
-# D2C_MACROS =
+
+# D2C_BIN =
+# D2C_TYPE =
+# D2C_OUTDIR =
+# D2C_ARCH =
+# D2C_HEADER =
+# D2C_ENCODINGS =
+# D2C_MACROS =
+# D2C_PREFIX =
+
+# FIXED_C_INCLUDES =
+# FIXED_H_INCLUDES =
+
SUFFIXES = .g
.d.g:
- $(d2c_verbose)$(D2C_BIN) -i $< -d $(D2C_OUTDIR) -a $(D2C_ARCH) -H $(D2C_HEADER) $(D2C_ENCODINGS) $(D2C_MACROS)
+ $(d2c_verbose)$(D2C_BIN) -i $< -t $(D2C_TYPE) -d $(D2C_OUTDIR) -a $(D2C_ARCH) -H $(D2C_HEADER) $(D2C_ENCODINGS) $(D2C_MACROS) -p $(D2C_PREFIX)
@touch $@
+d2c_final_rules: fix_includes_in_c_templates fix_includes_in_h_templates untabify_disass
+
+fix_includes_in_c_templates:
+ for f in `find .gen/ -name '*tmpl.c'`; do \
+ if grep -q '##INCLUDES##' $$f; then \
+ $(fix_verbose)sed -i 's/##INCLUDES##/$(FIXED_C_INCLUDES)/' $$f; \
+ fi; \
+ done
+
+fix_includes_in_h_templates:
+ @for f in `find .gen/ -name '*tmpl.h'`; do \
+ if grep -q '##INCLUDES##' $$f; then \
+ $(fix_verbose)sed -i 's/##INCLUDES##/$(FIXED_H_INCLUDES)/' $$f ; \
+ fi; \
+ done
+
# Merci http://www.commandlinefu.com/commands/view/10276/grep-tab-t
untabify_disass:
@find .gen/ -name '*[ch]' -exec grep -q $$'\t' {} \; -exec sed -i 's/\t/ /g' {} \;