It propagate strict compiler/linker options and Qt definitions using the
TinyOrm::CommonConfig interface library to the user code (highly
recommended; can also be set with the TINYORM_STRICT_MODE environment
variable).
- updated vcpkg ports
- updated docs
I can make working Qt6 MSVC build but it produces lot of warnings from
the Qt itself eg. for Qt5, and I don't even tried Linux g++/clang++.
So I'm leaving it disabled for now.
Revisited because the clang-cl with the MSVC compiler started having
100% cache hits. Previous versions didn't, now the versions are
Clang 15, MSVC 17.4, and ccache 4.7.4.
Added support for the MSVC debug information format flags selected by
an abstraction added in the CMake 3.25 if the compiler launcher is
the ccache.
In the CMake >=3.25 the CMAKE_MSVC_DEBUG_INFORMATION_FORMAT will be
set to the "$<$<CONFIG:Debug,RelWithDebInfo>:Embedded>" if the compiler
launcher is the ccache.
In the CMake <3.25 the old replace /Zi by /Z7 by the build config type
in the CMAKE_C/CXX_FLAGS_DEBUG/RELWITHDEBINFO CMake flags.
Be able to build with clang-cl with MSVC 2019/2022 but only with
inline constants.
- supported by both CMake and qmake 🎉
- updated docs support compilers
qmake specific:
- enhanced and fixed tiny_toolchain_requirement
- added clang-cl min. required version to tiny_toolchain_requirement
- enhanced winconf.pri
- updated conf.pri.examples
- added a new feature file the tiny_system_headers.prf, it unifies
tagging system headers
cmake specific:
- also added clang-cl min. required version as minReqClangClVersion
- for clang-cl set the INLINE_CONSTANTS to ON and don't show this
CMake option
Use utf8 on MinGW and ANSI with msvc.
The core of the problem is in the $$cat() and write_file() qmake
functions they don't know process UTF-8 encoded files, they use
the ANSI encoding.
While ORM can be disabled, Orm::Utils has been split into Orm::Utils
and Orm::Tiny::Utils (Orm::Tiny::TinyUtils alias).
So when ORM is disabled then utils used only in the ORM will be
excluded from a final build.
- bugfix cmake undefined ORM option in TinySources
Overrides default detection logic for thread_local and disable it
forcefully.
In qmake can be configured by "CONFIG+=disable_thread_local".
For Cmake DISABLE_THREAD_LOCAL option was added.
- initial g++/clang build, ctest on MSYS2 UCRT64 on Windows Server 2022
- initial cmake build/ctest on Ubuntu 20.40
- initial cmake build/ctest on MSVC on Windows Server 2019
changed driver to QPSQL in tst_databasemanager
This avoids crash when QMYSQL driver's dll is unavailable.
QMYSQL driver is not shipped by default by Qt Windows MSVC installer.