annotate GEMBASSY-1.0.3/gsoap/src/README.txt @ 1:84a17b3fad1f draft

Uploaded
author ktnyt
date Fri, 26 Jun 2015 05:20:29 -0400
parents 8300eb051bea
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
1 The gSOAP 'soapcpp2' source-to-source code compiler
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
2
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
3 INSTRUCTIONS
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
4
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
5 The gSOAP soapcpp2 tool translates annotated C/C++ header files with interface
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
6 defitions for services and clients to service and client implementation code.
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
7 It also maps the C/C++ types to XML types, with the ability to generate XML
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
8 schema and WSDL documents.
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
9
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
10 When starting from WSDL and/or XML schemas, first use the gSOAP 'wsdl2h' tool
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
11 to translate these into C/C++ header file with interface definitions. Then use
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
12 'soapcpp2' to translate these into implementation code.
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
13
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
14 See also the README.txt in the 'wsdl' directory and documentation on the use of
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
15 'wsdl2h' with 'soapcpp2'.
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
16
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
17 CONTENTS
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
18
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
19 This part of the distribution contains the following files:
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
20
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
21 README.txt This file
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
22 MakefileManual Extra makefile when autoconf/automake fail to produce one
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
23 soapcpp2.h Main header file
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
24 soapcpp2.c Main application
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
25 symbol2.c Symbol table handling and code generation module
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
26 error2.h Header file for error2.c
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
27 error2.c Error handling routines
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
28 init2.c Compiler symbol table initialization
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
29 soapcpp2_lex.l Flex/Lex tokens
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
30 soapcpp2_yacc.y Yacc/Bison grammar
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
31
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
32 INSTALLATION
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
33
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
34 Use './configure' and 'make' in the root directory, as explained in the
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
35 installation instructions.
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
36
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
37 To build 'soapcpp2' when autoconf/automake fail, use:
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
38
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
39 make -f MakefileManual
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
40
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
41 The above command assumes you have Bison and Flex installed. For Yacc, please
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
42 edit MakefileManual and change as follows:
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
43
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
44 YACC=yacc -d -v -s soapcpp2_yacc
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
45 CMFLAGS=-DWITH_YACC -DWITH_FLEX
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
46
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
47 QNX INSTALLATION
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
48
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
49 On QNX the bison.simple file is located in $QNX_HOST/usr/share/bison.simple
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
50 Update your .profile to include:
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
51
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
52 export BISON_SIMPLE=$QNX_HOST/usr/share/bison/bison.simple
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
53 export BISON_HAIRY=$QNX_HOST/usr/share/bison/bison.hairy
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
54
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
55 WIN32 INSTALLATION
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
56
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
57 You need to install Flex and Bison to build soapcpp2.
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
58
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
59 An MSN article explains how to do this with MS VS2005:
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
60
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
61 http://msdn.microsoft.com/en-us/library/aa730877(VS.80).aspx#vccustombr_topic3
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
62
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
63 The older Bison v1.6 can crash on Win32 systems if YYINITDEPTH is too small:
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
64 Compile with /DYYINITDEPTH=5000
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
65
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
66 COMMAND LINE OPTIONS
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
67
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
68 -1 generate SOAP 1.1 bindings
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
69 -2 generate SOAP 1.2 bindings
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
70 -0 remove SOAP bindings, use REST
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
71 -C generate client-side code only
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
72 -S generate server-side code only
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
73 -T generate server auto-test code
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
74 -L don't generate soapClientLib/soapServerLib
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
75 -a use SOAPAction with WS-Addressing to invoke server-side operations
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
76 -A require SOAPAction to invoke server-side operations
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
77 -b serialize byte arrays char[N] as string
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
78 -c generate C source code
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
79 -dpath use path to save files
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
80 -e generate SOAP RPC encoding style bindings
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
81 -fN file split of N XML serializer implementations per file (N>=10)
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
82 -h display help info
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
83 -Ipath use path(s) for #import (paths separated with ':', or ';' for windows)
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
84 -i generate C++ service proxies and objects inherited from soap struct
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
85 -j generate C++ service proxies and objects that share a soap struct
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
86 -k generate data structure walkers (experimental)
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
87 -l generate linkable modules (experimental)
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
88 -m generate Matlab(tm) code for MEX compiler
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
89 -n use service name to rename service functions and namespace table
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
90 -pname save files with new prefix name instead of 'soap'
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
91 -Qname use name as the C++ namespace for decls, including custom serializers
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
92 -qname use name as the C++ namespace of all declarations
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
93 -s generate deserialization code with strict XML validation checks
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
94 -t generate code for fully xsi:type typed SOAP/XML messaging
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
95 -u uncomment comments in WSDL/schema output by suppressing XML comments
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
96 -v display version info
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
97 -w don't generate WSDL and schema files
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
98 -x don't generate sample XML message files
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
99 -y include C/C++ type access information in sample XML messages
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
100 -z1 generate deprecated old-style C++ service proxies and objects
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
101 infile header file to parse (or stdin)
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
102
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
103 DOCUMENTATION
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
104
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
105 See soapdoc2.pdf for documentation.
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
106
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
107 LICENSE
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
108
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
109 The gSOAP 'soapcpp2' tool and (generated) source code are released under GPL or
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
110 a commercial license. The commercial license is available from Genivia.
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
111 Please visit http://genivia.com/Products/gsoap/contract.html
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
112
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
113 COPYRIGHT NOTICE
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
114
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
115 gSOAP XML Web services tools
8300eb051bea Initial upload
ktnyt
parents:
diff changeset
116 Copyright (C) 2000-2011, Robert van Engelen, Genivia, Inc. All Rights Reserved.