From be4eaaac8a072745aece34732d9cbc5f31fbcdae Mon Sep 17 00:00:00 2001 From: Lee Thomason Date: Sat, 15 May 2021 19:40:53 -0700 Subject: remove bit rotted premake5, update readme --- premake5.lua | 95 ------------------------------------------------------------ readme.md | 43 +++++---------------------- 2 files changed, 7 insertions(+), 131 deletions(-) delete mode 100644 premake5.lua diff --git a/premake5.lua b/premake5.lua deleted file mode 100644 index 33f019c..0000000 --- a/premake5.lua +++ /dev/null @@ -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" - } diff --git a/readme.md b/readme.md index 4e61166..1980c06 100644 --- a/readme.md +++ b/readme.md @@ -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 ------- -- cgit v1.2.3