Because maria client can't connect to the MySQL >= 8.0.34 or >=8.1,
there is some problem in TLS 1.2 and 1.3 connection, it can't select
correct cipher. I will revert this back in the future when it will be
fixed.
Tag: to revert (in future)
The tiny_autoconf and tiny_dotenv qmake CONFIG were added in the TinyORM
v0.34.0. These new features allow to auto-configure TinyORM, and with
their help, the conf.pri files can be skipped entirely. The
tiny_autoconf is designed to find the vcpkg installation and tiny_dotenv
to include the .env and .env.$$QMAKE_PLATFORM files in the project's
root folder. They can be configured using qmake and environment
variables, and they also contain some guessing logic if these variables
are not defined.
These are qmake and environment variables that affect the
auto-configuration feature:
- TINY_VCPKG_ROOT - path to the vcpkg installation folder (if not
defined then it tries to use the VCPKG_ROOT environment variable)
- TINY_VCPKG_TRIPLET - vcpkg triplet to use
(vcpkg/installed/$$TINY_VCPKG_TRIPLET/); if not defined then it tries
to guess the vcpkg triplet on the base of the current compiler and OS
(QMAKESPEC)
- TINY_MYSQL_ROOT - path to the MySQL installation folder (if not
defined then it tries to guess the MySQL installation folder:
$$(ProgramFiles)/MySQL/MySQL Server (8.1|8.0|5.7)/)
You can set these variables in the .env or .conf files (recommended), in
the qmake file (or wherever you want), or as environment variables.
These variables are set after the auto-configuration is done:
- TINY_VCPKG_INCLUDE - path to vcpkg include folder
(vcpkg/installed/<triplet>/include/)
- TINY_MYSQL_INCLUDE - path to the MySQL include folder (MySQL Server
8.1/include/)
- TINY_MYSQL_LIB - path to the MySQL lib folder (MySQL Server
8.1/include/)
The TINY_MYSQL_INCLUDE and TINY_MYSQL_LIB are only set on win32 except
mingw.
It allows to load the .env and .env.$$TINY_DOTENV_PLATFORM files. These
files are included as early as possible so they can setup or affect
other configuration steps.
The .env file is included always and the .env.$$TINY_DOTENV_PLATFORM
file is included only for the current platform.
The $$TINY_DOTENV_PLATFORM qmake variable is auto-detected from
the $$QMAKE_PLATFORM.
The opposite thing to this feature are conf.pri files in which you can
override the entire configuration because they are included as late
as possible.
These configuration .pri files were greatly enhanced, they detect and
configure everything now.
- added comment at the beginning
- enhanced linking against TinyORM library
- configure also the vcpkg
Others:
- added the tiny_system_includepath.prf for cross-platform INCLUDEPATH
- added the tiny_vcpkg.prf that helps with vcpkg configuration
Moved the LIBS += -lTinyOrm outside of the exists($$TINYORM_BUILD_TREE)
condition because the TinyOrm library can be on the system path or
LD_LIBRARY_PATH so don't depend on the TINYORM_BUILD_TREE.
- also formatting