51 Commits

Author SHA1 Message Date
silverqx
ea71bdfdb9 qmake MSYS2 disabled LLD linker override for g++
LLD isn't faster than bfd, I also did linking when bfd was faster than
LLD.

 - also updated docs

[skip ci]
2024-08-26 20:08:23 +02:00
silverqx
efa0c4e96c qmake/docs updated comments
[skip ci]
2024-08-26 20:05:21 +02:00
silverqx
afe299e6b0 upgraded to MySQL v9.0
- workflows, tools, docs, qmake, CMake, ...
2024-07-03 16:52:11 +02:00
silverqx
e24064b7fd qmake moved all feature to private/ folder
Moved all features which aren't used through CONFIG+=xyz and are loaded
using the load(private/xyz) function to the qmake/features/private/
folder.

Currently, the qmake/features/ folder contains only features which
should be used using the CONFIG+= qmake variable.
2024-06-25 13:44:52 +02:00
silverqx
1c67da6b7d qmake used ccache instead tiny_ccache_win32
- updated docs
2024-06-03 13:50:10 +02:00
silverqx
720b3f9e07 upgraded to MySQL v8.4
- docs
 - qmake auto-detection
 - tools
 - workflows

[skip ci]
2024-05-14 15:39:33 +02:00
silverqx
9ff1d71790 upgraded to MySQL v8.3 2024-02-05 16:27:46 +01:00
silverqx
57a33e503a qmake updated comment 2023-09-09 09:15:53 +02:00
silverqx
61733d6881 qmake whitespace 2023-09-09 09:15:52 +02:00
silverqx
1a3dc45221 qmake commented useless load() 2023-09-09 09:15:52 +02:00
silverqx
76b652522c qmake added disable_autoconf
Removed the tiny_autoconf, it's still enabled by default, and instead
added the disable_autoconf qmake configuration feature.

This change was made to follow name and logic convention of another
qmake configuration options.

 - updated docs
2023-09-09 09:15:51 +02:00
silverqx
0a125a537b qmake fixtypo 2023-08-18 17:52:42 +02:00
silverqx
0337be8d2f qmake fixtypo 2023-08-18 17:52:42 +02:00
silverqx
1680bbc482 fixtypo in conf.pri.example, TinyOrm.pri, tom.pri 2023-08-18 17:52:40 +02:00
silverqx
24fb2d395e qmake bugix missing load() and CONFIG 2023-08-18 17:52:40 +02:00
silverqx
b77553fc03 qmake used LIBS_PRIVATE for MySQL C connector 2023-08-11 18:42:33 +02:00
silverqx
ac299bc199 qmake fixtypo 2023-08-11 18:42:33 +02:00
silverqx
312687f5ac qmake updated conf.pri.example (mariadb) 2023-08-11 18:42:33 +02:00
silverqx
01fc5af3b0 qmake renamed to tiny_ccache_win32 2023-08-11 18:42:32 +02:00
silverqx
d0d4e2b628 qmake added tiny_autoconf feature
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.
2023-08-09 20:34:18 +02:00
silverqx
e74d987bf5 added mold linker to conf.pri.example
[skip ci]
2023-04-02 13:26:31 +02:00
silverqx
8a90bd8653 qmake disabled tiny_ccache in example configs 2022-07-17 11:15:53 +02:00
silverqx
109ed60913 added qmake ccache support on Windows
The ccache can be enable using the "CONFIG*=tiny_ccache" feature.

 - updated docs
2022-07-13 13:56:23 +02:00
silverqx
9dcb3facf8 added make:model command 😎
Only simple model generation without relations.

 - updated docs TINY/TOM_MODELS_DIR
2022-06-25 09:44:36 +02:00
silverqx
8acafdebd3 code formatting 2022-06-05 18:13:53 +02:00
silverqx
c1f10c1464 qmake removed all xyz: { and revisited all xyz: \ 2022-06-05 09:56:45 +02:00
silverqx
43335a6ca4 updated conf.pri.example/s
[skip ci]
2022-06-04 15:10:52 +02:00
silverqx
4f1c931eae added support for clang-cl
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
2022-06-04 09:23:53 +02:00
silverqx
bb731e1c22 added make:seeder command 👌
This command is very similar to the make:migration command except
the --create and --table command-line parameters. It provides the same
functionality but for seeders.

 - updated docs TINYTOM_SEEDERS_DIR macro and TOM_SEEDERS_DIR for cmake
2022-05-17 14:50:20 +02:00
silverqx
306796bc29 renamed TINY/TOM_MIGRATIONS_DIR
Renamed cmake option and macro from the TINY/TOM_MIGRATIONS_PATH to the
TINY/TOM_MIGRATIONS_DIR.

 - updated documentation
 - extracted init. code for the TINYTOM_MIGRATIONS_DIR to the own cmake
   macro
2022-05-10 18:16:31 +02:00
silverqx
e574bee5d8 fixtypo 2022-05-10 18:13:12 +02:00
silverqx
3e98b16bd3 udpated comments 2022-05-03 13:51:06 +02:00
silverqx
373937958c provide custom migrations path to the tom example
User can provide a custom migrations path for the make:migration
command.

Default path is at database/migrations relative to the tom example
executable.

This allows to use the tom example as a real migration application and
the user doesn't have to create his own migration project.

Using:

 - TomApplication::migrationsPath()
 - TINYTOM_MIGRATIONS_PATH preprocessor macro, will be stringified
 - TOM_MIGRATIONS_PATH CMake PATH option
2022-04-26 19:56:48 +02:00
silverqx
db45b4bd51 updated conf.pri.example 2022-04-21 16:22:49 +02:00
silverqx
4701806be3 qmake conf.pri.example fix example path
- also removed needles code
2021-12-21 17:27:57 +01:00
silverqx
25db290edd qmake added ccache feature
Added tiny_ccache.prf feature, can be used in CONFIG to enable ccache.
2021-12-08 12:27:36 +01:00
silverqx
93a3311e72 qmake updated conf.pri.example for static build
Static build on MinGW.
2021-10-09 09:32:21 +02:00
silverqx
5d2f6f9db3 qmake add forward slashes for folders 2021-10-03 19:48:46 +02:00
silverqx
0c28e1b868 fixtypo 2021-09-22 12:19:50 +02:00
silverqx
a97de0b1b9 qmake moved pkg-config to conf.pri
qmake's pkg-config feature throws error when it does not find dependency
and that is not good.
2021-09-22 12:02:49 +02:00
silverqx
44099b1a59 added support for MinGW GCC and Clang for qmake
- also change win32-msvc* to win32-msvc
 - enhanced generation of -isystem for Qt components, it's
   cross-platform
2021-09-22 10:24:01 +02:00
silverqx
d8a741e7aa initial support for mingw64 qmake builds 2021-09-18 16:52:48 +02:00
silverqx
41b868f2eb todos and comments 2021-09-05 12:17:58 +02:00
silverqx
8abc955261 enabled W4 warning level on msvc
Used /external:anglebrackets for external/system header files
2021-09-04 14:55:05 +02:00
silverqx
d6379e3dc3 added newly added flags also to qmake build
Newly added flags from cmake build added also to the qmake build.
2021-09-04 07:56:35 +02:00
silverqx
7d7ac6656d enhanced qmake build 2021-08-31 09:14:13 +02:00
silverqx
48175927c7 updated conf.pri examples 2021-06-03 10:54:20 +02:00
silverqx
95a40ed5ff use lld if used clang compiler 2021-05-11 09:19:09 +02:00
silverqx
488d06a9b6 removed includepath from models.pri
- whitespaces
 - todo
2021-05-07 15:29:42 +02:00
silverqx
49eae88995 added partial gcc compatibility
I still was not able to compile it on gcc because of the cyclic
dependency of models.

 - removed zero from dll names where possible
2021-05-07 11:14:24 +02:00