* update pugixml
Improvements:
Many xml_attribute:: and xml_node:: functions now transparently support std::string_view and std::string when C++17 support is detected.
CMake improvements:
Improve pkg-config file generation for NixOS
PUGIXML_BUILD_APPLE_FRAMEWORK CMake option can be used to build pugixml as .xcframework
PUGIXML_INSTALL CMake option can be used to disable installation targets
Compatibility improvements:
Fix clang/gcc warnings -Wzero-as-null-pointer-constant, -Wuseless-cast, -Wshorten-64-to-32
Fix unreferenced function warnings in PUGIXML_NO_STL configuration
Fix CMake 3.31 deprecation warnings
Stop using deprecated throw() when noexcept is available
Improvements:
xml_attribute::set_name and xml_node::set_name now have overloads that accept pointer to non-null-terminated string and size
Implement parse_merge_pcdata parsing mode in which PCDATA contents is merged into a single node when original document had comments that were skipped during parsing
xml_document::load_file now returns a more consistent error status when given a path to a folder
Bug fixes:
Fix assertion in XPath number→string conversion when using non-English locales
Fix PUGIXML_STATIC_CRT CMake option to correctly select static CRT when using MSVC and recent CMake
Compatibility improvements:
Fix GCC 2.95/3.3 builds
Fix CMake 3.27 deprecation warnings
Fix XCode 14 sprintf deprecation warning when compiling in C++03 mode
Fix clang/gcc warnings -Wweak-vtables, -Wreserved-macro-identifier
* Update CMakeLists.txt
* pugixml: upgrade to v1.15
* pugixml: Add export directives for non-windows platforms
* pugixml: replace NULL by nullptr.
---------
Co-authored-by: Andrea <realeandrea@yahoo.it>
Co-authored-by: mosfet80 <10235105+mosfet80@users.noreply.github.com>
* Update tinyusdz to latest git commit
* Update patch file
* Bump to latest tinyusdz version
* Remove unused var (fix broken build for clients treating warnings-as-errors)
---------
Co-authored-by: Steve M <praktique-tellypresence@yahoo.com>
* Use CMake options to control M3D source compilation
* Revert .cpp file changes (better to treat them as external 3rd party code)
* Improve documentation
---------
Co-authored-by: Steve M <praktique-tellypresence@yahoo.com>
* Added ADD condition in poly2tri dll_symbol.h to only define macros for dynamic library linking if assimp is ordered to build as DLL
* Reverted last commit to handle this issue in a better way.
* added P2T_STATIC_EXPORTS to compile definitions when building assimp as DLL
---------
Co-authored-by: Kim Kulling <kimkulling@users.noreply.github.com>
* Squash development commits for PR
* Fix failing build on armeabi-v7a via android NDK
* Update with blendshape support
* Migrate to auto-cloning and patching tinyusdz (instead of manually copying files)
* Update to latest rendermesh-refactor branch commit
* Remove tracked file
* Update to use recent commit to "dev" branch
"rendermesh-refactor" was merged to "dev" around 9 May 2024 but merge
was not obvious from commit messages
* Add UNUSED() macro
(cherry picked from commit d89fe8f034c353cc5cc5b3ac78cd8845e006de38)
* Update tinyusdz branch
* Prevent per-ABI (x86, x86_64 etc) clone on android
* Add verbose logging cmake option
* Fix macro and patch
* Address compiler warnings
* Address compiler warnings
* Address compiler warnings
* Attempt prevent re-clone/re-patch once downloaded by any ABI build
* Disable tinyusdz clone/build by default
assimp github PR auto-CI checks clone/build the tinyusdz code, and reject PR
due to compiler warnings in the 3rd party external tinyusdz project
---------
Co-authored-by: Steve M <praktique-tellypresence@yahoo.com>
Added cmake code to remove warnings for array-bounds and stringop-overflow specifically for MDLLoader.cpp on GCC 13 and above.
Co-authored-by: Kim Kulling <kimkulling@users.noreply.github.com>
* CMake: Mark draco as a private dependency since assimp does not publicly expose its interface.
* CMake: Allow linking draco statically if ASSIMP_BUILD_DRACO_STATIC is set.
This let's cmake create config files that allow linking to minizip even when
in an unrelated prefix. This can happen with package managers that install
every package into their own prefix, such as [Spack](https://spack.io).
The previously-specified paths were only correct for a static library
build.
I therefore fenced off that code to be specific to static library
builds.
For shared library builds, I added a generator-expression-based
alternative.
Annoyingly, this won't work with static library builds, so we don't get
the concise, reliable version in all circumstances.
I've avoided modifying any of the paths anything ends up at to avoid
breaking changes.
Resolves https://github.com/assimp/assimp/issues/4269