summaryrefslogtreecommitdiff
path: root/cpp/gen
diff options
context:
space:
mode:
authorAlan Conway <aconway@apache.org>2007-01-29 16:13:24 +0000
committerAlan Conway <aconway@apache.org>2007-01-29 16:13:24 +0000
commit5a1b8a846bdfa5cb517da0c507f3dc3a8ceec25d (patch)
treef9a982b65400154a86edd02faf75da143a96404c /cpp/gen
parent5d28464c46c1e64ded078a4585f0f49e30b8b5d6 (diff)
downloadqpid-python-5a1b8a846bdfa5cb517da0c507f3dc3a8ceec25d.tar.gz
* Added ClientAdapter - client side ChannelAdapter. Updated client side.
* Moved ChannelAdapter initialization from ctor to init(), updated broker side. * Improved various exception messages with boost::format messages. * Removed unnecssary virtual inheritance. * Widespread: fixed incorrect non-const ProtocolVersion& parameters. * Client API: pass channels by reference, not pointer. * codegen: - MethodBodyClass.h.templ: Added CLASS_ID, METHOD_ID and isA() template. - Various: fixed non-const ProtocolVersion& parameters. * cpp/bootstrap: Allow config arguments with -build. * cpp/gen/Makefile.am: Merged codegen fixes from trunk. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/qpid.0-9@501087 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/gen')
-rw-r--r--cpp/gen/Makefile.am18
-rwxr-xr-xcpp/gen/make-gen-src-mk.sh30
2 files changed, 32 insertions, 16 deletions
diff --git a/cpp/gen/Makefile.am b/cpp/gen/Makefile.am
index e42eca3d94..29b4cc7d0a 100644
--- a/cpp/gen/Makefile.am
+++ b/cpp/gen/Makefile.am
@@ -6,7 +6,7 @@ pkginclude_HEADERS=$(generated_headers)
# Distribute the generated sources, at least for now, since
# the generator code is in java.
EXTRA_DIST = $(BUILT_SOURCES)
-MAINTAINERCLEANFILES = $(BUILT_SOURCES)
+DISTCLEANFILES = $(BUILT_SOURCES) timestamp gen-src.mk
# Don't attempt to run the code generator unless configure has set
# CAN_GENERATE_CODE, indicating that the amqp.xml and tools needed
@@ -31,21 +31,7 @@ $(BUILT_SOURCES) timestamp: $(spec) $(java_sources) $(cxx_templates) Makefile.am
-c -o . -t $(gentools_dir)/templ.cpp $(spec)
touch timestamp
-DISTCLEANFILES = gen-src.mk
gen-src.mk: timestamp
- ( echo 'generated_sources = '\\ \
- && ls *.cpp | sort -u | sed 's/.*/ & \\/;$$s/ \\//'; \
- echo 'generated_headers = '\\ \
- && ls *.h | sort -u | sed 's/.*/ & \\/;$$s/ \\//'; \
- ) > $@-t
- ( echo if CAN_GENERATE_CODE; \
- echo 'java_sources = '\\ \
- && find $(gentools_srcdir) -name '*.java' \
- | sort -u | sed 's/.*/ & \\/;$$s/ \\//'; \
- echo 'cxx_templates = '\\ \
- && find $(gentools_dir)/templ.cpp -name '*.tmpl' \
- | sort -u | sed 's/.*/ & \\/;$$s/ \\//'; \
- echo endif \
- ) >> $@-t
+ ./make-gen-src-mk.sh $(gentools_dir) $(gentools_srcdir) > $@-t
mv $@-t $@
endif
diff --git a/cpp/gen/make-gen-src-mk.sh b/cpp/gen/make-gen-src-mk.sh
new file mode 100755
index 0000000000..08eb8ea134
--- /dev/null
+++ b/cpp/gen/make-gen-src-mk.sh
@@ -0,0 +1,30 @@
+#!/bin/sh
+# Generate the gen-src.mk makefile fragment, to stdout.
+# Usage: <gentools_dir> <gentools_srcdir>
+
+gentools_dir=$1
+gentools_srcdir=$2
+
+wildcard() { echo `ls $* 2>/dev/null` ; }
+
+cat <<EOF
+generated_sources = `wildcard *.cpp`
+
+generated_headers = `wildcard *.h`
+
+if CAN_GENERATE_CODE
+
+java_sources = `wildcard $gentools_srcdir/*.java`
+
+cxx_templates = `wildcard $gentools_dir/templ.cpp/*.tmpl`
+
+# Empty rules in case one of these files is removed,
+# renamed or no longer generated.
+\$(spec):
+\$(java_sources):
+\$(cxx_templates):
+endif
+
+EOF
+
+