client_SOURCES = client.cpp
client_LDADD = $(LDADD) libclient.la
-server_SOURCES = server.cpp codegen_server.cpp
+server_SOURCES = server.cpp codegen_server.cpp foo.hxx
noinst_PROGRAMS = client server
-all-local: server.xml
+codegen.stamp: server.hxx $(top_builddir)/codegen/codegen
+ cp $(top_srcdir)/codegen/codegen-stubhead.hxx codegen_common.hxx
+# todo use tmp file for server.xml
+ gccxml $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $< -fxml=server.xml
+ $(top_builddir)/codegen/codegen $< server.xml codegen_
+ touch $@
-client.cpp codegen_common.hxx codegen_common.cpp codegen_client.hxx codegen_client.cpp codegen_server.cpp: server.xml
+codegen_common.hxx codegen_common.cpp codegen_client.hxx codegen_client.cpp codegen_server.cpp: codegen.stamp
-server.xml: server.cpp $(top_builddir)/codegen/codegen
- cp $(top_srcdir)/codegen/codegen-stubhead.hxx codegen_common.hxx
- gccxml $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) server.hxx -fxml=tmpserver.xml
- $(top_builddir)/codegen/codegen tmpserver.xml codegen_
- mv tmpserver.xml server.xml
+TESTS = test