behavior that all strings returned from Expat are affected by the XML_UNICODE
and XML_UNICODE_WCHAR_T feature-test macros, and ensure that an application
that needs to determine what type of character data is returned can do so
with reasonable ease.
API, allowing the implementation to define the structure and use less
casting in internal macros.
Change XML_UseForeignDTD() to return an enum XML_Error value, to allow
specific conditions to be reported more clearly.
to test all XML_Parse*() return values in the test and sample code.
This is binary-compatible with previous Expat 1.95.x releases.
dtdInit(): Make this a void function, since there is only one possible
return value.
parserInit(), poolGrow(), setContext(): Make these return XML_Bool values,
to match their intended semantics.
XML_ParseBuffer(): Use NULL instead of 0 for a pointer value.
- Use only plain spaces, no hard tabs.
- Strip trailing whitespace from all lines.
- Strip blank line from the end of the file.
- Do no use a space following the ! operator.
- Wrap a couple of long lines.
libexpatw.dll (in release and debug versions) using wchar_t
output.
This *probably* closes SF bug #432456. See comments in the
issue tracker for more info.
a real naming conflict with Perl's XML::Parser::Expat module and the
relatively recent 1.95.x naming of the combined Expat DLL.
This does not introduce new names for the "wide" version of the Expat
API; this will be a separate change.
See SF bug #432456.
which don't like spaces between the '#' and the preprocessor command.
* expat.h, xmlparse.c, xmlrole.c, xmltok.c:
- remove all spaces between the '#' and the cpp command.
* Makefile.in:
- from cygwin: add -no-undefined to the library link line
* conftools/get-version.sh: (new file)
- script to extract the version number from expat.h
* configure.in:
(some from the cygwin patch)
- update the prereq to 2.52 instead of just 2.50
- update the AC_INIT line to 2.52 standards: include the package
name, version (with a lot of gunk to get this), and where to send
bugs)
- update the output file generation to 2.52 standards
* make-release.sh:
- update to use the new get-version.sh script
* lib/expat.h:
- from cygwin: add a little define for CYGWIN
use the BYTEORDER constant that ac_c_bigendian_cross.m4 generates.
* accconfig.h: removed; obsolete.
* lib/winconfig.h:
- set the BYTEORDER constant, rather than XML_BYTE_ORDER, and leave
a note about what we're assuming.
* lib/xmltok.c, lib/xmltok_ns.c:
- change all XML_BYTE_ORDER references to BYTEORDER, and
update the constants from 12, 21 to 1234, 4321 respectively.
(which used to be called config.h)
* configure.in:
- change the header name to expat_config.h to prevent any possible
conflict with some other packages 'config.h'
- add a prerequisite on autoconf 2.50 or newer
- shift some acconfig.h values to AC_DEFINE() values
* MANIFEST:
- rename config.h.in to expat_config.h.in
* Makefile.in:
- clean out expat_config.h* instead of config.h*
* acconfig.h:
- remove the XML_NS, XML_DTD, and XML_CONTEXT_BYTES symbols; they
are now defined directly by configure.in
- shift the memmove() compatibility to xmlparse.c, its only consumer
- remove the @BOTTOM@ part since there are no more values to put at
the bottom of expat_config.h.in via acconfig.h
* xmlparse.c:
- switch from config.h to expat_config.h
- insert macro to define memmove() if it isn't available, but
bcopy() is available. also, changed one branch to #error rather
than insert bogus code.
* xmlrole.c:
- tweak the copyright header, per Fred-ism
- remove the unused RCSId[] variable (no other file has these)
- switch from config.h to expat_config.h
* xmltok.c:
- switch from config.h to expat_config.h
* use libtool to compile/link all programs
* remove */Makefile.in and remove them from configure
* remove autom4te.cache after running autoconf
* remove .o from the FILEMAP logic in configure and the Make system;
provides more flexibility in the Makefile to use it
* for VPATH builds: create the build subdirs by running
"make mkdir-init" from the configure script
* adjust .cvsignore files to account for presence of .libs now
original, and extract the numbers within the configure script.
* configure.in: extract the numbers from lib/expat.h
* Makefile.in: simplify the construction of DISTDIR
* lib/Makefile.in: no need to define the VERSION preprocessor symbol
* lib/expat.dsp: do not define VERSION (changed, but untested!)
* lib/xmlparse.c: revamp the XML_ExpatVersion() function
* lib/expat.h(.in): just ship the baby, rather than generating it
to add __cdecl to a typedef of a function type that MSVC does not complain
about. Callback implementations may need to add explicit __cdecl
annotations in sources not compiled with the C calling convention as the
default.
under MSVC -- this is needed when using the pre-compiled DLL with projects
built using a different calling convention.
XMLPARSEAPI now takes the return type as a parameter and inserts annotations
on both sides of the type to make sure the compiler is happy. A new
macro, XMLCALLBACK, is used to perform similar annotation of the callback
function types, which do not need the dllimport/dllexport annotations but
do still need the __cdecl annotation.
This closes SF bug #413653.
will just have to wonder how I got anything at all working on Windows).
Since we do not want to place the XMLPARSEAPI marker in the middle of a
type name, always tack it onto the beginning -- anywhere else seems fragile
at best.
were out of date, and we've previously seen expat.h out of sync).
*) Use new script "buildconf.sh" to create the set of generated files
(aclocal.m4, config.h.in, configure). This is intended to be used by
developers (rerun when configure.in changes) and just before a release
(releases include these outputs).
Developers now need the "autoconf" and "libtool" packages.
*) config.h.in is now built by autoheader and includes bits from acconfig.h
rather than manual construction/maintenance. (renamed from config.hin)
*) added conftools/PrintPath from the ASF; it is a portable "which"
*) added "extraclean" target to top-level Makefile to get rid of all
generated files (return to pure CVS state; before buildconf.sh)
*) updates various bits for config.hin -> config.h.in rename
*) no longer need to delete the ".deps" subdir since we don't create it
anymore (dependencies are explicit rather than auto-generated).
Remove gcc-specific cruft from the Makefile -- this hurts portability!
This closes SF tracker patch #403584, and probably more platform-specific
build process bugs than I care to think about.
structure that can be examined at runtime.
XML_ExpatVersion(): Construct the return value from the new version
information constants.
XML_MAJOR_VERSION, XML_MINOR_VERSION,
XML_MICRO_VERSION: New constants; these specify the version of the
library in a form that can be queried by client applications
at compile time. This is useful in determining if functions
should be considered available (like those above).