diff options
author | Alan Conway <aconway@apache.org> | 2006-12-04 17:03:39 +0000 |
---|---|---|
committer | Alan Conway <aconway@apache.org> | 2006-12-04 17:03:39 +0000 |
commit | b9d2b4bc80748d0a6a7209d0ce5dce97565c83ae (patch) | |
tree | f5f3fcfe6f9adb6f4f3fc5f6bbbce21ff0dd5c58 /cpp/gen | |
parent | d7bd6ba4267f9c2ff2ce4165f226cf1317013005 (diff) | |
download | qpid-python-b9d2b4bc80748d0a6a7209d0ce5dce97565c83ae.tar.gz |
2006-12-01 Jim Meyering <meyering@redhat.com>
* configure.ac: Use an automake conditional to indicate when we
have access to files outside of the current hierarchy, and when
we have the tools (java and javac) to build some generated files.
* gen/Makefile.am: Don't use $(abs_srcdir); not needed.
(timestamp): Depend on java sources and C++ template files,
if we're building in a qpid tree.
Use $(JAVA) and $(JAVAC), rather than hard-coding those names.
(gen-src.mk) [$(java_sources), $(cxx_templates)]: New rules to
generate these lists of file names.
* bootstrap: Also generate gen/gen-src.mk.
But do that only if we're in a qpid hierarchy.
Redirect make's stdout to /dev/null.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@482255 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/gen')
-rw-r--r-- | cpp/gen/Makefile.am | 38 | ||||
-rw-r--r-- | cpp/gen/gen-src.mk | 99 |
2 files changed, 22 insertions, 115 deletions
diff --git a/cpp/gen/Makefile.am b/cpp/gen/Makefile.am index 1f38a419d6..8c179dfd06 100644 --- a/cpp/gen/Makefile.am +++ b/cpp/gen/Makefile.am @@ -1,6 +1,3 @@ -# TODO aconway 2006-11-30: nasty hack, should be done by automake? -abs_srcdir = @abs_srcdir@ - include gen-src.mk BUILT_SOURCES = $(generated_sources) @@ -10,21 +7,20 @@ BUILT_SOURCES = $(generated_sources) EXTRA_DIST = $(BUILT_SOURCES) MAINTAINERCLEANFILES = $(BUILT_SOURCES) -gentools_dir = $(abs_srcdir)/../../gentools -spec_dir = $(abs_srcdir)/../../specs +gentools_dir = $(srcdir)/../../gentools +spec_dir = $(srcdir)/../../specs spec = $(spec_dir)/amqp-8.0.xml +gentools_srcdir = $(gentools_dir)/src/org/apache/qpid/gentools -# FIXME: add dependencies? -timestamp: $(spec) - if test -d $(gentools_dir); then \ - rm -f $(generated_sources); \ - (cd $(gentools_dir)/src/org/apache/qpid/gentools && \ - rm -f *.class && javac *.java); \ - java -cp $(gentools_dir)/src org.apache.qpid.gentools.Main \ - -c -o . -t $(gentools_dir)/templ.cpp $(spec); \ - else \ - echo "warning: failed to regenerate gen/*.{cpp,h}" 1>&2; \ - fi +timestamp: $(spec) $(java_sources) $(cxx_templates) +if BUILD_IN_MESSAGE_TREE + rm -f $(generated_sources) + (cd $(gentools_srcdir) && rm -f *.class && $(JAVAC) *.java); \ + $(JAVA) -cp $(gentools_dir)/src org.apache.qpid.gentools.Main \ + -c -o . -t $(gentools_dir)/templ.cpp $(spec) +else + echo "warning: failed to regenerate gen/*.{cpp,h}" 1>&2 +endif touch timestamp EXTRA_DIST += timestamp @@ -35,4 +31,14 @@ gen-src.mk: timestamp ( echo 'generated_sources = \' \ && ls *.cpp *.h | sort -u | sed 's/.*/ & \\/;$$s/ \\//' \ ) > $@-t +if BUILD_IN_MESSAGE_TREE + ( echo 'java_sources = \' \ + && find $(gentools_srcdir) -name '*.java' \ + | sort -u | sed 's/.*/ & \\/;$$s/ \\//' \ + ) >> $@-t + ( echo 'cxx_templates = \' \ + && find $(gentools_dir)/templ.cpp -name '*.tmpl' \ + | sort -u | sed 's/.*/ & \\/;$$s/ \\//' \ + ) >> $@-t +endif mv $@-t $@ diff --git a/cpp/gen/gen-src.mk b/cpp/gen/gen-src.mk deleted file mode 100644 index 607bda2bd7..0000000000 --- a/cpp/gen/gen-src.mk +++ /dev/null @@ -1,99 +0,0 @@ -generated_sources = \ - AccessRequestBody.h \ - AccessRequestOkBody.h \ - AMQP_ClientOperations.h \ - AMQP_ClientProxy.cpp \ - AMQP_ClientProxy.h \ - AMQP_Constants.h \ - AMQP_MethodVersionMap.cpp \ - AMQP_MethodVersionMap.h \ - AMQP_ServerOperations.h \ - AMQP_ServerProxy.cpp \ - AMQP_ServerProxy.h \ - BasicAckBody.h \ - BasicCancelBody.h \ - BasicCancelOkBody.h \ - BasicConsumeBody.h \ - BasicConsumeOkBody.h \ - BasicDeliverBody.h \ - BasicGetBody.h \ - BasicGetEmptyBody.h \ - BasicGetOkBody.h \ - BasicPublishBody.h \ - BasicQosBody.h \ - BasicQosOkBody.h \ - BasicRecoverBody.h \ - BasicRejectBody.h \ - BasicReturnBody.h \ - ChannelAlertBody.h \ - ChannelCloseBody.h \ - ChannelCloseOkBody.h \ - ChannelFlowBody.h \ - ChannelFlowOkBody.h \ - ChannelOpenBody.h \ - ChannelOpenOkBody.h \ - ConnectionCloseBody.h \ - ConnectionCloseOkBody.h \ - ConnectionOpenBody.h \ - ConnectionOpenOkBody.h \ - ConnectionRedirectBody.h \ - ConnectionSecureBody.h \ - ConnectionSecureOkBody.h \ - ConnectionStartBody.h \ - ConnectionStartOkBody.h \ - ConnectionTuneBody.h \ - ConnectionTuneOkBody.h \ - DtxSelectBody.h \ - DtxSelectOkBody.h \ - DtxStartBody.h \ - DtxStartOkBody.h \ - ExchangeDeclareBody.h \ - ExchangeDeclareOkBody.h \ - ExchangeDeleteBody.h \ - ExchangeDeleteOkBody.h \ - FileAckBody.h \ - FileCancelBody.h \ - FileCancelOkBody.h \ - FileConsumeBody.h \ - FileConsumeOkBody.h \ - FileDeliverBody.h \ - FileOpenBody.h \ - FileOpenOkBody.h \ - FilePublishBody.h \ - FileQosBody.h \ - FileQosOkBody.h \ - FileRejectBody.h \ - FileReturnBody.h \ - FileStageBody.h \ - QueueBindBody.h \ - QueueBindOkBody.h \ - QueueDeclareBody.h \ - QueueDeclareOkBody.h \ - QueueDeleteBody.h \ - QueueDeleteOkBody.h \ - QueuePurgeBody.h \ - QueuePurgeOkBody.h \ - StreamCancelBody.h \ - StreamCancelOkBody.h \ - StreamConsumeBody.h \ - StreamConsumeOkBody.h \ - StreamDeliverBody.h \ - StreamPublishBody.h \ - StreamQosBody.h \ - StreamQosOkBody.h \ - StreamReturnBody.h \ - TestContentBody.h \ - TestContentOkBody.h \ - TestIntegerBody.h \ - TestIntegerOkBody.h \ - TestStringBody.h \ - TestStringOkBody.h \ - TestTableBody.h \ - TestTableOkBody.h \ - TunnelRequestBody.h \ - TxCommitBody.h \ - TxCommitOkBody.h \ - TxRollbackBody.h \ - TxRollbackOkBody.h \ - TxSelectBody.h \ - TxSelectOkBody.h |