remove bit rotted premake5, update readme

This commit is contained in:
Lee Thomason
2021-05-15 19:40:53 -07:00
parent 97739352a7
commit be4eaaac8a
2 changed files with 7 additions and 131 deletions

View File

@@ -1,95 +0,0 @@
--
-- Requires: Premake 5 (https://premake.github.io/)
-- Usage: premake5 --file=premake5.lua [project / makefile format, refer to premake5 --help] --target=[target from below]
--
-- target option
tbl_target_values =
{
{ "windows", "VS2015 projects targeting Windows 32/64 bits" },
{ "macosx", "Xcode4 projects targeting OS X" },
}
newoption
{
trigger = "target",
description = "Build environment and target to generate projects for.",
allowed = tbl_target_values
}
-- validation
target_env = _OPTIONS["target"]
if not target_env then
print "Command-line option --target is required with one of the following values:"
for _, v in ipairs(tbl_target_values) do
print(v[1])
end
os.exit(1)
end
-- solution
workspace "tinyxml2"
tbl_platforms = {}
if target_env == "windows" then
tbl_platforms = {
"x86",
"x64",
}
elseif target_env == "macosx" then
tbl_platforms = {
"Universal64"
}
end
platforms(tbl_platforms)
tbl_configurations = {
"Debug",
"Release",
}
configurations(tbl_configurations)
sln_location = ".projects/"..target_env
location(sln_location)
bin_location = ".artifacts/"..target_env
obj_location = ".intermediate/"..target_env
for _, p in ipairs(tbl_platforms) do
for _, c in ipairs(tbl_configurations) do
local pc = p.."-"..c
filter{ "platforms:"..p, c }
targetdir(bin_location.."/"..pc)
libdirs(bin_location.."/"..pc)
objdir(obj_location.."/"..pc)
end
end
filter("not Release")
optimize "Debug"
symbols "On"
filter{ "Release" }
optimize "Full"
filter{}
-- projects
project "tinyxml2"
kind "staticlib"
files {
"tinyxml2.h",
"tinyxml2.cpp"
}
project "xmltest"
kind "consoleapp"
links {
"tinyxml2"
}
files {
"xmltest.cpp"
}

View File

@@ -61,18 +61,15 @@ browsers or have more complete XML needs, TinyXML-2 is not the parser for you.
TinyXML-1 vs. TinyXML-2
-----------------------
TinyXML-2 is now the focus of all development, well tested, and your
best choice between the two APIs. At this point, unless you are maintaining
legacy code, you should choose TinyXML-2.
TinyXML-2 long been the focus of all development. It is well tested
and should be used instead of TinyXML-1.
TinyXML-2 uses a similar API to TinyXML-1 and the same
rich test cases. But the implementation of the parser is completely re-written
to make it more appropriate for use in a game. It uses less memory, is faster,
and uses far fewer memory allocations.
TinyXML-2 has no requirement or support for STL. By returning `const char*`
TinyXML-2 can be much more efficient with memory usage. (TinyXML-1 did support
and use STL, but consumed much more memory for the DOM representation.)
TinyXML-2 has no requirement or support for STL.
Features
--------
@@ -262,32 +259,12 @@ There are 2 files in TinyXML-2:
And additionally a test file:
* xmltest.cpp
Simply compile and run. There is a visual studio 2019 project included, a simple Makefile,
an Xcode project, a Code::Blocks project, a cmake CMakeLists.txt, and a meson.build are
included to help you. The top of tinyxml.h even has a simple g++ command line if you are
using Unix/Linux/BSD and don't want to use a build system.
Generally speaking, the intent is that you simply include the files in your project
and build.
Using as a Meson Subproject
---------------------------
There is also a CMake build included.
Create a wrap file such as:
```ini
[wrap-git]
url = https://github.com/leethomason/tinyxml2.git
revision = 8.0.1 # this can be any commit-ish (tag, sha) or the special value `head`
```
or, if you prefer to not use git
```ini
[wrap-file]
directory = tinyxml2-8.0.1 # this is the name of the directory after de-compressing
source_url = https://github.com/leethomason/tinyxml2/archive/8.0.1.tar.gz
source_hash = sha256sum of compressed sources
```
in your project's `subprojects/` folder, and follow the meson documentation
for using fallbacks.
A Visual Studio project is included, but that is largely for developer convenience.
Building TinyXML-2 - Using vcpkg
--------------------------------
@@ -310,12 +287,6 @@ TinyXML-2 uses semantic versioning. http://semver.org/ Releases are now tagged i
Note that the major version will (probably) change fairly rapidly. API changes are fairly
common.
Documentation
-------------
The documentation is built with Doxygen, using the 'dox'
configuration file.
License
-------