From 5a36012aa3f1d1aeb26a548089f327e89cddf651 Mon Sep 17 00:00:00 2001 From: "Stephen D. Huston" Date: Sun, 26 Oct 2008 00:03:16 +0000 Subject: Microsoft NMAKE file to generate C++ code from specs git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@707918 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/protocol_gen.mak | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 cpp/src/protocol_gen.mak (limited to 'cpp/src') diff --git a/cpp/src/protocol_gen.mak b/cpp/src/protocol_gen.mak new file mode 100644 index 0000000000..8a150bf904 --- /dev/null +++ b/cpp/src/protocol_gen.mak @@ -0,0 +1,38 @@ +# This nmake file generates the Qpid protocol files from the AMQP XML spec +# and the management sources from the management XML specs. +# +# The Visual Studio projects assume the existence of the generated files. +# The generated files are valid in Apache-released kits but must be generated +# using this makefile for Windows developers working from the source +# repository. + +specdir = ..\..\specs +# To add cluster support, add ..\xml\cluster.xml to specs, then add sources +# to project files. +specs = $(specdir)\amqp.0-10-qpid-errata.xml + +rgen_dir=..\rubygen + +mgen_dir=..\managementgen +mgmt_specs=$(specdir)\management-schema.xml .\qpid\acl\management-schema.xml +# To add cluser management, add the next line to mgen_specs: +# .\qpid\cluster\management-schema.xml + +all: rubygen.mk managementgen.mk qpid\framing\MaxMethodBodySize.h + +rubygen.mk gen\generate_MaxMethodBodySize_h.cpp: $(specs) + ruby -I $(rgen_dir) $(rgen_dir)\generate gen $(specs) all rubygen.mk + +CPPFLAGS = /Od /I. /Igen /I"$(BOOST_ROOT)" /I"$(BOOST_ROOT)/include" /DWIN32 /D_CONSOLE /D_CRT_NONSTDC_NO_WARNINGS /DNOMINMAX /FD /EHsc /RTC1 /MTd /W3 /Zi /TP + +generate_MaxMethodBodySize_h.exe: gen/generate_MaxMethodBodySize_h.cpp + $(CPP) $(CPPFLAGS) gen/generate_MaxMethodBodySize_h.cpp + +qpid\framing\MaxMethodBodySize.h: generate_MaxMethodBodySize_h.exe + .\generate_MaxMethodBodySize_h + +# Management code generation... uses Python + +managementgen.mk: $(mgmt_specs) + python $(mgen_dir)\qmf-gen -m managementgen.mk -o gen\qmf $(mgmt_specs) + -- cgit v1.2.1