[gxml] Build improvements for Xom on Windows building DLL and VPATH
- From: Daniel Espinosa Ortiz <despinosa src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gxml] Build improvements for Xom on Windows building DLL and VPATH
- Date: Thu, 1 May 2014 18:21:14 +0000 (UTC)
commit 8093473c93aae4ce7fb9ef4db79ae6a1aee87d45
Author: Daniel Espinosa <esodan gmail com>
Date: Thu May 1 13:06:30 2014 -0500
Build improvements for Xom on Windows building DLL and VPATH
gxml/Makefile.am | 32 ++++++++++++++++++--------------
gxml/xom/Makefile.am | 47 +++++++++++++++++++++++++----------------------
test/Makefile.am | 3 +++
3 files changed, 46 insertions(+), 36 deletions(-)
---
diff --git a/gxml/Makefile.am b/gxml/Makefile.am
index c1fabde..8343c86 100644
--- a/gxml/Makefile.am
+++ b/gxml/Makefile.am
@@ -90,7 +90,10 @@ libgxml_0_4_la_LDFLAGS = \
gxml_0_4_la_vala.stamp: $(sources)
$(VALAC) $(AM_VALAFLAGS) $^
+$(sources:.vala=.c): gxml_0_4_la_vala.stamp
+
libgxml_0_4_la_SOURCES=$(sources:.vala=.c)
+libgxml_0_4_la_DEPENDENCIES= gxml_0_4_la_vala.stamp
# .h header file
gxml.h: gxml_0_4_la_vala.stamp
@@ -121,6 +124,12 @@ GITIGNOREFILES = \
$(NULL)
+BUILT_SOURCES += \
+ gxml_0_4_la_vala.stamp \
+ gxml.h \
+ gxml-0.4.vapi \
+ $(NULL)
+
# This makes GObject Introspection optional and requires to use --enable-instrospection switch on configure
if HAVE_INTROSPECTION
@@ -158,8 +167,12 @@ AM_VALAFLAGS += \
libgxml_0_4_la_LDFLAGS += -shared -o libgxml-0.4.dll -no-undefined \
-out-imlib -export-all-symbols -output-def
+gxml.symbols: gxml_0_4_la_vala.stamp
+
libgxml-0.4.def: gxml.symbols
- (echo -e EXPRTS; $(CPP) -P $(DEF_FLAGS) - <$^ | sed -e '/^$$/d' -e 's/^/ /' -e 's/G_GNUC_[^ ]*//g' |
sort) > gxml.def.tmp && mv gxml.def.tmp libgxml-0.4.def
+ (echo -e EXPRTS; $(CPP) -P $(DEF_FLAGS) \
+ - <$^ | sed -e '/^$$/d' -e 's/^/ /' -e 's/G_GNUC_[^ ]*//g' \
+ | sort) > gxml.def.tmp && mv gxml.def.tmp libgxml-0.4.def
libgxml-0.4.def: libgxml-0.4.la
libgxmldefdir=$(libdir)
@@ -167,21 +180,12 @@ libgxmldef_DATA=libgxml-0.4.def
CLEANFILES += \
gxml.symbols \
- libgxml-0.4.def \
- libgxml-0.4.lib \
- libgxml-0.4.dll
-
-BUILT_SOURCES += libgxml-0.4.def
-endif
-
-
+ libgxml-0.4.def
-### Files to clean
BUILT_SOURCES += \
- gxml_0_4_la_vala.stamp \
- gxml.h \
- gxml-0.4.vapi \
- $(NULL)
+ libgxml-0.4.def
+
+endif
CLEANFILES += \
$(pkgconfig_DATA) \
diff --git a/gxml/xom/Makefile.am b/gxml/xom/Makefile.am
index 2082542..df233a6 100644
--- a/gxml/xom/Makefile.am
+++ b/gxml/xom/Makefile.am
@@ -2,6 +2,7 @@
# Empty variable to be added elements later
CLEANFILES=
+BUILT_SOURCES=
### Library
@@ -80,7 +81,12 @@ libxom_0_4_la_LDFLAGS = \
xom_0_4_la_vala.stamp: $(sources)
$(VALAC) $(AM_VALAFLAGS) $^
-libxom_0_4_la_SOURCES=$(sources:.vala=.c)
+$(sources:.vala=.c): xom_0_4_la_vala.stamp
+
+libxom_0_4_la_SOURCES= $(sources:.vala=.c)
+
+
+libxom_0_4_la_DEPENDENCIES= xom_0_4_la_vala.stamp
# .h header file
xom.h: xom_0_4_la_vala.stamp
@@ -106,10 +112,15 @@ EXTRA_DIST = \
$(NULL)
GITIGNOREFILES = \
- $(libxom_0_4_la_SOURCES:.vala=.c) \
- libxom_0_4_la_vala.stamp \
+ $(sources:.vala=.c) \
+ xom_0_4_la_vala.stamp \
$(NULL)
+BUILT_SOURCES += \
+ xom_0_4_la_vala.stamp \
+ $(builddir)/../xom.h \
+ xom-0.4.vapi \
+ $(NULL)
# This makes GObject Introspection optional and requires to use --enable-instrospection switch on configure
@@ -147,36 +158,28 @@ if PLATFORM_WIN32
AM_VALAFLAGS += \
--symbols=xom.symbols
-libxom_0_4_la_LDFLAGS += -export-symbols $(builddir)/libxom-0.4.def
-libxom_0_4_la_DEPENDENCIES = libxom-0.4.def
+libxom_0_4_la_LDFLAGS += -shared -o libxom-0.4.dll -no-undefined \
+ -out-imlib -export-all-symbols -output-def
-libxom-0.4.def: xom.symbols
- (echo -e EXPORTS; $(CPP) -P $(DEF_FLAGS) - <$(srcdir)/xom.symbols | sed -e '/^$$/d' -e 's/^/ /' -e
's/G_GNUC_[^ ]*//g' | sort) > gxml.def.tmp && mv gxml.def.tmp libxom-0.4.def
+xom.symbols: xom_0_4_la_vala.stamp
-libxom-0.4.lib: libxom-0.4.def
- $(DLLTOOL) --dllname libxom-0.4.a --def libxom-0.4.def --output-lib libxom-0.4.lib
-
-libxom-0.4.lib: libxom-0.4.la
-libxomlibdir=$(libdir)
-libxomlib_DATA=libxom-0.4.lib
+libxom-0.4.def: xom.symbols
+ (echo -e EXPORTS; $(CPP) -P $(DEF_FLAGS) - <$(srcdir)/xom.symbols \
+ | sed -e '/^$$/d' -e 's/^/ /' -e 's/G_GNUC_[^ ]*//g' \
+ | sort) > xom.def.tmp && mv xom.def.tmp libxom-0.4.def
libxom-0.4.def: libxom-0.4.la
libxomdefdir=$(libdir)
libxomdef_DATA=libxom-0.4.def
CLEANFILES += \
- xom-0.4.symbols
-
-endif
+ xom-0.4.symbols \
+ libxom-0.4.def
+BUILT_SOURCES += libxom-0.4.def
+endif
-### Files to clean
-BUILT_SOURCES = \
- xom_0_4_la_vala.stamp \
- $(builddir)/../xom.h \
- xom-0.4.vapi \
- $(NULL)
CLEANFILES += \
$(pkgconfig_DATA) \
diff --git a/test/Makefile.am b/test/Makefile.am
index 113027b..126a728 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -49,6 +49,8 @@ sources = \
gxml_test.vala.stamp: $(sources)
$(VALAC) $(AM_VALAFLAGS) $^
+$(sources:.vala=.c): gxml_test.vala.stamp
+
gxml_test_SOURCES = $(sources:.vala=.c)
AM_VALAFLAGS = \
@@ -98,6 +100,7 @@ CLEANFILES = $(gxml_test_SOURCES:.vala=.c) $(BUILT_SOURCES) gxml_test
DISTCLEANFILES = _serialization_test_*.xml
EXTRA_DIST += \
+ $(sources) \
test_invalid.xml \
test_with_ns.xml \
test_out_path_expected.xml \
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]