Compare commits
23 Commits
libarchive
...
master
Author | SHA1 | Date |
---|---|---|
Martchus | ad2ea47d36 | |
Martchus | f50e615ee0 | |
Martchus | 2664affadc | |
Martchus | 684e0b0344 | |
Martchus | d180667293 | |
Martchus | 13dfb81ff2 | |
Martchus | 5fe20bc406 | |
Martchus | 054612f753 | |
Martchus | 14e9561e16 | |
Martchus | beee01c147 | |
Martchus | 9bb224c2ba | |
Martchus | d2928517c5 | |
Martchus | 0c652a774e | |
Martchus | 9c687bd723 | |
Martchus | 65ffed8151 | |
Martchus | 957c044e63 | |
Martchus | a4c18017b7 | |
Martchus | 73a837962d | |
Martchus | 8502d1bc2a | |
Martchus | afc3413e9c | |
Martchus | ae908283a0 | |
Martchus | d31092b7d9 | |
Martchus | dfbf300c65 |
|
@ -96,10 +96,6 @@ set(CMAKE_TEMPLATE_FILES
|
||||||
cmake/templates/global.h.in
|
cmake/templates/global.h.in
|
||||||
cmake/templates/version.h.in
|
cmake/templates/version.h.in
|
||||||
cmake/templates/template.pc.in)
|
cmake/templates/template.pc.in)
|
||||||
set(SCRIPT_FILES)
|
|
||||||
if (MINGW)
|
|
||||||
list(APPEND SCRIPT_FILES scripts/wine.sh)
|
|
||||||
endif ()
|
|
||||||
if (WIN32)
|
if (WIN32)
|
||||||
list(APPEND CMAKE_TEMPLATE_FILES cmake/templates/windows.rc.in cmake/templates/windows-cli-wrapper.rc.in
|
list(APPEND CMAKE_TEMPLATE_FILES cmake/templates/windows.rc.in cmake/templates/windows-cli-wrapper.rc.in
|
||||||
cmake/templates/cli-wrapper.cpp)
|
cmake/templates/cli-wrapper.cpp)
|
||||||
|
@ -121,7 +117,7 @@ set(META_APP_URL "https://github.com/${META_APP_AUTHOR}/${META_PROJECT_NAME}")
|
||||||
set(META_APP_DESCRIPTION "Useful C++ classes and routines such as argument parser, IO and conversion utilities")
|
set(META_APP_DESCRIPTION "Useful C++ classes and routines such as argument parser, IO and conversion utilities")
|
||||||
set(META_VERSION_MAJOR 5)
|
set(META_VERSION_MAJOR 5)
|
||||||
set(META_VERSION_MINOR 24)
|
set(META_VERSION_MINOR 24)
|
||||||
set(META_VERSION_PATCH 7)
|
set(META_VERSION_PATCH 9)
|
||||||
|
|
||||||
# find required 3rd party libraries
|
# find required 3rd party libraries
|
||||||
include(3rdParty)
|
include(3rdParty)
|
||||||
|
|
|
@ -22,14 +22,23 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "libc++",
|
"name": "clang",
|
||||||
"inherits": "default",
|
"inherits": "default",
|
||||||
"displayName": "Use clang++ and libc++",
|
"displayName": "Use clang/clang++",
|
||||||
"description": "Enforces use of clang++ and libc++ even when it is not the system default",
|
"description": "Enforces use of clang/clang++ even when it is not the system default",
|
||||||
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/default-no-webview",
|
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/default-clang",
|
||||||
"cacheVariables": {
|
"cacheVariables": {
|
||||||
"CMAKE_C_COMPILER": {"type": "STRING", "value": "clang"},
|
"CMAKE_C_COMPILER": {"type": "STRING", "value": "clang"},
|
||||||
"CMAKE_CXX_COMPILER": {"type": "STRING", "value": "clang++"},
|
"CMAKE_CXX_COMPILER": {"type": "STRING", "value": "clang++"}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "libc++",
|
||||||
|
"inherits": "clang",
|
||||||
|
"displayName": "Use clang/clang++ and libc++",
|
||||||
|
"description": "Enforces use of clang/clang++ and libc++ even when it is not the system default",
|
||||||
|
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/default-clang-libc++",
|
||||||
|
"cacheVariables": {
|
||||||
"CMAKE_CXX_FLAGS": {"type": "STRING", "value": "$env{CXXFLAGS} -stdlib=libc++"}
|
"CMAKE_CXX_FLAGS": {"type": "STRING", "value": "$env{CXXFLAGS} -stdlib=libc++"}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -81,6 +90,13 @@
|
||||||
"CONFIGURATION_TARGET_SUFFIX": {"type": "STRING", "value": "devel"}
|
"CONFIGURATION_TARGET_SUFFIX": {"type": "STRING", "value": "devel"}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "devel-clang",
|
||||||
|
"inherits": ["devel", "clang"],
|
||||||
|
"displayName": "Development config using clang",
|
||||||
|
"description": "Combination of devel and libc++",
|
||||||
|
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/devel-clang"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "devel-libc++",
|
"name": "devel-libc++",
|
||||||
"inherits": ["devel", "libc++"],
|
"inherits": ["devel", "libc++"],
|
||||||
|
@ -116,6 +132,13 @@
|
||||||
"CMAKE_UNITY_BUILD": {"type": "BOOL", "value": "ON"}
|
"CMAKE_UNITY_BUILD": {"type": "BOOL", "value": "ON"}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "devel-clang-qt6",
|
||||||
|
"inherits": ["qt6", "devel-clang"],
|
||||||
|
"displayName": "Development config using clang and Qt 6",
|
||||||
|
"description": "Combination of qt6 and devel-clang",
|
||||||
|
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/devel-clang-qt6"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "devel-libc++-qt6",
|
"name": "devel-libc++-qt6",
|
||||||
"inherits": ["qt6", "devel-libc++"],
|
"inherits": ["qt6", "devel-libc++"],
|
||||||
|
@ -163,8 +186,41 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "arch-x86_64-w64-mingw32",
|
"name": "arch-*-w64-mingw32",
|
||||||
"inherits": ["no-webview", "no-kde"],
|
"inherits": ["no-webview", "no-kde"],
|
||||||
|
"environment": {
|
||||||
|
"CPPFLAGS": "-D_FORTIFY_SOURCE=3 -D_GLIBCXX_ASSERTIONS",
|
||||||
|
"CFLAGS": "$env{CPPFLAGS} -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4 -Wformat -Werror=format-security -fcf-protection",
|
||||||
|
"CXXFLAGS": "$env{CPPFLAGS} -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4 -Wformat -Werror=format-security -fcf-protection",
|
||||||
|
"LDFLAGS": "-Wl,-O1,--sort-common,--as-needed -fstack-protector"
|
||||||
|
},
|
||||||
|
"cacheVariables": {
|
||||||
|
"BUILD_SHARED_LIBS": {"type": "BOOL", "value": "ON"},
|
||||||
|
"VERSIONED_MINGW_LIBRARIES": {"type": "BOOL", "value": "ON"},
|
||||||
|
"ENABLE_TARGETS_FOR_MINGW_CROSS_PACKAGING": {"type": "BOOL", "value": "ON"}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "arch-i686-w64-mingw32",
|
||||||
|
"inherits": "arch-*-w64-mingw32",
|
||||||
|
"displayName": "Target i686-w64-mingw32 using Arch Linux's mingw-w64 packaging",
|
||||||
|
"description": "Build targeting i686-w64-mingw32, paths and flags are specific to Arch Linux's mingw-w64 packaging",
|
||||||
|
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-i686-w64-mingw32",
|
||||||
|
"toolchainFile": "/usr/share/mingw/toolchain-i686-w64-mingw32.cmake",
|
||||||
|
"environment": {
|
||||||
|
"CROSS_TOOL_PREFIX": "i686-w64-mingw32-",
|
||||||
|
"CROSS_INSTALL_PREFIX": "/usr/i686-w64-mingw32",
|
||||||
|
"PATH": "$env{CROSS_INSTALL_PREFIX}/bin:$penv{PATH}"
|
||||||
|
},
|
||||||
|
"cacheVariables": {
|
||||||
|
"CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES": {"type": "PATH", "value": "$env{CROSS_INSTALL_PREFIX}/include"},
|
||||||
|
"CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES": {"type": "PATH", "value": "$env{CROSS_INSTALL_PREFIX}/include"},
|
||||||
|
"CMAKE_CROSSCOMPILING_EMULATOR": {"type": "PATH", "value": "/usr/bin/i686-w64-mingw32-wine"}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "arch-x86_64-w64-mingw32",
|
||||||
|
"inherits": "arch-*-w64-mingw32",
|
||||||
"displayName": "Target x86_64-w64-mingw32 using Arch Linux's mingw-w64 packaging",
|
"displayName": "Target x86_64-w64-mingw32 using Arch Linux's mingw-w64 packaging",
|
||||||
"description": "Build targeting x86_64-w64-mingw32, paths and flags are specific to Arch Linux's mingw-w64 packaging",
|
"description": "Build targeting x86_64-w64-mingw32, paths and flags are specific to Arch Linux's mingw-w64 packaging",
|
||||||
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-x86_64-w64-mingw32",
|
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-x86_64-w64-mingw32",
|
||||||
|
@ -172,20 +228,28 @@
|
||||||
"environment": {
|
"environment": {
|
||||||
"CROSS_TOOL_PREFIX": "x86_64-w64-mingw32-",
|
"CROSS_TOOL_PREFIX": "x86_64-w64-mingw32-",
|
||||||
"CROSS_INSTALL_PREFIX": "/usr/x86_64-w64-mingw32",
|
"CROSS_INSTALL_PREFIX": "/usr/x86_64-w64-mingw32",
|
||||||
"CPPFLAGS": "-D_FORTIFY_SOURCE=3 -D_GLIBCXX_ASSERTIONS",
|
|
||||||
"CFLAGS": "$env{CPPFLAGS} -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4 -Wformat -Werror=format-security -fcf-protection",
|
|
||||||
"CXXFLAGS": "$env{CPPFLAGS} -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4 -Wformat -Werror=format-security -fcf-protection",
|
|
||||||
"LDFLAGS": "-Wl,-O1,--sort-common,--as-needed -fstack-protector",
|
|
||||||
"PATH": "$env{CROSS_INSTALL_PREFIX}/bin:$penv{PATH}"
|
"PATH": "$env{CROSS_INSTALL_PREFIX}/bin:$penv{PATH}"
|
||||||
},
|
},
|
||||||
"cacheVariables": {
|
"cacheVariables": {
|
||||||
"BUILD_SHARED_LIBS": {"type": "BOOL", "value": "ON"},
|
|
||||||
"VERSIONED_MINGW_LIBRARIES": {"type": "BOOL", "value": "ON"},
|
|
||||||
"CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES": {"type": "PATH", "value": "$env{CROSS_INSTALL_PREFIX}/include"},
|
"CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES": {"type": "PATH", "value": "$env{CROSS_INSTALL_PREFIX}/include"},
|
||||||
"CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES": {"type": "PATH", "value": "$env{CROSS_INSTALL_PREFIX}/include"},
|
"CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES": {"type": "PATH", "value": "$env{CROSS_INSTALL_PREFIX}/include"},
|
||||||
"CMAKE_CROSSCOMPILING_EMULATOR": {"type": "PATH", "value": "/usr/bin/x86_64-w64-mingw32-wine"}
|
"CMAKE_CROSSCOMPILING_EMULATOR": {"type": "PATH", "value": "/usr/bin/x86_64-w64-mingw32-wine"}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "arch-i686-w64-mingw32-static",
|
||||||
|
"inherits": "arch-i686-w64-mingw32",
|
||||||
|
"displayName": "Target i686-w64-mingw32 using Arch Linux's mingw-w64 packaging (static)",
|
||||||
|
"description": "Build targeting i686-w64-mingw32, paths and flags are specific to Arch Linux's mingw-w64 packaging",
|
||||||
|
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-i686-w64-mingw32-static",
|
||||||
|
"toolchainFile": "/usr/share/mingw/toolchain-i686-w64-mingw32-static.cmake",
|
||||||
|
"cacheVariables": {
|
||||||
|
"BUILD_SHARED_LIBS": {"type": "BOOL", "value": "OFF"},
|
||||||
|
"CMAKE_FIND_LIBRARY_SUFFIXES": {"type": "STRING", "value": ".a;.lib"},
|
||||||
|
"STATIC_LIBRARY_LINKAGE": {"type": "BOOL", "value": "ON"},
|
||||||
|
"STATIC_LINKAGE": {"type": "BOOL", "value": "ON"}
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "arch-x86_64-w64-mingw32-static",
|
"name": "arch-x86_64-w64-mingw32-static",
|
||||||
"inherits": "arch-x86_64-w64-mingw32",
|
"inherits": "arch-x86_64-w64-mingw32",
|
||||||
|
@ -194,9 +258,19 @@
|
||||||
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-x86_64-w64-mingw32-static",
|
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-x86_64-w64-mingw32-static",
|
||||||
"toolchainFile": "/usr/share/mingw/toolchain-x86_64-w64-mingw32-static.cmake",
|
"toolchainFile": "/usr/share/mingw/toolchain-x86_64-w64-mingw32-static.cmake",
|
||||||
"cacheVariables": {
|
"cacheVariables": {
|
||||||
"BUILD_SHARED_LIBS": {"type": "BOOL", "value": "OFF"}
|
"BUILD_SHARED_LIBS": {"type": "BOOL", "value": "OFF"},
|
||||||
|
"CMAKE_FIND_LIBRARY_SUFFIXES": {"type": "STRING", "value": ".a;.lib"},
|
||||||
|
"STATIC_LIBRARY_LINKAGE": {"type": "BOOL", "value": "ON"},
|
||||||
|
"STATIC_LINKAGE": {"type": "BOOL", "value": "ON"}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "arch-i686-w64-mingw32-qt6",
|
||||||
|
"inherits": ["qt6", "arch-i686-w64-mingw32"],
|
||||||
|
"displayName": "Combination of qt6 and arch-i686-w64-mingw32",
|
||||||
|
"description": "See description of qt6 and arch-i686-w64-mingw32",
|
||||||
|
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-i686-w64-mingw32-qt6"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "arch-x86_64-w64-mingw32-qt6",
|
"name": "arch-x86_64-w64-mingw32-qt6",
|
||||||
"inherits": ["qt6", "arch-x86_64-w64-mingw32"],
|
"inherits": ["qt6", "arch-x86_64-w64-mingw32"],
|
||||||
|
@ -204,6 +278,13 @@
|
||||||
"description": "See description of qt6 and arch-x86_64-w64-mingw32",
|
"description": "See description of qt6 and arch-x86_64-w64-mingw32",
|
||||||
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-x86_64-w64-mingw32-qt6"
|
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-x86_64-w64-mingw32-qt6"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "arch-i686-w64-mingw32-static-qt6",
|
||||||
|
"inherits": ["qt6", "arch-i686-w64-mingw32-static"],
|
||||||
|
"displayName": "Combination of qt6 and arch-i686-w64-mingw32-static",
|
||||||
|
"description": "See description of qt6 and arch-i686-w64-mingw32-static",
|
||||||
|
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-i686-w64-mingw32-static-qt6"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "arch-x86_64-w64-mingw32-static-qt6",
|
"name": "arch-x86_64-w64-mingw32-static-qt6",
|
||||||
"inherits": ["qt6", "arch-x86_64-w64-mingw32-static"],
|
"inherits": ["qt6", "arch-x86_64-w64-mingw32-static"],
|
||||||
|
@ -211,6 +292,13 @@
|
||||||
"description": "See description of qt6 and arch-x86_64-w64-mingw32-static",
|
"description": "See description of qt6 and arch-x86_64-w64-mingw32-static",
|
||||||
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-x86_64-w64-mingw32-static-qt6"
|
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-x86_64-w64-mingw32-static-qt6"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "arch-i686-w64-mingw32-devel",
|
||||||
|
"inherits": ["devel", "arch-i686-w64-mingw32"],
|
||||||
|
"displayName": "Combination of devel and arch-i686-w64-mingw32",
|
||||||
|
"description": "See descriptions of devel and arch-i686-w64-mingw32",
|
||||||
|
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-i686-w64-mingw32-devel"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "arch-x86_64-w64-mingw32-devel",
|
"name": "arch-x86_64-w64-mingw32-devel",
|
||||||
"inherits": ["devel", "arch-x86_64-w64-mingw32"],
|
"inherits": ["devel", "arch-x86_64-w64-mingw32"],
|
||||||
|
@ -218,6 +306,34 @@
|
||||||
"description": "See descriptions of devel and arch-x86_64-w64-mingw32",
|
"description": "See descriptions of devel and arch-x86_64-w64-mingw32",
|
||||||
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-x86_64-w64-mingw32-devel"
|
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-x86_64-w64-mingw32-devel"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "arch-i686-w64-mingw32-devel-qt6",
|
||||||
|
"inherits": ["qt6", "devel", "arch-i686-w64-mingw32"],
|
||||||
|
"displayName": "Combination of qt6, devel and arch-i686-w64-mingw32",
|
||||||
|
"description": "See descriptions of devel and arch-i686-w64-mingw32",
|
||||||
|
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-i686-w64-mingw32-devel"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "arch-x86_64-w64-mingw32-devel-qt6",
|
||||||
|
"inherits": ["qt6", "devel", "arch-x86_64-w64-mingw32"],
|
||||||
|
"displayName": "Combination of qt6, devel and arch-x86_64-w64-mingw32",
|
||||||
|
"description": "See descriptions of devel and arch-x86_64-w64-mingw32",
|
||||||
|
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-x86_64-w64-mingw32-devel"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "arch-i686-w64-mingw32-static-devel-qt6",
|
||||||
|
"inherits": ["qt6", "devel", "arch-i686-w64-mingw32-static"],
|
||||||
|
"displayName": "Combination of qt6, devel and arch-i686-w64-mingw32-static",
|
||||||
|
"description": "See descriptions of devel and arch-i686-w64-mingw32-static",
|
||||||
|
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-i686-w64-mingw32-devel"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "arch-x86_64-w64-mingw32-static-devel-qt6",
|
||||||
|
"inherits": ["qt6", "devel", "arch-x86_64-w64-mingw32-static"],
|
||||||
|
"displayName": "Combination of qt6, devel and arch-x86_64-w64-mingw32-static",
|
||||||
|
"description": "See descriptions of devel and arch-x86_64-w64-mingw32-static",
|
||||||
|
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-x86_64-w64-mingw32-devel"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "arch-static-compat",
|
"name": "arch-static-compat",
|
||||||
"inherits": ["no-webview", "no-kde", "qt6"],
|
"inherits": ["no-webview", "no-kde", "qt6"],
|
||||||
|
@ -259,6 +375,38 @@
|
||||||
"description": "See descriptions of devel and arch-static-compat",
|
"description": "See descriptions of devel and arch-static-compat",
|
||||||
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-static-compat-devel"
|
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-static-compat-devel"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "arch-android",
|
||||||
|
"inherits": ["no-webview", "no-kde", "qt6"],
|
||||||
|
"displayName": "Target *-linux-android using Arch Linux's Android packaging (invoke e.g. \"source android-env aarch64\" before invoking CMake)",
|
||||||
|
"description": "Build targeting Android, paths and flags are specific to Arch Linux's Android packaging, invoke e.g. \"source android-env aarch64\" for required environment variables",
|
||||||
|
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/arch-android-$env{ANDROID_ABI}",
|
||||||
|
"toolchainFile": "$env{ANDROID_NDK_HOME}/build/cmake/android.toolchain.cmake",
|
||||||
|
"environment": {
|
||||||
|
"PATH": "$env{ANDROID_PREFIX}/bin:$penv{PATH}"
|
||||||
|
},
|
||||||
|
"cacheVariables": {
|
||||||
|
"ANDROID_ABI": {"type": "STRING", "value": "$env{ANDROID_ABI}"},
|
||||||
|
"ANDROID_SDK_ROOT": {"type": "STRING", "value": "$env{ANDROID_HOME}"},
|
||||||
|
"ANDROID_NDK": {"type": "STRING", "value": "$env{ANDROID_NDK_HOME}"},
|
||||||
|
"ANDROID_NATIVE_API_LEVEL": {"type": "STRING", "value": "$env{ANDROID_MINIMUM_PLATFORM}"},
|
||||||
|
"ANDROID_TOOLCHAIN": {"type": "STRING", "value": "clang"},
|
||||||
|
"CMAKE_BUILD_TYPE": {"type": "STRING", "value": "Release"},
|
||||||
|
"CMAKE_C_FLAGS_RELEASE": {"type": "STRING", "value": "$env{ANDROID_CFLAGS}"},
|
||||||
|
"CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES": {"type": "PATH", "value": "$env{ANDROID_PREFIX_INCLUDE}"},
|
||||||
|
"CMAKE_CXX_FLAGS_RELEASE": {"type": "STRING", "value": "$env{ANDROID_CXXFLAGS}"},
|
||||||
|
"CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES": {"type": "PATH", "value": "$env{ANDROID_PREFIX_INCLUDE}"},
|
||||||
|
"CMAKE_SHARED_LINKER_FLAGS_RELEASE": {"type": "STRING", "value": "$env{ANDROID_LDFLAGS}"},
|
||||||
|
"CMAKE_FIND_ROOT_PATH": {"type": "PATH", "value": "$env{ANDROID_PREFIX}"},
|
||||||
|
"CMAKE_INSTALL_PREFIX": {"type": "PATH", "value": "$env{ANDROID_PREFIX}"},
|
||||||
|
"CMAKE_INSTALL_LIBDIR": {"type": "PATH", "value": "lib"},
|
||||||
|
"INCLUDE_INSTALL_DIR": {"type": "PATH", "value": "$env{ANDROID_PREFIX_INCLUDE}"},
|
||||||
|
"LIB_INSTALL_DIR": {"type": "PATH", "value": "$env{ANDROID_PREFIX_LIB}"},
|
||||||
|
"SYSCONF_INSTALL_DIR": {"type": "PATH", "value": "$env{ANDROID_PREFIX_ETC}"},
|
||||||
|
"SHARE_INSTALL_DIR": {"type": "PATH", "value": "$env{ANDROID_PREFIX_SHARE}"},
|
||||||
|
"PKG_CONFIG_EXECUTABLE": {"type": "FILEPATH", "value": "/usr/bin/$env{ANDROID_PKGCONFIG}"}
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "win-x64-msvc-static",
|
"name": "win-x64-msvc-static",
|
||||||
"inherits": ["no-webview", "no-kde", "qt6"],
|
"inherits": ["no-webview", "no-kde", "qt6"],
|
||||||
|
@ -266,10 +414,10 @@
|
||||||
"description": "Build on Windows targeting x64-windows-static using MSVC, Qt 6 (for Qt libs and CMake/Ninja), vcpkg (for other dependencies) and MSYS2 (for Perl, Go, ffmpeg and other tools)",
|
"description": "Build on Windows targeting x64-windows-static using MSVC, Qt 6 (for Qt libs and CMake/Ninja), vcpkg (for other dependencies) and MSYS2 (for Perl, Go, ffmpeg and other tools)",
|
||||||
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/win-x64-msvc-static",
|
"binaryDir": "$env{BUILD_DIR}/${sourceDirName}/win-x64-msvc-static",
|
||||||
"environment": {
|
"environment": {
|
||||||
|
|
||||||
"INCLUDE": "$env{MSVC_ROOT}/include;$env{MSVC_ROOT}/ATLMFC/include;$env{WIN_KITS_ROOT}/include/$env{WIN_KITS_VERSION}/ucrt;$env{WIN_KITS_ROOT}//include/$env{WIN_KITS_VERSION}//um;$env{WIN_KITS_ROOT}//include/$env{WIN_KITS_VERSION}//shared;$env{WIN_KITS_ROOT}/include/$env{WIN_KITS_VERSION}//winrt;$env{WIN_KITS_ROOT}/include/$env{WIN_KITS_VERSION}//cppwinrt",
|
"INCLUDE": "$env{MSVC_ROOT}/include;$env{MSVC_ROOT}/ATLMFC/include;$env{WIN_KITS_ROOT}/include/$env{WIN_KITS_VERSION}/ucrt;$env{WIN_KITS_ROOT}//include/$env{WIN_KITS_VERSION}//um;$env{WIN_KITS_ROOT}//include/$env{WIN_KITS_VERSION}//shared;$env{WIN_KITS_ROOT}/include/$env{WIN_KITS_VERSION}//winrt;$env{WIN_KITS_ROOT}/include/$env{WIN_KITS_VERSION}//cppwinrt",
|
||||||
"LIB": "$env{MSVC_ROOT}/ATLMFC/lib/x64;$env{MSVC_ROOT}/lib/x64;$env{WIN_KITS_ROOT}/lib/$env{WIN_KITS_VERSION}/ucrt/x64;$env{WIN_KITS_ROOT}/lib/$env{WIN_KITS_VERSION}//um/x64",
|
"LIB": "$env{MSVC_ROOT}/ATLMFC/lib/x64;$env{MSVC_ROOT}/lib/x64;$env{WIN_KITS_ROOT}/lib/$env{WIN_KITS_VERSION}/ucrt/x64;$env{WIN_KITS_ROOT}/lib/$env{WIN_KITS_VERSION}//um/x64",
|
||||||
"LIBPATH": "$env{MSVC_ROOT}/ATLMFC/lib/x64;$env{MSVC_ROOT}/lib/x64;$env{WIN_KITS_ROOT}/lib/$env{WIN_KITS_VERSION}/ucrt/x64;$env{WIN_KITS_ROOT}/lib/$env{WIN_KITS_VERSION}/um/x64"
|
"LIBPATH": "$env{MSVC_ROOT}/ATLMFC/lib/x64;$env{MSVC_ROOT}/lib/x64;$env{WIN_KITS_ROOT}/lib/$env{WIN_KITS_VERSION}/ucrt/x64;$env{WIN_KITS_ROOT}/lib/$env{WIN_KITS_VERSION}/um/x64",
|
||||||
|
"GOROOT": "$env{MSYS2_ROOT}/mingw64/lib/go"
|
||||||
},
|
},
|
||||||
"cacheVariables": {
|
"cacheVariables": {
|
||||||
"BUILD_SHARED_LIBS": {"type": "BOOL", "value": "OFF"},
|
"BUILD_SHARED_LIBS": {"type": "BOOL", "value": "OFF"},
|
||||||
|
@ -294,7 +442,6 @@
|
||||||
"DOXYGEN_BIN": {"type": "FILEPATH", "value": "$env{MSYS2_ROOT}/mingw64/bin/doxygen.exe"},
|
"DOXYGEN_BIN": {"type": "FILEPATH", "value": "$env{MSYS2_ROOT}/mingw64/bin/doxygen.exe"},
|
||||||
"CLANG_FORMAT_BIN": {"type": "FILEPATH", "value": "$env{MSYS2_ROOT}/mingw64/bin/clang-format.exe"},
|
"CLANG_FORMAT_BIN": {"type": "FILEPATH", "value": "$env{MSYS2_ROOT}/mingw64/bin/clang-format.exe"},
|
||||||
"GO_BIN": {"type": "FILEPATH", "value": "$env{MSYS2_ROOT}/mingw64/bin/go.exe"},
|
"GO_BIN": {"type": "FILEPATH", "value": "$env{MSYS2_ROOT}/mingw64/bin/go.exe"},
|
||||||
"GOROOT": {"type": "PATH", "value": "$env{MSYS2_ROOT}/mingw64/lib/go"},
|
|
||||||
"FFMPEG_BIN": {"type": "FILEPATH", "value": "$env{MSYS2_ROOT}/mingw64/bin/ffmpeg.exe"},
|
"FFMPEG_BIN": {"type": "FILEPATH", "value": "$env{MSYS2_ROOT}/mingw64/bin/ffmpeg.exe"},
|
||||||
"REALPATH_BIN": {"type": "FILEPATH", "value": "$env{MSYS2_ROOT}/usr/bin/realpath.exe"},
|
"REALPATH_BIN": {"type": "FILEPATH", "value": "$env{MSYS2_ROOT}/usr/bin/realpath.exe"},
|
||||||
"FORCE_EXTERNAL_ICONV": {"type": "BOOL", "value": "ON"},
|
"FORCE_EXTERNAL_ICONV": {"type": "BOOL", "value": "ON"},
|
||||||
|
@ -334,21 +481,33 @@
|
||||||
{"name": "libc++", "configurePreset": "libc++"},
|
{"name": "libc++", "configurePreset": "libc++"},
|
||||||
{"name": "qt6", "configurePreset": "qt6"},
|
{"name": "qt6", "configurePreset": "qt6"},
|
||||||
{"name": "devel", "configurePreset": "devel"},
|
{"name": "devel", "configurePreset": "devel"},
|
||||||
|
{"name": "devel-clang", "configurePreset": "devel-clang"},
|
||||||
{"name": "devel-libc++", "configurePreset": "devel-libc++"},
|
{"name": "devel-libc++", "configurePreset": "devel-libc++"},
|
||||||
{"name": "devel-qt6", "configurePreset": "devel-qt6"},
|
{"name": "devel-qt6", "configurePreset": "devel-qt6"},
|
||||||
{"name": "devel-unity", "configurePreset": "devel-unity"},
|
{"name": "devel-unity", "configurePreset": "devel-unity"},
|
||||||
|
{"name": "devel-clang-qt6", "configurePreset": "devel-clang-qt6"},
|
||||||
{"name": "devel-libc++-qt6", "configurePreset": "devel-libc++-qt6"},
|
{"name": "devel-libc++-qt6", "configurePreset": "devel-libc++-qt6"},
|
||||||
{"name": "debug", "configurePreset": "debug"},
|
{"name": "debug", "configurePreset": "debug"},
|
||||||
{"name": "debug-qt6", "configurePreset": "debug-qt6"},
|
{"name": "debug-qt6", "configurePreset": "debug-qt6"},
|
||||||
{"name": "debug-kde", "configurePreset": "debug-kde"},
|
{"name": "debug-kde", "configurePreset": "debug-kde"},
|
||||||
{"name": "debug-kde-custom", "configurePreset": "debug-kde-custom"},
|
{"name": "debug-kde-custom", "configurePreset": "debug-kde-custom"},
|
||||||
|
{"name": "arch-i686-w64-mingw32", "configurePreset": "arch-i686-w64-mingw32"},
|
||||||
{"name": "arch-x86_64-w64-mingw32", "configurePreset": "arch-x86_64-w64-mingw32"},
|
{"name": "arch-x86_64-w64-mingw32", "configurePreset": "arch-x86_64-w64-mingw32"},
|
||||||
|
{"name": "arch-i686-w64-mingw32-static", "configurePreset": "arch-i686-w64-mingw32-static"},
|
||||||
{"name": "arch-x86_64-w64-mingw32-static", "configurePreset": "arch-x86_64-w64-mingw32-static"},
|
{"name": "arch-x86_64-w64-mingw32-static", "configurePreset": "arch-x86_64-w64-mingw32-static"},
|
||||||
|
{"name": "arch-i686-w64-mingw32-qt6", "configurePreset": "arch-i686-w64-mingw32-qt6"},
|
||||||
{"name": "arch-x86_64-w64-mingw32-qt6", "configurePreset": "arch-x86_64-w64-mingw32-qt6"},
|
{"name": "arch-x86_64-w64-mingw32-qt6", "configurePreset": "arch-x86_64-w64-mingw32-qt6"},
|
||||||
|
{"name": "arch-i686-w64-mingw32-static-qt6", "configurePreset": "arch-i686-w64-mingw32-static-qt6"},
|
||||||
{"name": "arch-x86_64-w64-mingw32-static-qt6", "configurePreset": "arch-x86_64-w64-mingw32-static-qt6"},
|
{"name": "arch-x86_64-w64-mingw32-static-qt6", "configurePreset": "arch-x86_64-w64-mingw32-static-qt6"},
|
||||||
|
{"name": "arch-i686-w64-mingw32-devel", "configurePreset": "arch-i686-w64-mingw32-devel"},
|
||||||
{"name": "arch-x86_64-w64-mingw32-devel", "configurePreset": "arch-x86_64-w64-mingw32-devel"},
|
{"name": "arch-x86_64-w64-mingw32-devel", "configurePreset": "arch-x86_64-w64-mingw32-devel"},
|
||||||
|
{"name": "arch-i686-w64-mingw32-devel-qt6", "configurePreset": "arch-i686-w64-mingw32-devel-qt6"},
|
||||||
|
{"name": "arch-x86_64-w64-mingw32-devel-qt6", "configurePreset": "arch-x86_64-w64-mingw32-devel-qt6"},
|
||||||
|
{"name": "arch-i686-w64-mingw32-static-devel-qt6", "configurePreset": "arch-i686-w64-mingw32-static-devel-qt6"},
|
||||||
|
{"name": "arch-x86_64-w64-mingw32-static-devel-qt6", "configurePreset": "arch-x86_64-w64-mingw32-static-devel-qt6"},
|
||||||
{"name": "arch-static-compat", "configurePreset": "arch-static-compat"},
|
{"name": "arch-static-compat", "configurePreset": "arch-static-compat"},
|
||||||
{"name": "arch-static-compat-devel", "configurePreset": "arch-static-compat-devel"},
|
{"name": "arch-static-compat-devel", "configurePreset": "arch-static-compat-devel"},
|
||||||
|
{"name": "arch-android", "configurePreset": "arch-android"},
|
||||||
{"name": "win-x64-msvc-static", "configurePreset": "win-x64-msvc-static"},
|
{"name": "win-x64-msvc-static", "configurePreset": "win-x64-msvc-static"},
|
||||||
{"name": "win-x64-msvc-static-devel", "configurePreset": "win-x64-msvc-static-devel"},
|
{"name": "win-x64-msvc-static-devel", "configurePreset": "win-x64-msvc-static-devel"},
|
||||||
{"name": "win-x64-msvc-static-debug", "configurePreset": "win-x64-msvc-static-debug"}
|
{"name": "win-x64-msvc-static-debug", "configurePreset": "win-x64-msvc-static-debug"}
|
||||||
|
|
|
@ -1799,7 +1799,7 @@ void ValueConversion::Helper::ArgumentValueConversionError::throwFailure(const s
|
||||||
throw ParseError(argumentPath.empty()
|
throw ParseError(argumentPath.empty()
|
||||||
? argsToString("Conversion of top-level value \"", valueToConvert, "\" to type \"", targetTypeName, "\" failed: ", errorMessage)
|
? argsToString("Conversion of top-level value \"", valueToConvert, "\" to type \"", targetTypeName, "\" failed: ", errorMessage)
|
||||||
: argsToString("Conversion of value \"", valueToConvert, "\" (for argument --", argumentPath.back()->name(), ") to type \"",
|
: argsToString("Conversion of value \"", valueToConvert, "\" (for argument --", argumentPath.back()->name(), ") to type \"",
|
||||||
targetTypeName, "\" failed: ", errorMessage));
|
targetTypeName, "\" failed: ", errorMessage));
|
||||||
}
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
|
@ -1810,7 +1810,7 @@ void ArgumentOccurrence::throwNumberOfValuesNotSufficient(unsigned long valuesTo
|
||||||
throw ParseError(path.empty()
|
throw ParseError(path.empty()
|
||||||
? argsToString("Expected ", valuesToConvert, " top-level values to be present but only ", values.size(), " have been specified.")
|
? argsToString("Expected ", valuesToConvert, " top-level values to be present but only ", values.size(), " have been specified.")
|
||||||
: argsToString("Expected ", valuesToConvert, " values for argument --", path.back()->name(), " to be present but only ", values.size(),
|
: argsToString("Expected ", valuesToConvert, " values for argument --", path.back()->name(), " to be present but only ", values.size(),
|
||||||
" have been specified."));
|
" have been specified."));
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace CppUtilities
|
} // namespace CppUtilities
|
||||||
|
|
|
@ -881,7 +881,7 @@ inline void Argument::setFlags(Argument::Flags flags, bool add)
|
||||||
{
|
{
|
||||||
m_flags = add ? (m_flags | flags)
|
m_flags = add ? (m_flags | flags)
|
||||||
: static_cast<Argument::Flags>(static_cast<std::underlying_type<Argument::Flags>::type>(m_flags)
|
: static_cast<Argument::Flags>(static_cast<std::underlying_type<Argument::Flags>::type>(m_flags)
|
||||||
& ~static_cast<std::underlying_type<Argument::Flags>::type>(flags));
|
& ~static_cast<std::underlying_type<Argument::Flags>::type>(flags));
|
||||||
}
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
|
|
|
@ -14,7 +14,7 @@ namespace CppUtilities {
|
||||||
*/
|
*/
|
||||||
FakeQtConfigArguments::FakeQtConfigArguments()
|
FakeQtConfigArguments::FakeQtConfigArguments()
|
||||||
: m_qtWidgetsGuiArg(
|
: m_qtWidgetsGuiArg(
|
||||||
"qt-widgets-gui", 'g', "shows a Qt widgets based graphical user interface (the application has not been built with Qt widgets support)")
|
"qt-widgets-gui", 'g', "shows a Qt widgets based graphical user interface (the application has not been built with Qt widgets support)")
|
||||||
, m_qtQuickGuiArg(
|
, m_qtQuickGuiArg(
|
||||||
"qt-quick-gui", 'q', "shows a Qt quick based graphical user interface (the application has not been built with Qt quick support)")
|
"qt-quick-gui", 'q', "shows a Qt quick based graphical user interface (the application has not been built with Qt quick support)")
|
||||||
{
|
{
|
||||||
|
|
|
@ -63,7 +63,7 @@ function (add_appstream_file)
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
# create appstream desktop file from template
|
# create appstream desktop file from template
|
||||||
set(APPSTREAM_FILE "${CMAKE_CURRENT_BINARY_DIR}/resources/${META_ID}.appdata.xml")
|
set(APPSTREAM_FILE "${CMAKE_CURRENT_BINARY_DIR}/resources/${META_ID}.metainfo.xml")
|
||||||
configure_file("${APP_APPSTREAM_TEMPLATE_FILE}" "${APPSTREAM_FILE}" @ONLY)
|
configure_file("${APP_APPSTREAM_TEMPLATE_FILE}" "${APPSTREAM_FILE}" @ONLY)
|
||||||
|
|
||||||
# add install for the appstream file
|
# add install for the appstream file
|
||||||
|
|
|
@ -191,18 +191,39 @@ if (NOT META_PROJECT_LICENSE)
|
||||||
endif ()
|
endif ()
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
# determine RDNS automatically from other meta-data
|
# determine RDNS automatically from other meta-data and allow override
|
||||||
if (NOT META_PROJECT_RDNS)
|
set(${META_PROJECT_VARNAME_UPPER}_RDNS_OVERRIDE
|
||||||
|
""
|
||||||
|
CACHE STRING "overrides the RDNS used in AppStream meta-data files for ${META_PROJECT_NAME}")
|
||||||
|
if (${META_PROJECT_VARNAME_UPPER}_RDNS_OVERRIDE)
|
||||||
|
set(META_PROJECT_RDNS ${${META_PROJECT_VARNAME_UPPER}_RDNS_OVERRIDE})
|
||||||
|
endif ()
|
||||||
|
set(${META_PROJECT_VARNAME_UPPER}_DEVELOPER_ID_OVERRIDE
|
||||||
|
""
|
||||||
|
CACHE STRING "overrides the developer ID used in AppStream meta-data files for ${META_PROJECT_NAME}")
|
||||||
|
if (${META_PROJECT_VARNAME_UPPER}_DEVELOPER_ID_OVERRIDE)
|
||||||
|
set(META_DEVELOPER_ID ${${META_PROJECT_VARNAME_UPPER}_DEVELOPER_ID_OVERRIDE})
|
||||||
|
endif ()
|
||||||
|
if (${META_PROJECT_VARNAME_UPPER}_RDNS_OVERRIDE OR ${META_PROJECT_VARNAME_UPPER}_DEVELOPER_ID_OVERRIDE)
|
||||||
|
message(
|
||||||
|
WARNING
|
||||||
|
"Overriding the RDNS or developer ID is NOT recommended. This feature is only intended to ease "
|
||||||
|
"transitioning when a change is required and to create alternative packaging for development and private use.")
|
||||||
|
endif ()
|
||||||
|
if (NOT META_PROJECT_RDNS OR NOT META_DEVELOPER_ID)
|
||||||
|
string(TOLOWER "${META_APP_AUTHOR}" META_APP_AUTHOR_LOWER)
|
||||||
if (NOT META_PROJECT_RDNS_BASE)
|
if (NOT META_PROJECT_RDNS_BASE)
|
||||||
if (META_APP_URL MATCHES ".*github\\.com.*")
|
if (META_APP_URL MATCHES ".*github\\.(com|io).*")
|
||||||
set(META_PROJECT_RDNS_BASE "io.github") # assume GitHub pages
|
set(META_PROJECT_RDNS_BASE "io.github") # assume GitHub pages
|
||||||
else ()
|
else ()
|
||||||
set(META_PROJECT_RDNS_BASE "org")
|
set(META_PROJECT_RDNS_BASE "org")
|
||||||
endif ()
|
endif ()
|
||||||
endif ()
|
endif ()
|
||||||
string(TOLOWER "${META_APP_AUTHOR}" META_APP_AUTHOR_LOWER)
|
|
||||||
set(META_PROJECT_RDNS "${META_PROJECT_RDNS_BASE}.${META_APP_AUTHOR_LOWER}.${META_PROJECT_NAME}${TARGET_SUFFIX}")
|
set(META_PROJECT_RDNS "${META_PROJECT_RDNS_BASE}.${META_APP_AUTHOR_LOWER}.${META_PROJECT_NAME}${TARGET_SUFFIX}")
|
||||||
endif ()
|
endif ()
|
||||||
|
if (NOT META_DEVELOPER_ID)
|
||||||
|
set(META_DEVELOPER_ID "${META_PROJECT_RDNS_BASE}.${META_APP_AUTHOR_LOWER}")
|
||||||
|
endif ()
|
||||||
|
|
||||||
# provide variables for other projects built as part of the same subdirs project to access files from this project
|
# provide variables for other projects built as part of the same subdirs project to access files from this project
|
||||||
get_directory_property(HAS_PARENT PARENT_DIRECTORY)
|
get_directory_property(HAS_PARENT PARENT_DIRECTORY)
|
||||||
|
|
|
@ -59,7 +59,7 @@ function (configure_development_warnings)
|
||||||
option(TREAT_WARNINGS_AS_ERRORS "adds additional compiler flag to treat warnings as errors" "${ENABLE_DEVEL_DEFAULTS}")
|
option(TREAT_WARNINGS_AS_ERRORS "adds additional compiler flag to treat warnings as errors" "${ENABLE_DEVEL_DEFAULTS}")
|
||||||
if (TREAT_WARNINGS_AS_ERRORS)
|
if (TREAT_WARNINGS_AS_ERRORS)
|
||||||
if (CMAKE_CXX_COMPILER_ID MATCHES ".*Clang" OR CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
|
if (CMAKE_CXX_COMPILER_ID MATCHES ".*Clang" OR CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
|
||||||
list(APPEND COMPILE_OPTIONS_TO_CONFIGURE -Werror)
|
list(APPEND COMPILE_OPTIONS_TO_CONFIGURE -Werror -Wno-error=address)
|
||||||
else ()
|
else ()
|
||||||
message(AUTHOR_WARNING "Treating warnings as errors is not supported for compiler '${CMAKE_CXX_COMPILER_ID}'.")
|
message(AUTHOR_WARNING "Treating warnings as errors is not supported for compiler '${CMAKE_CXX_COMPILER_ID}'.")
|
||||||
endif ()
|
endif ()
|
||||||
|
|
|
@ -52,9 +52,10 @@ function (configure_test_target)
|
||||||
PRIVATE "${ARGS_LIBRARIES}" "${PRIVATE_LIBRARIES}")
|
PRIVATE "${ARGS_LIBRARIES}" "${PRIVATE_LIBRARIES}")
|
||||||
target_include_directories(
|
target_include_directories(
|
||||||
"${TEST_TARGET_NAME}"
|
"${TEST_TARGET_NAME}"
|
||||||
PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> $<INSTALL_INTERFACE:${HEADER_INSTALL_DESTINATION}>
|
PUBLIC $<BUILD_INTERFACE:${TARGET_INCLUDE_DIRECTORY_BUILD_INTERFACE}>
|
||||||
|
$<BUILD_INTERFACE:${TARGET_GENERATED_INCLUDE_DIRECTORY}> $<INSTALL_INTERFACE:${HEADER_INSTALL_DESTINATION}>
|
||||||
${PUBLIC_INCLUDE_DIRS}
|
${PUBLIC_INCLUDE_DIRS}
|
||||||
PRIVATE ${TEST_INCLUDE_DIRS} "${PRIVATE_INCLUDE_DIRS}")
|
PRIVATE ${TEST_INCLUDE_DIRS} ${PRIVATE_INCLUDE_DIRS})
|
||||||
target_compile_definitions(
|
target_compile_definitions(
|
||||||
"${TEST_TARGET_NAME}"
|
"${TEST_TARGET_NAME}"
|
||||||
PUBLIC "${META_PUBLIC_COMPILE_DEFINITIONS}"
|
PUBLIC "${META_PUBLIC_COMPILE_DEFINITIONS}"
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
<url type="homepage">@META_APP_URL@</url>
|
<url type="homepage">@META_APP_URL@</url>
|
||||||
<url type="bugtracker">@META_APP_BUGTRACKER_URL@</url>
|
<url type="bugtracker">@META_APP_BUGTRACKER_URL@</url>
|
||||||
<launchable type="desktop-id">@META_ID@.desktop</launchable>
|
<launchable type="desktop-id">@META_ID@.desktop</launchable>
|
||||||
<developer><name>@META_APP_AUTHOR@</name></developer>
|
<developer id="@META_DEVELOPER_ID@"><name>@META_APP_AUTHOR@</name></developer>
|
||||||
<provides>
|
<provides>
|
||||||
<binary>@META_TARGET_NAME@</binary>
|
<binary>@META_TARGET_NAME@</binary>
|
||||||
</provides>
|
</provides>
|
||||||
|
|
|
@ -13,6 +13,7 @@
|
||||||
#define PROJECT_CONFIG_SUFFIX "@META_CONFIG_SUFFIX@"
|
#define PROJECT_CONFIG_SUFFIX "@META_CONFIG_SUFFIX@"
|
||||||
#define PROJECT_CONFIG_TARGET_SUFFIX "@TARGET_SUFFIX@"
|
#define PROJECT_CONFIG_TARGET_SUFFIX "@TARGET_SUFFIX@"
|
||||||
#define APP_NAME "@META_APP_NAME@"
|
#define APP_NAME "@META_APP_NAME@"
|
||||||
|
#define APP_ID "@META_ID@"
|
||||||
#define APP_VERSION "@META_APP_VERSION@"
|
#define APP_VERSION "@META_APP_VERSION@"
|
||||||
#define APP_VERSION_MAJOR @META_VERSION_MAJOR@
|
#define APP_VERSION_MAJOR @META_VERSION_MAJOR@
|
||||||
#define APP_VERSION_MINOR @META_VERSION_MINOR@
|
#define APP_VERSION_MINOR @META_VERSION_MINOR@
|
||||||
|
|
|
@ -168,11 +168,11 @@ CPP_UTILITIES_EXPORT inline void getBytes24(std::uint32_t value, char *outputbuf
|
||||||
#if CONVERSION_UTILITIES_BINARY_CONVERSION_INTERNAL == 0
|
#if CONVERSION_UTILITIES_BINARY_CONVERSION_INTERNAL == 0
|
||||||
outputbuffer[0] = static_cast<char>((value >> 16) & 0xFF);
|
outputbuffer[0] = static_cast<char>((value >> 16) & 0xFF);
|
||||||
outputbuffer[1] = static_cast<char>((value >> 8) & 0xFF);
|
outputbuffer[1] = static_cast<char>((value >> 8) & 0xFF);
|
||||||
outputbuffer[2] = static_cast<char>((value)&0xFF);
|
outputbuffer[2] = static_cast<char>((value) & 0xFF);
|
||||||
#else
|
#else
|
||||||
outputbuffer[2] = static_cast<char>((value >> 16) & 0xFF);
|
outputbuffer[2] = static_cast<char>((value >> 16) & 0xFF);
|
||||||
outputbuffer[1] = static_cast<char>((value >> 8) & 0xFF);
|
outputbuffer[1] = static_cast<char>((value >> 8) & 0xFF);
|
||||||
outputbuffer[0] = static_cast<char>((value)&0xFF);
|
outputbuffer[0] = static_cast<char>((value) & 0xFF);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -16,16 +16,16 @@ template <class StringType, class ViewType> using IsStringViewType = std::is_sam
|
||||||
template <class StringType, class CharType> using IsCharType = std::is_same<typename StringType::value_type, CharType>;
|
template <class StringType, class CharType> using IsCharType = std::is_same<typename StringType::value_type, CharType>;
|
||||||
namespace Detail {
|
namespace Detail {
|
||||||
template <typename StringType, typename T>
|
template <typename StringType, typename T>
|
||||||
auto IsStringType(int)
|
auto IsStringType(
|
||||||
-> decltype(std::declval<StringType &>().append(std::declval<const T &>()), std::declval<const T &>().size(), Traits::Bool<true>{});
|
int) -> decltype(std::declval<StringType &>().append(std::declval<const T &>()), std::declval<const T &>().size(), Traits::Bool<true>{});
|
||||||
template <typename StringType, typename T> Traits::Bool<false> IsStringType(...);
|
template <typename StringType, typename T> Traits::Bool<false> IsStringType(...);
|
||||||
template <typename StringType> void functionTakingConstStringRef(const StringType &str);
|
template <typename StringType> void functionTakingConstStringRef(const StringType &str);
|
||||||
template <typename StringType, typename T>
|
template <typename StringType, typename T>
|
||||||
auto IsConvertibleToConstStringRef(int) -> decltype(functionTakingConstStringRef<StringType>(std::declval<const T &>()), Traits::Bool<true>{});
|
auto IsConvertibleToConstStringRef(int) -> decltype(functionTakingConstStringRef<StringType>(std::declval<const T &>()), Traits::Bool<true>{});
|
||||||
template <typename StringType, typename T> Traits::Bool<false> IsConvertibleToConstStringRef(...);
|
template <typename StringType, typename T> Traits::Bool<false> IsConvertibleToConstStringRef(...);
|
||||||
template <typename StringType, typename T>
|
template <typename StringType, typename T>
|
||||||
auto IsConvertibleToConstStringRefViaNative(int)
|
auto IsConvertibleToConstStringRefViaNative(
|
||||||
-> decltype(functionTakingConstStringRef<StringType>(std::declval<const T &>().native()), Traits::Bool<true>{});
|
int) -> decltype(functionTakingConstStringRef<StringType>(std::declval<const T &>().native()), Traits::Bool<true>{});
|
||||||
template <typename StringType, typename T> Traits::Bool<false> IsConvertibleToConstStringRefViaNative(...);
|
template <typename StringType, typename T> Traits::Bool<false> IsConvertibleToConstStringRefViaNative(...);
|
||||||
} // namespace Detail
|
} // namespace Detail
|
||||||
template <typename StringType, typename StringType2>
|
template <typename StringType, typename StringType2>
|
||||||
|
|
Loading…
Reference in New Issue