More versioning changes, add tests to makesrcdist.

This commit is contained in:
Michael R Sweet 2024-02-27 16:50:25 -05:00
parent f9b9a40494
commit fde58fe7a7
No known key found for this signature in database
GPG Key ID: BE67C75EC81F3244
18 changed files with 262 additions and 250 deletions

View File

@ -1,3 +1,9 @@
# Changes in Mini-XML 4.0.0
- Now require C99 support.
- Renamed `mxml_type_t` enumerations to `MXML_TYPE_xxx`.
# Changes in Mini-XML 3.3.2
- Updated the autoconf `config.guess` and `config.sub` scripts to support cross

View File

@ -208,7 +208,7 @@ files "LICENSE" and "NOTICE" for more information.
> Note: The exception listed in the NOTICE file only applies when linking
> against GPL2/LGPL2-only software. Some Apache License purists have objected
> to linking Apache Licensed code against Mini-XML with these exceptions on the
> to linking Apa/che Licensed code against Mini-XML with these exceptions on the
> grounds that it makes Mini-XML somehow incompatible with the Apache License.
> For that reason, people wishing to retain their Apache License purity may
> omit the exception from their copy of Mini-XML.

View File

@ -5,6 +5,25 @@ This file describes how security issues are reported and handled, and what the
expectations are for security issues reported to this project.
Reporting a Security Bug
------------------------
For the purposes of this project, a security bug is a software defect that
allows a *local or remote user* to gain unauthorized access or privileges on the
host computer or to cause the software to crash. Such defects should be
reported to the project security advisory page at
<https://github.com/michaelrsweet/mxml/security/advisories>.
Alternately, security bugs can be reported to "security AT msweet.org" using the
PGP public key below. Expect a response within 5 business days. Any proposed
embargo date should be at least 30 days and no more than 90 days in the future.
> *Note:* If you've found a software defect that allows a *program* to gain
> unauthorized access or privileges on the host computer or causes the program
> to crash, that defect should be reported as an ordinary project issue at
> <https://github.com/michaelrsweet/mxml/issues>.
Responsible Disclosure
----------------------
@ -35,7 +54,7 @@ starting at 0. A feature release has a "PATCH" value of 0, for example:
1.1.0
2.0.0
Beta releases and release candidates are *not* prodution releases and use
Beta releases and release candidates are *not* production releases and use
semantic version numbers of the form:
MAJOR.MINORbNUMBER
@ -50,14 +69,6 @@ example:
1.0rc1
Reporting a Vulnerability
-------------------------
Report all security issues to "security AT msweet.org". Expect a response
within 5 business days. Any proposed embargo date should be at least 30 days
and no more than 90 days in the future.
PGP Public Key
--------------

23
configure vendored
View File

@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.71 for Mini-XML 4.0b1.
# Generated by GNU Autoconf 2.71 for Mini-XML 4.0.0.
#
# Report bugs to <https://github.com/michaelrsweet/mxml/issues>.
#
@ -610,8 +610,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='Mini-XML'
PACKAGE_TARNAME='mxml'
PACKAGE_VERSION='4.0b1'
PACKAGE_STRING='Mini-XML 4.0b1'
PACKAGE_VERSION='4.0.0'
PACKAGE_STRING='Mini-XML 4.0.0'
PACKAGE_BUGREPORT='https://github.com/michaelrsweet/mxml/issues'
PACKAGE_URL='https://www.msweet.org/mxml'
@ -1296,7 +1296,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures Mini-XML 4.0b1 to adapt to many kinds of systems.
\`configure' configures Mini-XML 4.0.0 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1362,7 +1362,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of Mini-XML 4.0b1:";;
short | recursive ) echo "Configuration of Mini-XML 4.0.0:";;
esac
cat <<\_ACEOF
@ -1463,7 +1463,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
Mini-XML configure 4.0b1
Mini-XML configure 4.0.0
generated by GNU Autoconf 2.71
Copyright (C) 2021 Free Software Foundation, Inc.
@ -1662,7 +1662,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by Mini-XML $as_me 4.0b1, which was
It was created by Mini-XML $as_me 4.0.0, which was
generated by GNU Autoconf 2.71. Invocation command line was
$ $0$ac_configure_args_raw
@ -2420,7 +2420,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
ac_config_headers="$ac_config_headers config.h"
MXML_VERSION="4.0b1"
MXML_VERSION="4.0.0"
printf "%s\n" "#define MXML_VERSION \"Mini-XML v$MXML_VERSION\"" >>confdefs.h
@ -4193,7 +4193,8 @@ then :
if test "x$ac_cv_header_pthread_h" = xyes
then :
printf "%s\n" "#define HAVE_PTHREAD_H Have <pthread.h>?" >>confdefs.h
printf "%s\n" "#define HAVE_PTHREAD_H 1" >>confdefs.h
fi
@ -5244,7 +5245,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by Mini-XML $as_me 4.0b1, which was
This file was extended by Mini-XML $as_me 4.0.0, which was
generated by GNU Autoconf 2.71. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@ -5309,7 +5310,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config='$ac_cs_config_escaped'
ac_cs_version="\\
Mini-XML config.status 4.0b1
Mini-XML config.status 4.0.0
configured by $0, generated by GNU Autoconf 2.71,
with options \\"\$ac_cs_config\\"

View File

@ -14,7 +14,7 @@ AC_PREREQ([2.70])
dnl Package name and version...
AC_INIT([Mini-XML], [4.0b1], [https://github.com/michaelrsweet/mxml/issues], [mxml], [https://www.msweet.org/mxml])
AC_INIT([Mini-XML], [4.0.0], [https://github.com/michaelrsweet/mxml/issues], [mxml], [https://www.msweet.org/mxml])
AC_CONFIG_HEADERS([config.h])
MXML_VERSION="AC_PACKAGE_VERSION"
@ -93,7 +93,7 @@ AC_ARG_ENABLE([threads], AS_HELP_STRING([--disable-threads], [disable multi-thre
have_pthread=no
AS_IF([test "x$enable_threads" != xno], [
AC_CHECK_HEADER([pthread.h], [
AC_DEFINE([HAVE_PTHREAD_H], [Have <pthread.h>?])
AC_DEFINE([HAVE_PTHREAD_H], [1], [Have <pthread.h>?])
])
AS_IF([test x$ac_cv_header_pthread_h = xyes], [

View File

@ -1,6 +1,13 @@
#!/bin/sh
#
# makesrcdist - make a source distribution of mxml.
# makesrcdist - make a source distribution of Mini-XML.
#
# https://www.msweet.org/mxml
#
# Copyright © 2003-2024 by Michael R Sweet.
#
# Licensed under Apache License v2.0. See the file "LICENSE" for more
# information.
#
if test $# != 1; then
@ -8,8 +15,60 @@ if test $# != 1; then
exit 1
fi
# Check that various files are up-to-date...
version=$1
version_major=$(echo $version | awk -F. '{print $1}')
version_minor=$(echo $version | awk -F. '{print $2}')
status=0
if ! grep -q "Changes in Mini-XML $version" CHANGES.md; then
echo "Update CHANGES.md."
status=1
fi
if test "$(grep AC_INIT configure.ac | awk '{print $2}')" != "[$version],"; then
echo "Update configure.ac."
status=1
fi
if test "$(grep MXML_MAJOR_VERSION mxml.h | awk '{print $4}')" != "$version_major"; then
echo "Update MXML_MAJOR_VERSION in mxml.h."
status=1
fi
if test "$(grep MXML_MINOR_VERSION mxml.h | awk '{print $4}')" != "$version_minor"; then
echo "Update MXML_MINOR_VERSION in mxml.h."
status=1
fi
if ! grep -q "Version: $version" mxml.spec; then
echo "Update mxml.spec."
status=1
fi
if ! grep -q "<version>$version</version>" vcnet/libmxml2_native.nuspec; then
echo "Update vcnet/libmxml2_native.nuspec."
status=1
fi
if ! grep -q "version=\"$version\" />" vcnet/libmxml2_native.nuspec; then
echo "Update vcnet/libmxml2_native.nuspec."
status=1
fi
if ! grep -q "<version>$version</version>" vcnet/libmxml2_native.redist.nuspec; then
echo "Update vcnet/libmxml2_native.redist.nuspec."
status=1
fi
if test $status = 1; then
exit 1
fi
# Create tag and archives...
echo Creating tag for release...
git tag -m "Tag $version" v$version
git push origin v$version

View File

@ -3,7 +3,7 @@
#
# https://www.msweet.org/mxml
#
# Copyright © 2003-2019 by Michael R Sweet.
# Copyright © 2003-2024 by Michael R Sweet.
#
# Licensed under Apache License v2.0. See the file "LICENSE" for more
# information.
@ -11,7 +11,7 @@
Summary: Small XML file parsing library
Name: mxml
Version: 3.2
Version: 4.0.0
Release: 1
License: Apache 2.0
Group: Development/Libraries

View File

@ -1,37 +1,31 @@
/*
* Visual Studio configuration file for Mini-XML, a small XML file parsing
* library.
*
* Copyright 2003-2021 by Michael R Sweet.
*
* These coded instructions, statements, and computer programs are the
* property of Michael R Sweet and are protected by Federal copyright
* law. Distribution and use rights are outlined in the file "COPYING"
* which should have been included with this file. If this file is
* missing or damaged, see the license at:
*
* https://michaelrsweet.github.io/mxml
*/
//
// Visual Studio configuration file for Mini-XML, a small XML file parsing
// library.
//
// https://www.msweet.org/mxml
//
// Copyright © 2003-2024 by Michael R Sweet.
//
// Licensed under Apache License v2.0. See the file "LICENSE" for more
// information.
//
/*
* Beginning with VC2005, Microsoft breaks ISO C and POSIX conformance
* by deprecating a number of functions in the name of security, even
* when many of the affected functions are otherwise completely secure.
* The _CRT_SECURE_NO_DEPRECATE definition ensures that we won't get
* warnings from their use...
*
* Then Microsoft decided that they should ignore this in VC2008 and use
* yet another define (_CRT_SECURE_NO_WARNINGS) instead...
*/
#ifndef MXML_CONFIG_H
# define MXML_CONFIG_H
//
// Beginning with VC2005, Microsoft breaks ISO C and POSIX conformance
// by deprecating a number of functions in the name of security, even
// when many of the affected functions are otherwise completely secure.
// The _CRT_SECURE_NO_DEPRECATE definition ensures that we won't get
// warnings from their use...
//
// Then Microsoft decided that they should ignore this in VC2008 and use
// yet another define (_CRT_SECURE_NO_WARNINGS) instead...
//
# define _CRT_SECURE_NO_DEPRECATE
# define _CRT_SECURE_NO_WARNINGS
/*
* Include necessary headers...
*/
# include <stdio.h>
# include <stdlib.h>
# include <string.h>
@ -40,15 +34,15 @@
# include <io.h>
/*
* Microsoft also renames the POSIX functions to _name, and introduces
* a broken compatibility layer using the original names. As a result,
* random crashes can occur when, for example, strdup() allocates memory
* from a different heap than used by malloc() and free().
*
* To avoid moronic problems like this, we #define the POSIX function
* names to the corresponding non-standard Microsoft names.
*/
//
// Microsoft also renames the POSIX functions to _name, and introduces
// a broken compatibility layer using the original names. As a result,
// random crashes can occur when, for example, strdup() allocates memory
// from a different heap than used by malloc() and free().
//
// To avoid moronic problems like this, we #define the POSIX function
// names to the corresponding non-standard Microsoft names.
//
# define close _close
# define open _open
@ -59,79 +53,32 @@
# define write _write
/*
* Version number...
*/
//
// Version number
//
#define MXML_VERSION "Mini-XML v3.3.1"
# define MXML_VERSION "Mini-XML v4.0b1"
/*
* Inline function support...
*/
//
// Inline function support
//
# define inline _inline
/*
* Long long support...
*/
//
// Long long support
//
# define HAVE_LONG_LONG_INT 1
/*
* Do we have the *printf() functions?
*/
//
// Have <pthread.h>?
//
#define HAVE_SNPRINTF 1
/* #undef HAVE_VASPRINTF */
#define HAVE_VSNPRINTF 1
//# undef HAVE_PTHREAD_H
/*
* Do we have the strXXX() functions?
*/
#define HAVE_STRDUP 1
/* #undef HAVE_STRLCPY */
/*
* Do we have threading support?
*/
/* #undef HAVE_PTHREAD_H */
/*
* Define prototypes for string functions as needed...
*/
# ifndef HAVE_STRDUP
extern char *_mxml_strdup(const char *);
# define strdup _mxml_strdup
# endif /* !HAVE_STRDUP */
# ifndef HAVE_STRLCAT
extern size_t _mxml_strlcat(char *, const char *, size_t);
# define strlcat _mxml_strlcat
# endif /* !HAVE_STRLCAT */
# ifndef HAVE_STRLCPY
extern size_t _mxml_strlcpy(char *, const char *, size_t);
# define strlcpy _mxml_strlcpy
# endif /* !HAVE_STRLCPY */
extern char *_mxml_strdupf(const char *, ...);
extern char *_mxml_vstrdupf(const char *, va_list);
# ifndef HAVE_SNPRINTF
extern int _mxml_snprintf(char *, size_t, const char *, ...);
# define snprintf _mxml_snprintf
# endif /* !HAVE_SNPRINTF */
# ifndef HAVE_VSNPRINTF
extern int _mxml_vsnprintf(char *, size_t, const char *, va_list);
# define vsnprintf _mxml_vsnprintf
# endif /* !HAVE_VSNPRINTF */
#endif // !MXML_CONFIG_H

View File

@ -1,9 +1,9 @@
<?xml version="1.0"?>
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
<metadata>
<id>libmxml1_native</id>
<id>libmxml2_native</id>
<title>Small XML File Parsing Library for VS2019+</title>
<version>3.3.0</version>
<version>4.0.0</version>
<authors>Michael R Sweet</authors>
<owners>michaelrsweet</owners>
<projectUrl>https://github.com/michaelrsweet/mxml</projectUrl>
@ -13,18 +13,18 @@
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>Small XML File Parsing Library</description>
<summary>Mini-XML is a small XML parsing library that you can use to read XML data files or strings in your application without requiring large non-standard libraries.</summary>
<copyright>Copyright © 2003-2021 by Michael R Sweet</copyright>
<copyright>Copyright © 2003-2024 by Michael R Sweet</copyright>
<tags>xml</tags>
<dependencies>
<dependency id="libmxml1_native.redist" version="3.3.0" />
<dependency id="libmxml2_native.redist" version="4.0.0" />
</dependencies>
</metadata>
<files>
<file src="..\doc\mxml-128.png" target="build\native" />
<file src="..\README.md" target="build\native" />
<file src="libmxml1_native.props" target="build\native" />
<file src="libmxml2_native.props" target="build\native" />
<file src="..\mxml.h" target="build\native\include" />
<!--<file src="Win32\**\libmxml1.lib" target="build\native\lib\Win32" />-->
<file src="x64\**\libmxml1.lib" target="build\native\lib\x64" />
<!--<file src="Win32\**\libmxml2.lib" target="build\native\lib\Win32" />-->
<file src="x64\**\libmxml2.lib" target="build\native\lib\x64" />
</files>
</package>

View File

@ -5,7 +5,7 @@
<AdditionalIncludeDirectories>$(MSBuildThisFileDirectory)\include</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<AdditionalDependencies>$(MSBuildThisFileDirectory)\lib\$(Platform)\$(Configuration)\libmxml1.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>$(MSBuildThisFileDirectory)\lib\$(Platform)\$(Configuration)\libmxml2.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
</Project>

View File

@ -1,9 +1,9 @@
<?xml version="1.0"?>
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
<metadata>
<id>libmxml1_native.redist</id>
<id>libmxml2_native.redist</id>
<title>Small XML File Parsing Library for VS2019+ Redist</title>
<version>3.3.0</version>
<version>4.0.0</version>
<authors>Michael R Sweet</authors>
<owners>michaelrsweet</owners>
<projectUrl>https://github.com/michaelrsweet/mxml</projectUrl>
@ -11,15 +11,15 @@
<icon>build/native/mxml-128.png</icon>
<readme>build/native/README.md</readme>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>Redistributable components for package 'libmxml1_native'. This package should only be installed as a dependency.</description>
<description>Redistributable components for package 'libmxml2_native'. This package should only be installed as a dependency.</description>
<summary>Mini-XML is a small XML parsing library that you can use to read XML data files or strings in your application without requiring large non-standard libraries. This package provides the redistributable content for Mini-XML.</summary>
<copyright>Copyright © 2003-2021 by Michael R Sweet</copyright>
<copyright>Copyright © 2003-2024 by Michael R Sweet</copyright>
<tags>xml</tags>
</metadata>
<files>
<file src="..\doc\mxml-128.png" target="build\native" />
<file src="..\README.md" target="build\native" />
<!--<file src="Win32\**\libmxml1.dll" target="build\native\bin\Win32" />-->
<file src="x64\**\libmxml1.dll" target="build\native\bin\x64" />
<!--<file src="Win32\**\libmxml2.dll" target="build\native\bin\Win32" />-->
<file src="x64\**\libmxml2.dll" target="build\native\bin\x64" />
</files>
</package>

View File

@ -2,7 +2,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 16
VisualStudioVersion = 16.0.30204.135
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mxml1", "mxml1.vcxproj", "{E5AA9476-9751-4654-8109-B1A2112D5E73}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mxml2", "mxml2.vcxproj", "{E5AA9476-9751-4654-8109-B1A2112D5E73}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testmxml", "testmxml.vcxproj", "{75CAC6C4-A6BC-4935-A3C9-8F0AE0744227}"
ProjectSection(ProjectDependencies) = postProject

View File

@ -1,8 +1,5 @@
LIBRARY "MXML1"
LIBRARY "MXML2"
EXPORTS
_mxml_strdupf
_mxml_strlcpy
_mxml_vstrdupf
mxml_ignore_cb
mxml_integer_cb
mxml_opaque_cb

View File

@ -100,15 +100,15 @@
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<OutputFile>$(Platform)\$(Configuration)\$(ProductName)\mxml1.dll</OutputFile>
<OutputFile>$(Platform)\$(Configuration)\$(ProductName)\mxml2.dll</OutputFile>
<IgnoreSpecificDefaultLibraries>oldnames.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
<ModuleDefinitionFile>.\mxml1.def</ModuleDefinitionFile>
<ModuleDefinitionFile>.\mxml2.def</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(OutDir)mxml1.pdb</ProgramDatabaseFile>
<ProgramDatabaseFile>$(OutDir)mxml2.pdb</ProgramDatabaseFile>
<SubSystem>Windows</SubSystem>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
<DataExecutionPrevention />
<ImportLibrary>$(Configuration)\$(Platform)\$(ProductName)\mxml1.lib</ImportLibrary>
<ImportLibrary>$(Configuration)\$(Platform)\$(ProductName)\mxml2.lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
@ -122,16 +122,16 @@
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<OutputFile>$(Platform)\$(Configuration)\$(ProductName)\mxml1.dll</OutputFile>
<OutputFile>$(Platform)\$(Configuration)\$(ProductName)\mxml2.dll</OutputFile>
<IgnoreSpecificDefaultLibraries>oldnames.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
<ModuleDefinitionFile>.\mxml1.def</ModuleDefinitionFile>
<ModuleDefinitionFile>.\mxml2.def</ModuleDefinitionFile>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
<DataExecutionPrevention />
<ImportLibrary>$(Configuration)\$(Platform)\$(ProductName)\mxml1.lib</ImportLibrary>
<ImportLibrary>$(Configuration)\$(Platform)\$(ProductName)\mxml2.lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
@ -151,15 +151,15 @@
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<OutputFile>$(Platform)\$(Configuration)\$(ProductName)\mxml1.dll</OutputFile>
<OutputFile>$(Platform)\$(Configuration)\$(ProductName)\mxml2.dll</OutputFile>
<IgnoreSpecificDefaultLibraries>oldnames.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
<ModuleDefinitionFile>.\mxml1.def</ModuleDefinitionFile>
<ModuleDefinitionFile>.\mxml2.def</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(OutDir)mxml1.pdb</ProgramDatabaseFile>
<ProgramDatabaseFile>$(OutDir)mxml2.pdb</ProgramDatabaseFile>
<SubSystem>Windows</SubSystem>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
<DataExecutionPrevention />
<ImportLibrary>$(Configuration)\$(Platform)\$(ProductName)\mxml1.lib</ImportLibrary>
<ImportLibrary>$(Configuration)\$(Platform)\$(ProductName)\mxml2.lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
@ -176,16 +176,16 @@
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<OutputFile>$(Platform)\$(Configuration)\$(ProductName)\mxml1.dll</OutputFile>
<OutputFile>$(Platform)\$(Configuration)\$(ProductName)\mxml2.dll</OutputFile>
<IgnoreSpecificDefaultLibraries>oldnames.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
<ModuleDefinitionFile>.\mxml1.def</ModuleDefinitionFile>
<ModuleDefinitionFile>.\mxml2.def</ModuleDefinitionFile>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
<DataExecutionPrevention />
<ImportLibrary>$(Configuration)\$(Platform)\$(ProductName)\mxml1.lib</ImportLibrary>
<ImportLibrary>$(Configuration)\$(Platform)\$(ProductName)\mxml2.lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
@ -199,7 +199,6 @@
<ClCompile Include="..\mxml-private.c" />
<ClCompile Include="..\mxml-search.c" />
<ClCompile Include="..\mxml-set.c" />
<ClCompile Include="..\mxml-string.c" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\mxml-private.h" />
@ -207,7 +206,7 @@
<ClInclude Include="config.h" />
</ItemGroup>
<ItemGroup>
<None Include="mxml1.def" />
<None Include="mxml2.def" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">

View File

@ -1,18 +1,16 @@
/*
* Xcode configuration file for Mini-XML, a small XML file parsing library.
*
* https://www.msweet.org/mxml
*
* Copyright © 2003-2021 by Michael R Sweet.
*
* Licensed under Apache License v2.0. See the file "LICENSE" for more
* information.
*/
/*
* Include necessary headers...
*/
//
// Xcode configuration file for Mini-XML, a small XML file parsing library.
//
// https://www.msweet.org/mxml
//
// Copyright © 2003-2024 by Michael R Sweet.
//
// Licensed under Apache License v2.0. See the file "LICENSE" for more
// information.
//
#ifndef MXML_CONFIG_H
# define MXML_CONFIG_H
# include <stdio.h>
# include <stdlib.h>
# include <string.h>
@ -20,55 +18,32 @@
# include <ctype.h>
/*
* Version number...
*/
//
// Version number
//
#define MXML_VERSION "Mini-XML v3.3.1"
# define MXML_VERSION "Mini-XML v4.0b1"
/*
* Inline function support...
*/
//
// Inline function support
//
# define inline
/*
* Long long support...
*/
//
// Long long support
//
# define HAVE_LONG_LONG_INT 1
/*
* Do we have the *printf() functions?
*/
//
// Have <pthread.h>?
//
#define HAVE_SNPRINTF 1
#define HAVE_VASPRINTF 1
#define HAVE_VSNPRINTF 1
# define HAVE_PTHREAD_H
/*
* Do we have the strXXX() functions?
*/
#define HAVE_STRDUP 1
#define HAVE_STRLCAT 1
#define HAVE_STRLCPY 1
/*
* Do we have threading support?
*/
#define HAVE_PTHREAD_H 1
/*
* Define prototypes for string functions as needed...
*/
extern char *_mxml_strdupf(const char *, ...);
extern char *_mxml_vstrdupf(const char *, va_list);
#endif // !MXML_CONFIG_H

View File

@ -3,7 +3,7 @@
archiveVersion = 1;
classes = {
};
objectVersion = 46;
objectVersion = 54;
objects = {
/* Begin PBXAggregateTarget section */
@ -32,7 +32,6 @@
272C00201E8C66C8007EBCAC /* mxml-private.h in Headers */ = {isa = PBXBuildFile; fileRef = 272C00141E8C66C8007EBCAC /* mxml-private.h */; settings = {ATTRIBUTES = (Private, ); }; };
272C00211E8C66C8007EBCAC /* mxml-search.c in Sources */ = {isa = PBXBuildFile; fileRef = 272C00151E8C66C8007EBCAC /* mxml-search.c */; };
272C00221E8C66C8007EBCAC /* mxml-set.c in Sources */ = {isa = PBXBuildFile; fileRef = 272C00161E8C66C8007EBCAC /* mxml-set.c */; };
272C00231E8C66C8007EBCAC /* mxml-string.c in Sources */ = {isa = PBXBuildFile; fileRef = 272C00171E8C66C8007EBCAC /* mxml-string.c */; };
272C00241E8C66C8007EBCAC /* mxml.h in Headers */ = {isa = PBXBuildFile; fileRef = 272C00181E8C66C8007EBCAC /* mxml.h */; settings = {ATTRIBUTES = (Public, ); }; };
272C00261E8C66CF007EBCAC /* config.h in Headers */ = {isa = PBXBuildFile; fileRef = 272C00251E8C66CF007EBCAC /* config.h */; };
272C00421E8C6B30007EBCAC /* testmxml.c in Sources */ = {isa = PBXBuildFile; fileRef = 272C00401E8C6B1B007EBCAC /* testmxml.c */; };
@ -87,7 +86,6 @@
272C00141E8C66C8007EBCAC /* mxml-private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "mxml-private.h"; path = "../mxml-private.h"; sourceTree = "<group>"; };
272C00151E8C66C8007EBCAC /* mxml-search.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "mxml-search.c"; path = "../mxml-search.c"; sourceTree = "<group>"; };
272C00161E8C66C8007EBCAC /* mxml-set.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "mxml-set.c"; path = "../mxml-set.c"; sourceTree = "<group>"; };
272C00171E8C66C8007EBCAC /* mxml-string.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "mxml-string.c"; path = "../mxml-string.c"; sourceTree = "<group>"; };
272C00181E8C66C8007EBCAC /* mxml.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = mxml.h; path = ../mxml.h; sourceTree = "<group>"; };
272C00251E8C66CF007EBCAC /* config.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = config.h; sourceTree = "<group>"; };
272C00391E8C6AEB007EBCAC /* testmxml */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = testmxml; sourceTree = BUILT_PRODUCTS_DIR; };
@ -127,6 +125,8 @@
272C000C1E8C66A2007EBCAC /* libmxml */ = {
isa = PBXGroup;
children = (
272C00181E8C66C8007EBCAC /* mxml.h */,
272C00141E8C66C8007EBCAC /* mxml-private.h */,
272C000D1E8C66C8007EBCAC /* mxml-attr.c */,
272C000E1E8C66C8007EBCAC /* mxml-entity.c */,
272C000F1E8C66C8007EBCAC /* mxml-file.c */,
@ -134,11 +134,8 @@
272C00111E8C66C8007EBCAC /* mxml-index.c */,
272C00121E8C66C8007EBCAC /* mxml-node.c */,
272C00131E8C66C8007EBCAC /* mxml-private.c */,
272C00141E8C66C8007EBCAC /* mxml-private.h */,
272C00151E8C66C8007EBCAC /* mxml-search.c */,
272C00161E8C66C8007EBCAC /* mxml-set.c */,
272C00171E8C66C8007EBCAC /* mxml-string.c */,
272C00181E8C66C8007EBCAC /* mxml.h */,
);
name = libmxml;
sourceTree = "<group>";
@ -228,7 +225,8 @@
272CFFFD1E8C6664007EBCAC /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 1310;
BuildIndependentTargetsInParallel = YES;
LastUpgradeCheck = 1520;
ORGANIZATIONNAME = "Michael R Sweet";
TargetAttributes = {
272C00041E8C6664007EBCAC = {
@ -281,7 +279,6 @@
272C00191E8C66C8007EBCAC /* mxml-attr.c in Sources */,
272C001D1E8C66C8007EBCAC /* mxml-index.c in Sources */,
272C001F1E8C66C8007EBCAC /* mxml-private.c in Sources */,
272C00231E8C66C8007EBCAC /* mxml-string.c in Sources */,
272C00211E8C66C8007EBCAC /* mxml-search.c in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
@ -319,6 +316,7 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES;
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
@ -352,9 +350,11 @@
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_IDENTITY = "-";
COPY_PHASE_STRIP = NO;
DEAD_CODE_STRIPPING = YES;
DEBUG_INFORMATION_FORMAT = dwarf;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
ENABLE_USER_SCRIPT_SANDBOXING = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DYNAMIC_NO_PIC = NO;
GCC_NO_COMMON_BLOCKS = YES;
@ -371,7 +371,7 @@
GCC_WARN_UNUSED_LABEL = YES;
GCC_WARN_UNUSED_PARAMETER = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.14;
MACOSX_DEPLOYMENT_TARGET = 11.0;
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
RUN_CLANG_STATIC_ANALYZER = YES;
@ -383,6 +383,7 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES;
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
@ -416,9 +417,11 @@
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_IDENTITY = "-";
COPY_PHASE_STRIP = NO;
DEAD_CODE_STRIPPING = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_USER_SCRIPT_SANDBOXING = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_NO_COMMON_BLOCKS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = NO;
@ -429,7 +432,7 @@
GCC_WARN_UNUSED_LABEL = YES;
GCC_WARN_UNUSED_PARAMETER = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.14;
MACOSX_DEPLOYMENT_TARGET = 11.0;
MTL_ENABLE_DEBUG_INFO = NO;
RUN_CLANG_STATIC_ANALYZER = YES;
SDKROOT = macosx;
@ -439,8 +442,12 @@
272C000A1E8C6664007EBCAC /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = RU58A2256H;
DYLIB_COMPATIBILITY_VERSION = 2.0.0;
DYLIB_CURRENT_VERSION = 2.0.0;
EXECUTABLE_PREFIX = "";
MACOSX_DEPLOYMENT_TARGET = "$(RECOMMENDED_MACOSX_DEPLOYMENT_TARGET)";
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Debug;
@ -448,8 +455,12 @@
272C000B1E8C6664007EBCAC /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = RU58A2256H;
DYLIB_COMPATIBILITY_VERSION = 2.0.0;
DYLIB_CURRENT_VERSION = 2.0.0;
EXECUTABLE_PREFIX = "";
MACOSX_DEPLOYMENT_TARGET = "$(RECOMMENDED_MACOSX_DEPLOYMENT_TARGET)";
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Release;
@ -458,8 +469,9 @@
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_IDENTITY = "-";
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = RU58A2256H;
MACOSX_DEPLOYMENT_TARGET = 10.12;
MACOSX_DEPLOYMENT_TARGET = "$(RECOMMENDED_MACOSX_DEPLOYMENT_TARGET)";
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Debug;
@ -468,8 +480,9 @@
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_IDENTITY = "-";
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = RU58A2256H;
MACOSX_DEPLOYMENT_TARGET = 10.12;
MACOSX_DEPLOYMENT_TARGET = "$(RECOMMENDED_MACOSX_DEPLOYMENT_TARGET)";
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Release;
@ -477,7 +490,9 @@
272C00461E8C6B5A007EBCAC /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = RU58A2256H;
MACOSX_DEPLOYMENT_TARGET = "$(RECOMMENDED_MACOSX_DEPLOYMENT_TARGET)";
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Debug;
@ -485,7 +500,9 @@
272C00471E8C6B5A007EBCAC /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = RU58A2256H;
MACOSX_DEPLOYMENT_TARGET = "$(RECOMMENDED_MACOSX_DEPLOYMENT_TARGET)";
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Release;