diff options
| author | Alan Conway <aconway@apache.org> | 2007-03-21 02:08:18 +0000 |
|---|---|---|
| committer | Alan Conway <aconway@apache.org> | 2007-03-21 02:08:18 +0000 |
| commit | 595235e61a48c1ee24bdaee8af72ab7caf18bab6 (patch) | |
| tree | 3e6193a2ffe5789291ec8577924f1cabe6933618 /cpp/gen | |
| parent | 371d76b7e0f8358d5296722f2f2c0e28181a3935 (diff) | |
| download | qpid-python-595235e61a48c1ee24bdaee8af72ab7caf18bab6.tar.gz | |
Renamed cpp-0-9 to cpp
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@520706 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/gen')
| -rw-r--r-- | cpp/gen/Makefile.am | 37 | ||||
| -rwxr-xr-x | cpp/gen/make-gen-src-mk.sh | 30 |
2 files changed, 67 insertions, 0 deletions
diff --git a/cpp/gen/Makefile.am b/cpp/gen/Makefile.am new file mode 100644 index 0000000000..e16923fcc2 --- /dev/null +++ b/cpp/gen/Makefile.am @@ -0,0 +1,37 @@ +include gen-src.mk + +BUILT_SOURCES = $(generated_sources) $(generated_headers) +pkginclude_HEADERS=$(generated_headers) + +# Distribute the generated sources, at least for now, since +# the generator code is in java. +EXTRA_DIST = $(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 +# to run the code generator are available. +# +if CAN_GENERATE_CODE + +gentools_dir = $(srcdir)/../gentools +spec_dir = $(srcdir)/../../specs + +# FIXME aconway 2007-01-04: Enabling Basic class until +# new messaging class is ready to replace it. +# spec = $(spec_dir)/amqp.0-9.xml $(spec_dir)/amqp-errata.0-9.xml $(spec_dir)/amqp-nogen.0-9.xml +spec = $(spec_dir)/amqp.0-9.xml $(spec_dir)/amqp-errata.0-9.xml + +gentools_srcdir = $(gentools_dir)/src/org/apache/qpid/gentools + +$(BUILT_SOURCES) timestamp: $(spec) $(java_sources) $(cxx_templates) Makefile.am + 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) + touch timestamp + +gen-src.mk: timestamp + ./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 + + |
