Skip to content
Snippets Groups Projects
  1. Jan 26, 2021
  2. Dec 30, 2020
  3. Nov 20, 2020
  4. Oct 22, 2020
  5. Oct 09, 2020
    • Dylan Baker's avatar
      Add meson build system · c509d569
      Dylan Baker authored
      Meson is a build system somewhat like cmake, but without all of the
      rough edges. It supports many OSes, including all of the major ones, and
      a large number of C++ compilers.
      
      My interest isn't really in convincing people to use meson as the
      default here, but meson provides a subproject mechanism that can fetch
      external projects and build them along with the main project in a single
      configure/compile invocation. This is extremely useful for platforms
      that lack a (competent) package manager.
      
      As far as I know the meson build does everything the cmake build does,
      with one exception: generate the cmake config/version files. meson can
      generate these files, but only in simple cases, and not when using
      export targets like tinyxml2 does.
      c509d569
    • David Faure's avatar
      b5d3b93e
  6. Sep 27, 2020
    • Mark Mossberg's avatar
      cmake: Use a namespace for the tinyxml2 target in local export · 4001a468
      Mark Mossberg authored
      Previously in the locally (cmake build dir) exported cmake script,
      there was no namespace, so the targets would directly be available
      in the global namespace. Users would do something like:
      
          include(cmake/tinyxml2Targets.cmake)
          target_link_libraries(main tinyxml2)
      
      Now, a namespace is used (just like the cmake export that is exported
      to the system at the `install(EXPORT...)` command at the bottom of this
      file. Uses will now look like:
      
          include(cmake/tinyxml2Targets.cmake)
          target_link_libraries(main tinyxml2::tinyxml2)
      
      This is technically a minor breaking change. It will only affect users
      that actually use the *locally* export cmake targets script, which I
      expect to be fairly few (note that this is different from the system
      exported script). Also, it will only affect users that freshly
      build at this commit of tinyxml2, and have the cmake for their
      downstream project configured to load it. That cmake will need to be
      changed from the first snippet to the second snippet above.
      4001a468
  7. Sep 23, 2020
  8. Sep 17, 2020
  9. Sep 07, 2020
  10. Jul 30, 2020
  11. Jul 02, 2020
  12. Jun 17, 2020
    • Wolfgang Stöggl's avatar
      Fix debug postfix in pkgconfig file · 1e384d50
      Wolfgang Stöggl authored
      CMakeLists.txt uses set(CMAKE_DEBUG_POSTFIX "d") to distinguish
      between debug and release lib. Use this postfix also in the
      generated tinyxml2.pc file in case of a CMake Debug build.
      This results in the following contents of tinyxml2.pc
      - Release:
        Libs: -L${libdir} -ltinyxml2
      - Debug:
        Libs: -L${libdir} -ltinyxml2d
      1e384d50
  13. Jun 14, 2020
  14. Jun 01, 2020
  15. May 13, 2020
    • a-lunkov's avatar
      Suppress UndefinedBehaviorSanitizer warnings · a953b956
      a-lunkov authored
      I compiled tinyxml2 with the following changes to CMakeLists.txt:
      -------------------------------------------------- ------------------------------------------
      set (CMAKE_C_COMPILER "/ usr / local / bin / clang10")
      set (CMAKE_CXX_COMPILER "/ usr / local / bin / clang ++ 10")
      add_compile_options (-g)
      add_compile_options (-fsanitize = address, undefined, integer, alignment, bool, builtin, bounds, enum, function, nonnull-attribute, null, object-size, pointer-overflow, return, returns-nonnull-attribute, unreachable, vla-bound , vptr)
      
      set_source_files_properties (tinyxml2.cpp tinyxml2.h
                                  PROPERTIES COMPILE_FLAGS -fsanitize = address, undefined, integer, alignment, bool, builtin, bounds, enum, function, nonnull-attribute, null, object-size, pointer-overflow, return, returns-nonnull-attribute, unreachable, vla-bound , vptr)
      TARGET_LINK_LIBRARIES (tinyxml2 /usr/local/llvm10/lib/clang/10.0.0/lib/freebsd/libclang_rt.asan-x86_64.a /usr/local/llvm10/lib/clang/10.0.0/lib/freebsd/libang asan_cxx-x86_64.a /usr/local/llvm10/lib/clang/10.0.0/lib/freebsd/libclang_rt.ubsan_standalone-x86_64.a /usr/local/llvm10/lib/clang/10.0.0/lib/freebsd/ libclang_rt.ubsan_standalone_cxx-x86_64.a -lpthread)
      -------------------------------------------------- ------------------------------------------
      (Sorry for the dirty code.)
      
      And launched the xmltest utility:
      -------------------------------------------------- ------------------------------------------
      /home/qqq/17_tinyxml2/tinyxml2-master/tinyxml2.cpp:237:37: runtime error: implicit conversion from type 'char' of value -48 (8-bit, signed) to type 'unsigned char' changed the value to 208 (8-bit, unsigned)
      SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior /home/qqq/17_tinyxml2/tinyxml2-master/tinyxml2.cpp:237:37 in
      /home/qqq/17_tinyxml2/tinyxml2-master/tinyxml2.cpp:243:40: runtime error: implicit conversion from type 'char' of value -96 (8-bit, signed) to type 'unsigned char' changed the value to 160 (8-bit, unsigned)
      SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior /home/qqq/17_tinyxml2/tinyxml2-master/tinyxml2.cpp:243:40 in
      /home/qqq/17_tinyxml2/tinyxml2-master/tinyxml2.cpp:1912:39: runtime error: implicit conversion from type 'char' of value -48 (8-bit, signed) to type 'unsigned char' changed the value to 208 (8-bit, unsigned)
      SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior /home/qqq/17_tinyxml2/tinyxml2-master/tinyxml2.cpp:1912:39 in
      -------------------------------------------------- ------------------------------------------
      a953b956
    • a-lunkov's avatar
      Merge pull request #1 from leethomason/master · ba02706e
      a-lunkov authored
      Switch to master
      ba02706e
  16. Apr 23, 2020
  17. Apr 15, 2020
Loading