aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ports/qt5-base/CONTROL16
-rw-r--r--ports/qt5-base/cmake/qt_fix_cmake.cmake8
-rw-r--r--ports/qt5-base/fixcmake.py33
-rw-r--r--ports/qt5-base/patches/gui_configure.patch13
-rw-r--r--ports/qt5-base/patches/icu.patch24
-rw-r--r--ports/qt5-base/portfile.cmake66
-rw-r--r--ports/qt5-base/vcpkg-cmake-wrapper.cmake26
-rw-r--r--ports/qt5-imageformats/CONTROL4
-rw-r--r--ports/qt5-imageformats/portfile.cmake13
-rw-r--r--ports/qt5-tools/CONTROL2
-rw-r--r--ports/qt5-tools/portfile.cmake5
-rw-r--r--ports/qt5-xmlpatterns/CONTROL2
-rw-r--r--ports/qt5-xmlpatterns/portfile.cmake5
-rw-r--r--scripts/ci.baseline.txt20
-rw-r--r--scripts/cmake/vcpkg_configure_qmake.cmake6
15 files changed, 178 insertions, 65 deletions
diff --git a/ports/qt5-base/CONTROL b/ports/qt5-base/CONTROL
index 7cd856203..ac926522b 100644
--- a/ports/qt5-base/CONTROL
+++ b/ports/qt5-base/CONTROL
@@ -1,8 +1,8 @@
-Source: qt5-base
-Version: 5.12.5-7
-Homepage: https://www.qt.io/
-Description: Qt5 Application Framework Base Module. Includes Core, GUI, Widgets, Networking, SQL, Concurrent and other essential qt components.
-Build-Depends: zlib, libjpeg-turbo, libpng, freetype, pcre2, harfbuzz, sqlite3, libpq, double-conversion, openssl
-
-Feature: latest
-Description: Build latest qt version (5.13.1) instead of LTS
+Source: qt5-base
+Version: 5.12.5-8
+Homepage: https://www.qt.io/
+Description: Qt5 Application Framework Base Module. Includes Core, GUI, Widgets, Networking, SQL, Concurrent and other essential qt components.
+Build-Depends: zlib, libjpeg-turbo, libpng, freetype, pcre2, harfbuzz, sqlite3, libpq, double-conversion, openssl, angle (!windows), egl-registry, icu (!uwp), fontconfig (!windows)
+
+Feature: latest
+Description: Build latest qt version (5.13.1) instead of LTS
diff --git a/ports/qt5-base/cmake/qt_fix_cmake.cmake b/ports/qt5-base/cmake/qt_fix_cmake.cmake
index 6da5deb8e..f435566c6 100644
--- a/ports/qt5-base/cmake/qt_fix_cmake.cmake
+++ b/ports/qt5-base/cmake/qt_fix_cmake.cmake
@@ -13,7 +13,13 @@ function(qt_fix_cmake PACKAGE_DIR_TO_FIX PORT_TO_FIX)
LOGNAME fix-cmake
)
endif()
-
+ if(EXISTS ${PACKAGE_DIR_TO_FIX}/share/cmake)
+ vcpkg_execute_required_process(
+ COMMAND ${PYTHON2} ${CURRENT_INSTALLED_DIR}/share/qt5/fixcmake.py ${PORT_TO_FIX}
+ WORKING_DIRECTORY ${PACKAGE_DIR_TO_FIX}/share/cmake
+ LOGNAME fix-cmake
+ )
+ endif()
#Install cmake files
if(EXISTS ${PACKAGE_DIR_TO_FIX}/lib/cmake)
file(MAKE_DIRECTORY ${PACKAGE_DIR_TO_FIX}/share)
diff --git a/ports/qt5-base/fixcmake.py b/ports/qt5-base/fixcmake.py
index afb127560..6f677327c 100644
--- a/ports/qt5-base/fixcmake.py
+++ b/ports/qt5-base/fixcmake.py
@@ -13,40 +13,45 @@ tooldir="/tools/"+port+"/bin/"
for f in files:
openedfile = open(f, "r")
builder = ""
- dllpattern = re.compile("_install_prefix}/bin/Qt5.*d+(.dll|.so)")
- libpattern = re.compile("_install_prefix}/lib/Qt5.*d+(.lib|.a)")
+ dllpatterndebug = re.compile("_install_prefix}/bin/Qt5.*d+(.dll|.so)")
+ libpatterndebug = re.compile("_install_prefix}/lib/Qt5.*d+(.lib|.a)")
exepattern = re.compile("_install_prefix}/bin/[a-z]+(.exe|)")
toolexepattern = re.compile("_install_prefix}/tools/qt5/bin/[a-z]+(.exe|)")
tooldllpattern = re.compile("_install_prefix}/tools/qt5/bin/Qt5.*d+(.dll|.so)")
+ populatepluginpattern = re.compile("_populate_[^_]+_plugin_properties\([^ ]+ RELEASE")
+ populatetargetpattern = re.compile("_populate_[^_]+_target_properties\(RELEASE ")
for line in openedfile:
if "_install_prefix}/tools/qt5/${LIB_LOCATION}" in line:
builder += " if (${Configuration} STREQUAL \"RELEASE\")"
builder += "\n " + line.replace("/tools/qt5/bin", "/bin/")
- builder += " else()"
- builder += "\n " + line.replace("/tools/qt5/debug/bin", "/debug/bin/")
+ builder += " else()" #This requires a release and debug build since Qt will check that the file exists!
+ #It would be better to use an elseif here with a EXISTS check but that requires a more complicated regex to build the complete filepath since each module uses its own _(qtmodule)_install_prefix
+ #so single configuration builds of Qt are currently not supported. Thus =>
+ #TODO: Make single configuration builds of Qt work correctly!
+ builder += "\n " + line.replace("/tools/qt5/debug/bin", "/debug/bin/")
builder += " endif()\n"
elif "_install_prefix}/bin/${LIB_LOCATION}" in line:
builder += " if (${Configuration} STREQUAL \"RELEASE\")"
builder += "\n " + line
- builder += " else()"
- builder += "\n " + line.replace("/bin/", "/debug/bin/")
+ builder += " else()" #This requires a release and debug build!
+ builder += "\n " + line.replace("/bin/", "/debug/bin/")
builder += " endif()\n"
elif "_install_prefix}/lib/${LIB_LOCATION}" in line:
builder += " if (${Configuration} STREQUAL \"RELEASE\")"
builder += "\n " + line
- builder += " else()"
+ builder += " else()" #This requires a release and debug build!
builder += "\n " + line.replace("/lib/", "/debug/lib/")
builder += " endif()\n"
elif "_install_prefix}/lib/${IMPLIB_LOCATION}" in line:
builder += " if (${Configuration} STREQUAL \"RELEASE\")"
builder += "\n " + line
- builder += " else()"
+ builder += " else()" #This requires a release and debug build!
builder += "\n " + line.replace("/lib/", "/debug/lib/")
builder += " endif()\n"
elif "_install_prefix}/plugins/${PLUGIN_LOCATION}" in line:
builder += " if (${Configuration} STREQUAL \"RELEASE\")"
builder += "\n " + line
- builder += " else()"
+ builder += " else()" #This requires a release and debug build!
builder += "\n " + line.replace("/plugins/", "/debug/plugins/")
builder += " endif()\n"
elif "_install_prefix}/lib/qtmaind.lib" in line:
@@ -60,9 +65,15 @@ for f in files:
builder += " set_target_properties(Qt5::WinMain PROPERTIES\n"
builder += " IMPORTED_LOCATION_DEBUG ${imported_location_debug}\n"
builder += " )\n"
- elif dllpattern.search(line) != None:
+ elif populatepluginpattern.search(line) != None:
+ builder += line
+ builder += line.replace("RELEASE", "DEBUG").replace(".dll", "d.dll").replace(".lib", "d.lib")
+ elif populatetargetpattern.search(line) != None:
+ builder += line
+ builder += line.replace("RELEASE", "DEBUG").replace(".dll", "d.dll").replace(".lib", "d.lib")
+ elif dllpatterndebug.search(line) != None:
builder += line.replace("/bin/", "/debug/bin/")
- elif libpattern.search(line) != None:
+ elif libpatterndebug.search(line) != None:
builder += line.replace("/lib/", "/debug/lib/")
elif tooldllpattern.search(line) != None:
builder += line.replace("/tools/qt5/bin", "/debug/bin/")
diff --git a/ports/qt5-base/patches/gui_configure.patch b/ports/qt5-base/patches/gui_configure.patch
index 31c29dbeb..7a283dc62 100644
--- a/ports/qt5-base/patches/gui_configure.patch
+++ b/ports/qt5-base/patches/gui_configure.patch
@@ -14,3 +14,16 @@ index c51e3ceee..7f7e206b6 100644
],
"use": [
{ "lib": "zlib", "condition": "features.system-zlib" }
+@@ -262,7 +262,10 @@
+ "headers": "fontconfig/fontconfig.h",
+ "sources": [
+- { "type": "pkgConfig", "args": "fontconfig" },
++ { "type": "pkgConfig", "args": "breakfontconfig" },
+- { "type": "freetype", "libs": "-lfontconfig" }
++ { "type": "freetype", "libs": "-lbreakautofind" },
++ { "libs": "-lfontconfig -lexpat" },
++ { "libs": "-llibfontconfig -llibexpat" },
++ "-lfontconfig"
+ ],
+ "use": "freetype"
+ },
diff --git a/ports/qt5-base/patches/icu.patch b/ports/qt5-base/patches/icu.patch
new file mode 100644
index 000000000..16c13b0c3
--- /dev/null
+++ b/ports/qt5-base/patches/icu.patch
@@ -0,0 +1,24 @@
+diff --git a/src/corelib/configure.json b/src/corelib/configure.json
+index de8d26a12..068b80c51 100644
+--- a/src/corelib/configure.json
++++ b/src/corelib/configure.json
+@@ -106,13 +106,17 @@
+ "headers": [ "unicode/utypes.h", "unicode/ucol.h", "unicode/ustring.h" ],
+ "sources": [
+ {
++ "libs": "",
+ "builds": {
+- "debug": "-lsicuind -lsicuucd -lsicudtd",
+- "release": "-lsicuin -lsicuuc -lsicudt"
++ "debug": "-licuind -licuucd -licudtd",
++ "release": "-licuin -licuuc -licudt"
+ },
+ "condition": "config.win32 && !features.shared"
+ },
++ { "libs": "-licuind -licuucd -licudtd", "condition": "config.win32 && !features.shared"},
++ { "libs": "-licuin -licuuc -licudt", "condition": "config.win32 && !features.shared"},
+ { "libs": "-licuin -licuuc -licudt", "condition": "config.win32 && features.shared" },
++ { "libs": "-licuind -licuucd -licudtd", "condition": "config.win32 && features.shared" },
+ { "libs": "-licui18n -licuuc -licudata", "condition": "!config.win32" }
+ ],
+ "use": [
diff --git a/ports/qt5-base/portfile.cmake b/ports/qt5-base/portfile.cmake
index 42ab6c792..443d462e1 100644
--- a/ports/qt5-base/portfile.cmake
+++ b/ports/qt5-base/portfile.cmake
@@ -37,7 +37,8 @@ qt_download_submodule( OUT_SOURCE_PATH SOURCE_PATH
patches/winmain_pro.patch #Moves qtmain to manual-link
patches/windows_prf.patch #fixes the qtmain dependency due to the above move
patches/qt_app.patch #Moves the target location of qt5 host apps to always install into the host dir.
- patches/gui_configure.patch #Patches the gui configure.json to break freetype autodetection because it does not include its dependencies.
+ patches/gui_configure.patch #Patches the gui configure.json to break freetype/fontconfig autodetection because it does not include its dependencies.
+ patches/icu.patch #Help configure find static icu builds in vcpkg on windows
#patches/static_opengl.patch #Use this patch if you really want to statically link angle on windows (e.g. using -opengl es2 and -static).
#Be carefull since it requires definining _GDI32_ for all dependent projects due to redefinition errors in the
#the windows supplied gl.h header and the angle gl.h otherwise.
@@ -67,7 +68,7 @@ set(CORE_OPTIONS
# ENV ANGLE_DIR to external angle source dir. (Will always be compiled with Qt)
#-optimized-tools
#-force-debug-info
- #-verbose
+ -verbose
)
## 3rd Party Libs
@@ -79,7 +80,9 @@ list(APPEND CORE_OPTIONS
-system-pcre
-system-doubleconversion
-system-sqlite
- -system-harfbuzz)
+ -system-harfbuzz
+ -icu
+ -no-angle) # Qt does not need to build angle. VCPKG will build angle!
if(QT_OPENSSL_LINK)
list(APPEND CORE_OPTIONS -openssl-linked)
@@ -103,6 +106,35 @@ find_library(HARFBUZZ_RELEASE NAMES harfbuzz PATHS "${CURRENT_INSTALLED_DIR}/lib
find_library(HARFBUZZ_DEBUG NAMES harfbuzz PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
find_library(SQLITE_RELEASE NAMES sqlite3 PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH) # Depends on openssl and zlib(linux)
find_library(SQLITE_DEBUG NAMES sqlite3 sqlite3d PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
+
+find_library(ICUUC_RELEASE NAMES icuuc libicuuc PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
+find_library(ICUUC_DEBUG NAMES icuucd libicuucd icuuc libicuuc PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
+find_library(ICUTU_RELEASE NAMES icutu libicutu PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
+find_library(ICUTU_DEBUG NAMES icutud libicutud icutu libicutu PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
+
+# Was installed in WSL but not on CI machine
+# find_library(ICULX_RELEASE NAMES iculx libiculx PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
+# find_library(ICULX_DEBUG NAMES iculxd libiculxd iculx libiculx PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
+
+find_library(ICUIO_RELEASE NAMES icuio libicuio PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
+find_library(ICUIO_DEBUG NAMES icuiod libicuiod icuio libicuio PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
+find_library(ICUIN_RELEASE NAMES icui18n libicui18n icuin PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
+find_library(ICUIN_DEBUG NAMES icui18nd libicui18nd icui18n libicui18n icuin icuind PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
+find_library(ICUDATA_RELEASE NAMES icudata libicudata icudt PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
+find_library(ICUDATA_DEBUG NAMES icudatad libicudatad icudata libicudata icudtd PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
+set(ICU_RELEASE "${ICUIN_RELEASE} ${ICUTU_RELEASE} ${ICULX_RELEASE} ${ICUUC_RELEASE} ${ICUIO_RELEASE} ${ICUDATA_RELEASE}")
+set(ICU_DEBUG "${ICUIN_DEBUG} ${ICUTU_DEBUG} ${ICULX_DEBUG} ${ICUUC_DEBUG} ${ICUIO_DEBUG} ${ICUDATA_DEBUG}")
+if(VCPKG_TARGET_IS_WINDOWS)
+ set(ICU_RELEASE "${ICU_RELEASE} Advapi32.lib")
+ set(ICU_DEBUG "${ICU_DEBUG} Advapi32.lib" )
+endif()
+
+
+find_library(FONTCONFIG_RELEASE NAMES fontconfig PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
+find_library(FONTCONFIG_DEBUG NAMES fontconfig PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
+find_library(EXPAT_RELEASE NAMES expat PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
+find_library(EXPAT_DEBUG NAMES expat PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
+
#Dependent libraries
find_library(BZ2_RELEASE bz2 PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
find_library(BZ2_DEBUG bz2 bz2d PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
@@ -117,8 +149,9 @@ set(RELEASE_OPTIONS
"LIBPNG_LIBS=${LIBPNG_RELEASE} ${ZLIB_RELEASE}"
"PCRE2_LIBS=${PCRE2_RELEASE}"
"FREETYPE_LIBS=${FREETYPE_RELEASE} ${BZ2_RELEASE} ${LIBPNG_RELEASE} ${ZLIB_RELEASE}"
+ "ICU_LIBS=${ICU_RELEASE}"
"QMAKE_LIBS_PRIVATE+=${BZ2_RELEASE}"
- "QMAKE_LIBS_PRIVATE+=${LIBPNG_RELEASE}"
+ "QMAKE_LIBS_PRIVATE+=${LIBPNG_RELEASE}"
)
set(DEBUG_OPTIONS
"LIBJPEG_LIBS=${JPEG_DEBUG}"
@@ -126,6 +159,7 @@ set(DEBUG_OPTIONS
"LIBPNG_LIBS=${LIBPNG_DEBUG} ${ZLIB_DEBUG}"
"PCRE2_LIBS=${PCRE2_DEBUG}"
"FREETYPE_LIBS=${FREETYPE_DEBUG} ${BZ2_DEBUG} ${LIBPNG_DEBUG} ${ZLIB_DEBUG}"
+ "ICU_LIBS=${ICU_DEBUG}"
"QMAKE_LIBS_PRIVATE+=${BZ2_DEBUG}"
"QMAKE_LIBS_PRIVATE+=${LIBPNG_DEBUG}"
)
@@ -144,14 +178,17 @@ if(VCPKG_TARGET_IS_WINDOWS)
"PSQL_LIBS=${PSQL_RELEASE} ${SSL_RELEASE} ${EAY_RELEASE} ws2_32.lib secur32.lib advapi32.lib shell32.lib crypt32.lib user32.lib gdi32.lib"
"SQLITE_LIBS=${SQLITE_RELEASE}"
"HARFBUZZ_LIBS=${HARFBUZZ_RELEASE}"
+ "OPENSSL_LIBS=${SSL_RELEASE} ${EAY_RELEASE} ws2_32.lib secur32.lib advapi32.lib shell32.lib crypt32.lib user32.lib gdi32.lib"
)
list(APPEND DEBUG_OPTIONS
"PSQL_LIBS=${PSQL_DEBUG} ${SSL_DEBUG} ${EAY_DEBUG} ws2_32.lib secur32.lib advapi32.lib shell32.lib crypt32.lib user32.lib gdi32.lib"
"SQLITE_LIBS=${SQLITE_DEBUG}"
"HARFBUZZ_LIBS=${HARFBUZZ_DEBUG}"
+ "OPENSSL_LIBS=${SSL_DEBUG} ${EAY_DEBUG} ws2_32.lib secur32.lib advapi32.lib shell32.lib crypt32.lib user32.lib gdi32.lib"
)
elseif(VCPKG_TARGET_IS_LINUX)
+ list(APPEND CORE_OPTIONS -fontconfig)
if (NOT EXISTS "/usr/include/GL/glu.h")
message(FATAL_ERROR "qt5 requires libgl1-mesa-dev and libglu1-mesa-dev, please use your distribution's package manager to install them.\nExample: \"apt-get install libgl1-mesa-dev libglu1-mesa-dev\"")
endif()
@@ -159,13 +196,18 @@ elseif(VCPKG_TARGET_IS_LINUX)
"PSQL_LIBS=${PSQL_RELEASE} ${SSL_RELEASE} ${EAY_RELEASE} -ldl -lpthread"
"SQLITE_LIBS=${SQLITE_RELEASE} -ldl -lpthread"
"HARFBUZZ_LIBS=${HARFBUZZ_RELEASE}"
+ "OPENSSL_LIBS=${SSL_RELEASE} ${EAY_RELEASE} -ldl -lpthread"
+ "FONTCONFIG_LIBS=${FONTCONFIG_RELEASE} ${FREETYPE_RELEASE} ${EXPAT_RELEASE}"
)
list(APPEND DEBUG_OPTIONS
"PSQL_LIBS=${PSQL_DEBUG} ${SSL_DEBUG} ${EAY_DEBUG} -ldl -lpthread"
"SQLITE_LIBS=${SQLITE_DEBUG} -ldl -lpthread"
"HARFBUZZ_LIBS=${HARFBUZZ_DEBUG}"
+ "OPENSSL_LIBS=${SSL_DEBUG} ${EAY_DEBUG} -ldl -lpthread"
+ "FONTCONFIG_LIBS=${FONTCONFIG_DEBUG} ${FREETYPE_DEBUG} ${EXPAT_DEBUG}"
)
elseif(VCPKG_TARGET_IS_OSX)
+ list(APPEND CORE_OPTIONS -fontconfig)
if(DEFINED VCPKG_OSX_DEPLOYMENT_TARGET)
set(ENV{QMAKE_MACOSX_DEPLOYMENT_TARGET} ${VCPKG_OSX_DEPLOYMENT_TARGET})
else()
@@ -192,11 +234,15 @@ elseif(VCPKG_TARGET_IS_OSX)
"PSQL_LIBS=${PSQL_RELEASE} ${SSL_RELEASE} ${EAY_RELEASE} -ldl -lpthread"
"SQLITE_LIBS=${SQLITE_RELEASE} -ldl -lpthread"
"HARFBUZZ_LIBS=${HARFBUZZ_RELEASE} -framework ApplicationServices"
+ "OPENSSL_LIBS=${SSL_RELEASE} ${EAY_RELEASE} -ldl -lpthread"
+ "FONTCONFIG_LIBS=${FONTCONFIG_RELEASE} ${FREETYPE_RELEASE} ${EXPAT_RELEASE}"
)
list(APPEND DEBUG_OPTIONS
"PSQL_LIBS=${PSQL_DEBUG} ${SSL_DEBUG} ${EAY_DEBUG} -ldl -lpthread"
"SQLITE_LIBS=${SQLITE_DEBUG} -ldl -lpthread"
"HARFBUZZ_LIBS=${HARFBUZZ_DEBUG} -framework ApplicationServices"
+ "OPENSSL_LIBS=${SSL_DEBUG} ${EAY_DEBUG} -ldl -lpthread"
+ "FONTCONFIG_LIBS=${FONTCONFIG_DEBUG} ${FREETYPE_DEBUG} ${EXPAT_DEBUG}"
)
endif()
@@ -243,11 +289,13 @@ else()
#This needs a new VCPKG policy.
if(VCPKG_TARGET_IS_WINDOWS AND ${VCPKG_LIBRARY_LINKAGE} MATCHES "static") # Move angle dll libraries
message(STATUS "Moving ANGLE dlls from /bin to /tools/qt5-angle/bin. In static builds dlls are not allowed in /bin")
- file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/qt5-angle)
- file(RENAME ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/tools/qt5-angle/bin)
- if(EXISTS ${CURRENT_PACKAGES_DIR}/debug/bin)
- file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/qt5-angle/debug)
- file(RENAME ${CURRENT_PACKAGES_DIR}/debug/bin ${CURRENT_PACKAGES_DIR}/tools/qt5-angle/debug/bin)
+ if(EXISTS "${CURRENT_PACKAGES_DIR}/bin")
+ file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/qt5-angle)
+ file(RENAME ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/tools/qt5-angle/bin)
+ if(EXISTS ${CURRENT_PACKAGES_DIR}/debug/bin)
+ file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/qt5-angle/debug)
+ file(RENAME ${CURRENT_PACKAGES_DIR}/debug/bin ${CURRENT_PACKAGES_DIR}/tools/qt5-angle/debug/bin)
+ endif()
endif()
endif()
diff --git a/ports/qt5-base/vcpkg-cmake-wrapper.cmake b/ports/qt5-base/vcpkg-cmake-wrapper.cmake
index 81a434ffd..1f048e327 100644
--- a/ports/qt5-base/vcpkg-cmake-wrapper.cmake
+++ b/ports/qt5-base/vcpkg-cmake-wrapper.cmake
@@ -2,10 +2,16 @@ _find_package(${ARGS})
function(add_qt_library _target)
foreach(_lib IN LISTS ARGN)
- find_library(${_lib}_LIBRARY_DEBUG NAMES ${_lib}d PATH_SUFFIXES debug/plugins/platforms)
- find_library(${_lib}_LIBRARY_RELEASE NAMES ${_lib} PATH_SUFFIXES plugins/platforms)
- set_property(TARGET ${_target} APPEND PROPERTY INTERFACE_LINK_LIBRARIES
- \$<\$<NOT:\$<CONFIG:DEBUG>>:${${_lib}_LIBRARY_RELEASE}>\$<\$<CONFIG:DEBUG>:${${_lib}_LIBRARY_DEBUG}>)
+ #The fact that we are within this file means we are using the VCPKG toolchain. Has such we only need to search in VCPKG paths!
+ find_library(${_lib}_LIBRARY_DEBUG NAMES ${_lib}d ${_lib} NAMES_PER_DIR PATH_SUFFIXES lib plugins/platforms PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug" NO_DEFAULT_PATH)
+ find_library(${_lib}_LIBRARY_RELEASE NAMES ${_lib} NAMES_PER_DIR PATH_SUFFIXES lib plugins/platforms PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}" NO_DEFAULT_PATH)
+ if(${_lib}_LIBRARY_RELEASE)
+ list(APPEND interface_lib \$<\$<NOT:\$<CONFIG:DEBUG>>:${${_lib}_LIBRARY_RELEASE}>)
+ endif()
+ if(${_lib}_LIBRARY_DEBUG)
+ list(APPEND interface_lib \$<\$<CONFIG:DEBUG>:${${_lib}_LIBRARY_DEBUG}>)
+ endif()
+ set_property(TARGET ${_target} APPEND PROPERTY INTERFACE_LINK_LIBRARIES ${interface_lib})
endforeach()
endfunction()
@@ -23,12 +29,14 @@ if("${_target_type}" STREQUAL "STATIC_LIBRARY")
set_property(TARGET Qt5::Core APPEND PROPERTY INTERFACE_LINK_LIBRARIES
ZLIB::ZLIB JPEG::JPEG PNG::PNG Freetype::Freetype sqlite3 harfbuzz::harfbuzz
- double-conversion::double-conversion OpenSSL::SSL OpenSSL::Crypto
+ double-conversion::double-conversion OpenSSL::SSL OpenSSL::Crypto PostgreSQL::PostgreSQL
)
add_qt_library(Qt5::Core
pcre2-16
- libpq
+ icuin icui18n
+ icutu icuuc icuio
+ icudt icudata
Qt5ThemeSupport
Qt5EventDispatcherSupport
Qt5PlatformCompositorSupport
@@ -39,7 +47,11 @@ if("${_target_type}" STREQUAL "STATIC_LIBRARY")
Netapi32.lib Ws2_32.lib Mincore.lib Winmm.lib Iphlpapi.lib Wtsapi32.lib Dwmapi.lib Imm32.lib)
add_qt_library(Qt5::Core Qt5WindowsUIAutomationSupport qwindows qdirect2d)
-
+ elseif(UNIX AND NOT APPLE)
+ add_qt_library(Qt5::Core
+ Qt5GraphicsSupport
+ Qt5ClipboardSupport
+ Qt5AccessibilitySupport)
elseif(APPLE)
set_property(TARGET Qt5::Core APPEND PROPERTY INTERFACE_LINK_LIBRARIES
"-weak_framework DiskArbitration" "-weak_framework IOKit" "-weak_framework Foundation" "-weak_framework CoreServices"
diff --git a/ports/qt5-imageformats/CONTROL b/ports/qt5-imageformats/CONTROL
index 1fe00cbdc..24108f974 100644
--- a/ports/qt5-imageformats/CONTROL
+++ b/ports/qt5-imageformats/CONTROL
@@ -1,4 +1,4 @@
Source: qt5-imageformats
-Version: 5.12.5-1
+Version: 5.12.5-2
Description: Qt5 Image Formats Module - Plugins for additional image formats: TIFF, MNG, TGA, WBMP
-Build-Depends: qt5-base, tiff, libwebp
+Build-Depends: qt5-base, tiff, libwebp, jasper
diff --git a/ports/qt5-imageformats/portfile.cmake b/ports/qt5-imageformats/portfile.cmake
index ad7f37070..91e83883a 100644
--- a/ports/qt5-imageformats/portfile.cmake
+++ b/ports/qt5-imageformats/portfile.cmake
@@ -5,11 +5,18 @@ include(${CURRENT_INSTALLED_DIR}/share/qt5/qt_port_functions.cmake)
list(APPEND CORE_OPTIONS
-system-tiff
-system-webp
+ -jasper
+ -no-mng # must be explicitly disabled to not automatically pick up mng
-verbose)
find_library(TIFF_RELEASE NAMES tiff PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH) # Depends on lzma
find_library(TIFF_DEBUG NAMES tiffd PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
+find_library(JASPER_RELEASE NAMES jasper PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
+find_library(JASPER_DEBUG NAMES jasperd jasper libjasperd libjasper PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
+find_library(FREEGLUT_RELEASE NAMES freeglut glut PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
+find_library(FREEGLUT_DEBUG NAMES freeglutd freeglut glutd glut PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
+
find_library(WEBP_RELEASE NAMES webp PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
find_library(WEBP_DEBUG NAMES webpd webp PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
find_library(WEBPDEMUX_RELEASE NAMES webpdemux PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
@@ -22,7 +29,9 @@ find_library(LZMA_RELEASE lzma PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_P
find_library(LZMA_DEBUG lzmad lzma PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
set(OPT_REL "TIFF_LIBS=${TIFF_RELEASE} ${LZMA_RELEASE}"
- "WEBP_LIBS=${WEBP_RELEASE} ${WEBPDEMUX_RELEASE}")
+ "WEBP_LIBS=${WEBP_RELEASE} ${WEBPDEMUX_RELEASE}"
+ "JASPER_LIBS=${JASPER_RELEASE} ${FREEGLUT_RELEASE}") # This will still fail if LIBWEBP is installed with all available features due to the missing additional dependencies
set(OPT_DBG "TIFF_LIBS=${TIFF_DEBUG} ${LZMA_DEBUG}"
- "WEBP_LIBS=${WEBP_DEBUG} ${WEBPDEMUX_DEBUG}")
+ "WEBP_LIBS=${WEBP_DEBUG} ${WEBPDEMUX_DEBUG}"
+ "JASPER_LIBS=${JASPER_DEBUG} ${FREEGLUT_DEBUG}")
qt_submodule_installation(BUILD_OPTIONS ${CORE_OPTIONS} BUILD_OPTIONS_RELEASE ${OPT_REL} BUILD_OPTIONS_DEBUG ${OPT_DBG}) \ No newline at end of file
diff --git a/ports/qt5-tools/CONTROL b/ports/qt5-tools/CONTROL
index ad3c67bc5..bfa94474c 100644
--- a/ports/qt5-tools/CONTROL
+++ b/ports/qt5-tools/CONTROL
@@ -1,4 +1,4 @@
Source: qt5-tools
-Version: 5.12.5-2
+Version: 5.12.5-3
Description: Qt5 Tools Module; Includes deployment tools and helpers, Qt Designer, Assistant, and other applications
Build-Depends: qt5-base, qt5-declarative, qt5-activeqt (windows)
diff --git a/ports/qt5-tools/portfile.cmake b/ports/qt5-tools/portfile.cmake
index 214726759..fdbfa8d8e 100644
--- a/ports/qt5-tools/portfile.cmake
+++ b/ports/qt5-tools/portfile.cmake
@@ -1,2 +1,5 @@
include(${CURRENT_INSTALLED_DIR}/share/qt5/qt_port_functions.cmake)
-qt_submodule_installation() \ No newline at end of file
+qt_submodule_installation()
+if(EXISTS "${CURRENT_INSTALLED_DIR}/plugins/platforms/qminimal${VCPKG_TARGET_SHARED_LIBRARY_SUFFIX}")
+ file(INSTALL "${CURRENT_INSTALLED_DIR}/plugins/platforms/qminimal${VCPKG_TARGET_SHARED_LIBRARY_SUFFIX}" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/${PORT}/bin/plugins/platforms")
+endif() \ No newline at end of file
diff --git a/ports/qt5-xmlpatterns/CONTROL b/ports/qt5-xmlpatterns/CONTROL
index 6e7b3d711..15a676498 100644
--- a/ports/qt5-xmlpatterns/CONTROL
+++ b/ports/qt5-xmlpatterns/CONTROL
@@ -1,4 +1,4 @@
Source: qt5-xmlpatterns
-Version: 5.12.5
+Version: 5.12.5-1
Description: Qt5 XML Patterns Module - Support for XPath, XQuery, XSLT and XML schema validation
Build-Depends: qt5-base, qt5-declarative
diff --git a/ports/qt5-xmlpatterns/portfile.cmake b/ports/qt5-xmlpatterns/portfile.cmake
index 214726759..fdbfa8d8e 100644
--- a/ports/qt5-xmlpatterns/portfile.cmake
+++ b/ports/qt5-xmlpatterns/portfile.cmake
@@ -1,2 +1,5 @@
include(${CURRENT_INSTALLED_DIR}/share/qt5/qt_port_functions.cmake)
-qt_submodule_installation() \ No newline at end of file
+qt_submodule_installation()
+if(EXISTS "${CURRENT_INSTALLED_DIR}/plugins/platforms/qminimal${VCPKG_TARGET_SHARED_LIBRARY_SUFFIX}")
+ file(INSTALL "${CURRENT_INSTALLED_DIR}/plugins/platforms/qminimal${VCPKG_TARGET_SHARED_LIBRARY_SUFFIX}" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/${PORT}/bin/plugins/platforms")
+endif() \ No newline at end of file
diff --git a/scripts/ci.baseline.txt b/scripts/ci.baseline.txt
index 23f4805c3..87919c1f2 100644
--- a/scripts/ci.baseline.txt
+++ b/scripts/ci.baseline.txt
@@ -304,7 +304,6 @@ cudnn:arm-uwp=fail
cudnn:x64-uwp=fail
cudnn:x64-windows-static=fail
cudnn:x86-windows=fail
-cutelyst2:x64-linux=fail
cutelyst2:x64-osx=fail
darknet:arm-uwp=fail
darknet:x64-uwp=fail
@@ -1365,7 +1364,6 @@ python3:x64-uwp=fail
qca:x64-linux=fail
qca:x64-osx=fail
qca:x64-windows-static=fail
-qcustomplot:x64-linux=fail
qcustomplot:x64-osx=fail
qhull:arm-uwp=ignore
qhull:x64-windows-static=ignore
@@ -1375,32 +1373,14 @@ qpid-proton:x64-uwp=fail
qpid-proton:x64-windows-static=fail
qscintilla:x64-linux=fail
qscintilla:x64-osx=fail
-qt-advanced-docking-system:x64-linux=ignore
qt5-activeqt:x64-linux=fail
qt5-activeqt:x64-osx=fail
-qt5-base:x64-linux=fail
-qt5-charts:x64-linux=ignore
-qt5-connectivity:x64-linux=ignore
-qt5-datavis3d:x64-linux=ignore
qt5-macextras:x64-linux=fail
qt5-macextras:x64-windows=fail
qt5-macextras:x64-windows-static=fail
qt5-macextras:x86-windows=fail
-qt5-mqtt:x64-linux=ignore
-qt5-networkauth:x64-linux=ignore
-qt5-quickcontrols2:x64-linux=ignore
-qt5-remoteobjects:x64-linux=ignore
-qt5-scxml:x64-linux=ignore
-qt5-serialport:x64-linux=ignore
-qt5-speech:x64-linux=ignore
-qt5-tools:x64-linux=ignore
-qt5-tools:x64-windows-static=ignore
-qt5-webchannel:x64-linux=ignore
-qt5-websockets:x64-linux=ignore
-qt5-webview:x64-linux=ignore
qt5-winextras:x64-linux=fail
qt5-winextras:x64-osx=fail
-qt5-xmlpatterns:x64-linux=ignore
quickfast:x64-linux=ignore
quickfix:x64-linux=ignore
quickfix:x64-windows=ignore
diff --git a/scripts/cmake/vcpkg_configure_qmake.cmake b/scripts/cmake/vcpkg_configure_qmake.cmake
index ad5682a3d..44230a79e 100644
--- a/scripts/cmake/vcpkg_configure_qmake.cmake
+++ b/scripts/cmake/vcpkg_configure_qmake.cmake
@@ -20,7 +20,11 @@ function(vcpkg_configure_qmake)
# Find qmake executable
set(_triplet_hostbindir ${CURRENT_INSTALLED_DIR}/tools/qt5/bin)
- find_program(QMAKE_COMMAND NAMES qmake PATHS ${VCPKG_QT_HOST_TOOLS_ROOT_DIR}/bin ${_triplet_hostbindir})
+ if(DEFINED VCPKG_QT_HOST_TOOLS_ROOT_DIR)
+ find_program(QMAKE_COMMAND NAMES qmake PATHS ${VCPKG_QT_HOST_TOOLS_ROOT_DIR}/bin ${_triplet_hostbindir} NO_DEFAULT_PATH)
+ else()
+ find_program(QMAKE_COMMAND NAMES qmake PATHS ${_triplet_hostbindir} NO_DEFAULT_PATH)
+ endif()
if(NOT QMAKE_COMMAND)
message(FATAL_ERROR "vcpkg_configure_qmake: unable to find qmake.")