[libgee] Fix build system by stealing more gnome-boxes code



commit ad1368115d6a95f4bcb2cdda11a9e121b1ba7d93
Author: Maciej Piechotka <uzytkownik2 gmail com>
Date:   Fri Dec 13 00:10:04 2013 +0100

    Fix build system by stealing more gnome-boxes code
    
    Parallel builds should work now and stamp files should be included
    in distribution.

 gee/Makefile.am   |   47 ++++++++++++++++++++++++++++++++++-------------
 tests/Makefile.am |   37 +++++++++++++++++++++++++++++++------
 2 files changed, 65 insertions(+), 19 deletions(-)
---
diff --git a/gee/Makefile.am b/gee/Makefile.am
index d46febb..a4098da 100644
--- a/gee/Makefile.am
+++ b/gee/Makefile.am
@@ -80,20 +80,21 @@ libgee_0_8_la_VALASOURCES = \
        $(NULL)
 
 libgee_0_8_la_SOURCES = \
-       $(libgee_0_8_la_VALASOURCES) \
+       $(libgee_0_8_la_VALASOURCES:.vala=.c) \
        ../utils/async.h \
        ../utils/free.h \
        $(NULL)
 
-libgee_0_8_la_VALAFLAGS = \
-       -H gee.h --vapi gee-0.8.vapi \
-       -h gee-internals.h \
-       --internal-vapi gee-internals-0.8.vapi \
-       --library gee-0.8 --gir Gee-0.8.gir \
-       --pkg gio-2.0 \
-       --vapidir $(top_srcdir)/utils --pkg geeutils \
-       $(COVERAGE_VALAFLAGS) \
-       $(VALAFLAGS) \
+libgee_0_8_la_DEPENDENCIES = \
+       gee-0.8.vapi \
+       gee-internals-0.8.vapi \
+       gee.h \
+       gee-internals.h \
+       libgee_0_8_la_vala.stamp \
+       $(NULL)
+
+libgee_0_8_la_CFLAGS = \
+       -w \
        $(NULL)
 
 libgee_0_8_la_CPPFLAGS = \
@@ -112,6 +113,24 @@ libgee_0_8_la_LDFLAGS = \
        -no-undefined \
        $(NULL)
 
+libgee_0_8_la_VALAFLAGS = \
+       -H gee.h --vapi gee-0.8.vapi \
+       -h gee-internals.h \
+       --internal-vapi gee-internals-0.8.vapi \
+       --library gee-0.8 --gir Gee-0.8.gir \
+       --pkg gio-2.0 \
+       --vapidir $(top_srcdir)/utils --pkg geeutils \
+       $(COVERAGE_VALAFLAGS) \
+       $(VALAFLAGS) \
+       $(NULL)
+
+libgee_0_8_la_vala.stamp: $(libgee_0_8_la_VALASOURCES)
+       $(AM_V_VALAC)$(VALAC) $(VALAFLAGS) $(VALA_DEBUG_FLAGS) $(libgee_0_8_la_VALAFLAGS) -C 
$(libgee_0_8_la_VALASOURCES)
+       @touch gee-0.8.vapi gee-internals-0.8.vapi gee.h gee-internals.h libgee_0_8_la_vala.stamp
+
+$(libgee_0_8_la_VALASOURCES:.vala=.c): libgee_0_8_la_vala.stamp
+gee-0.8.vapi gee-internals-0.8.vapi gee.h gee-internals.h: libgee_0_8_la_vala.stamp
+
 geeincludedir = $(includedir)/gee-0.8
 
 geeinclude_HEADERS = \
@@ -146,14 +165,16 @@ Gee-0.8.typelib: Gee-0.8.gir
        @INTROSPECTION_COMPILER@ $(INTROSPECTION_COMPILER_ARGS) -o $@ $^
 endif
 
-Gee-0.8.gir gee-internals-0.8.vapi gee-0.8.vapi: libgee-0.8.la
-
 MOSTLYCLEANFILES = \
        $(libgee_0_8_la_SOURCES:.vala=.c) \
-       src/gnome_news_vala.stamp \
+       libgee_0_8_la_vala.stamp \
        gee-0.8.vapi \
        gee-internals-0.8.vapi \
        Gee-0.8.typelib \
        Gee-0.8.gir \
        $(NULL)
 
+EXTRA_DIST += \
+       $(libgee_0_8_la_VALASOURCES) \
+       libgee_0_8_la_vala.stamp \
+       $(NULL)
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 2a9abe3..5402fb6 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -4,7 +4,7 @@ noinst_PROGRAMS = $(TEST_PROGS)
 
 TEST_PROGS += tests
 
-tests_SOURCES = \
+tests_VALASOURCES = \
        testarraylist.vala \
        testarrayqueue.vala \
        testbidirlist.vala \
@@ -44,15 +44,17 @@ tests_SOURCES = \
        testtreeset.vala \
        $(NULL)
 
+tests_SOURCES = \
+       $(tests_VALASOURCES:.vala=.c) \
+       $(NULL)
+
 tests_DEPENDENCIES = \
        $(top_srcdir)/gee/gee-0.8.vapi \
+       tests_vala.stamp \
        $(NULL)
 
-tests_VALAFLAGS = \
-       --basedir $(top_srcdir) \
-       --vapidir $(top_srcdir)/gee \
-       --pkg gee-0.8 --pkg posix \
-       $(VALAFLAGS) \
+tests_CFLAGS = \
+       -w \
        $(NULL)
 
 tests_CPPFLAGS = \
@@ -64,6 +66,29 @@ tests_LDADD = \
        $(GLIB_LIBS) ../gee/libgee-0.8.la \
        $(NULL)
 
+tests_VALAFLAGS = \
+       --basedir $(top_srcdir) \
+       --vapidir $(top_srcdir)/gee \
+       --pkg gee-0.8 --pkg posix \
+       $(VALAFLAGS) \
+       $(NULL)
+
+tests_vala.stamp: $(tests_VALASOURCES)
+       $(AM_V_VALAC)$(VALAC) $(VALAFLAGS) $(tests_VALAFLAGS) -C $(tests_VALASOURCES)
+       @touch tests_vala.stamp
+
+$(tests_VALASOURCES:.vala=.c): tests_vala.stamp
+
+MOSTLYCLEANFILES = \
+       $(tests_VALASOURCES:.vala=.c) \
+       tests_vala.stamp \
+       $(NULL)
+
+EXTRA_DIST += \
+       $(tests_VALASOURCES) \
+       tests_vala.stamp \
+       $(NULL)
+
 coverage-reset:
        lcov --base-directory= top_srcdir@ --directory @top_srcdir@/gee --zerocounters
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]