Files
TinyORM/drivers/conf.pri.example
silverqx efa0c4e96c qmake/docs updated comments
[skip ci]
2024-08-26 20:05:21 +02:00

130 lines
3.9 KiB
Plaintext

# Dependencies include and library paths
# ---
disable_autoconf {
# load(private/tiny_system_includepath)
load(private/tiny_find_packages)
}
# MinGW
win32-g++|win32-clang-g++ {
# Enable ccache wrapper
# CONFIG *= ccache
# Use alternative linker (for both GCC and Clang)
# CONFIG *= use_lld_linker does not work on MinGW
QMAKE_LFLAGS *= -fuse-ld=lld
# Nothing to do, auto-configuration is enabled
!disable_autoconf: return()
# Includes and Libraries
# vcpkg - range-v3 and tabulate
tiny_find_vcpkg()
# tiny_find_vcpkg($$quote(C:/msys64/home/xyz/Code/vcpkg/), x64-mingw-dynamic)
# tiny_add_system_includepath(\
# $$quote(C:/msys64/home/xyz/Code/vcpkg/installed/x64-mingw-dynamic/include/))
# MariaDB C library
# On MSYS2 there is only the MariaDB C library (no MySQL C library)
# Find the MySQL C library and add it on system include path and library path
tiny_find_mysql()
# Shared build - find with the pkg-config (preferred)
# CONFIG(shared, dll|shared|static|staticlib) | \
# CONFIG(dll, dll|shared|static|staticlib) {
# !link_pkgconfig_off {
# CONFIG *= link_pkgconfig
# PKGCONFIG *= libmariadb
# }
# else: \
# LIBS_PRIVATE += -lmariadb
# }
# # Static build
# else: \
# if(CONFIG(static, dll|shared|static|staticlib) | \
# CONFIG(staticlib, dll|shared|static|staticlib)): \
# LIBS_PRIVATE += -lmariadb.dll
# Or add manually (use only one method, above or this manual method)
# # For shared build
# LIBS_PRIVATE += -lmariadb
# # For static build
# LIBS_PRIVATE += -lmariadb.dll
}
# Windows (excluding MinGW)
else:win32-msvc|win32-clang-msvc {
# Enable ccache wrapper
# CONFIG *= ccache
# Nothing to do, auto-configuration is enabled
!disable_autoconf: return()
# Explicitly specify the MySQL root installation path using the $$TINY_MYSQL_ROOT
# !disable_autoconf {
# # Used in the tiny_find_mysql()
# TINY_MYSQL_ROOT = $$quote($$(ProgramFiles)/MySQL/MySQL Server 8.1/)
# return()
# }
# Includes and Libraries
# vcpkg - range-v3 and tabulate
tiny_find_vcpkg()
# tiny_find_vcpkg($$quote(E:/xyz/vcpkg/), x64-windows)
# tiny_add_system_includepath($$quote(E:/xyz/vcpkg/installed/x64-windows/include/))
# MySQL C library
# Find the MySQL C library and add it on system include path and library path
tiny_find_mysql()
# tiny_find_mysql($$quote($$(ProgramFiles)/MySQL/MySQL Server 8.1/))
# tiny_add_system_includepath(\
# $$quote(C:/Program Files/MySQL/MySQL Server 8.1/include/))
# LIBS_PRIVATE += $$quote(-LC:/Program Files/MySQL/MySQL Server 8.1/lib/)
# LIBS_PRIVATE += -llibmysql
}
# Unix
else:unix {
# Use LLD linker for Clang
clang: CONFIG *= use_lld_linker
else: CONFIG *= use_gold_linker
# Or use the mold linker
# QMAKE_LFLAGS *= -fuse-ld=mold
# Nothing to do, auto-configuration is enabled
!disable_autoconf: return()
# Includes and Libraries
# vcpkg - range-v3 and tabulate
tiny_find_vcpkg()
# tiny_find_vcpkg($$quote(/home/xyz/Code/c/vcpkg/installed/x64-linux/include/), \
# x64-linux)
# tiny_add_system_includepath(\
# $$quote(/home/xyz/Code/c/vcpkg/installed/x64-linux/include/))
# MySQL C library
# Find the MySQL C library and add it on system include path and library path
tiny_find_mysql()
# Find with pkg-config (preferred)
# !link_pkgconfig_off {
# CONFIG *= link_pkgconfig
# # Pick only one
# PKGCONFIG *= mysqlclient
## PKGCONFIG *= libmariadb
# }
# else: \
# # Pick only one
# LIBS_PRIVATE += -lmysqlclient
## LIBS_PRIVATE += -lmariadb
# Or add manually (use only one method, above or this manual method)
# Pick only one
# LIBS_PRIVATE += -lmysqlclient
# LIBS_PRIVATE += -lmariadb
}