summaryrefslogtreecommitdiff
path: root/boilerplate/Makefile.am
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2009-07-04 21:43:27 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2009-07-04 21:43:27 +0100
commit88cb69b10c66751f687c3745c8e9861b105de3a2 (patch)
tree3887fc1f4f4cf61b9111b62f6e85af0b72534782 /boilerplate/Makefile.am
parent8a10ab1c04298d6c22ae8aabec5d762141a8e98f (diff)
downloadcairo-88cb69b10c66751f687c3745c8e9861b105de3a2.tar.gz
[boilerpate] Move target definition to backends.
By moving the backend target definition out of the massive amlagamated block in cairo-boilerplate.c and into each of the cairo-boilerplate-backend.c, we make it much easier to add new targets as the information need only be entered in a single file and not scattered across three. However, updating the target interface means trawling across all the files -- except given that I found it difficult maintaining the single massive array I do not see this as an increase in the maintenance burden.
Diffstat (limited to 'boilerplate/Makefile.am')
-rw-r--r--boilerplate/Makefile.am12
1 files changed, 12 insertions, 0 deletions
diff --git a/boilerplate/Makefile.am b/boilerplate/Makefile.am
index 239af569e..523453a47 100644
--- a/boilerplate/Makefile.am
+++ b/boilerplate/Makefile.am
@@ -20,6 +20,7 @@ libcairoboilerplate_la_SOURCES = \
$(enabled_cairo_boilerplate_headers) \
$(enabled_cairo_boilerplate_private) \
$(enabled_cairo_boilerplate_sources) \
+ cairo-boilerplate-constructors.c \
$(NULL)
libcairoboilerplate_la_LIBADD = $(top_builddir)/src/libcairo.la
@@ -47,6 +48,17 @@ endif
libcairoboilerplate_la_LIBADD += $(CAIROBOILERPLATE_LIBS)
+make-cairo-boilerplate-constructors$(EXEEXT): make-cairo-boilerplate-constructors.c
+ $(CC) -o $@ make-cairo-boilerplate-constructors.c
+
+cairo-boilerplate-constructors.c: Makefile $(enabled_cairo_boilerplate_sources) make-cairo-boilerplate-constructors$(EXEEXT)
+ (cd $(srcdir) && ./make-cairo-boilerplate-constructors$(EXEEXT) $(enabled_cairo_boilerplate_sources)) > $@
+
+BUILT_SOURCES += cairo-boilerplate-constructors.c
+EXTRA_DIST += $(BUILT_SOURCES)
+CLEANFILES += $(BUILT_SOURCES)
+CLEANFILES += make-cairo-boilerplate-constructors
+
test: check
if CROSS_COMPILING