aboutsummaryrefslogtreecommitdiff
path: root/ports/qt5-base
diff options
context:
space:
mode:
authorSean Warren <s.warren@garvan.org.au>2019-03-27 04:46:40 +1100
committerPhil Christensen <philc@microsoft.com>2019-03-26 10:46:40 -0700
commit98ae960b4b3d41ed8a82efb76b05ba183e2228bf (patch)
treeed523bf601d9c1f4794e90a07e6020a5ff7349fd /ports/qt5-base
parent672370980a2b3c1c7ce9863e4d54d5196f46459a (diff)
downloadvcpkg-98ae960b4b3d41ed8a82efb76b05ba183e2228bf.tar.gz
vcpkg-98ae960b4b3d41ed8a82efb76b05ba183e2228bf.zip
Add Qt5 static missing dependencies, fix mac packages (#5680)
* [qt5-macextras] Add qt5-macextras port * [cutelyst2] Fix install on mac * [qt5-purchasing] Add missing dependency on qt5-declarative * [qt5] Ensure we link to required libraries for qt5 static build * [qscintilla] Fix install on mac * [libqglviewer] Fix install paths on mac * [libqglviewer] Fix regressions * [qscintilla] Fix regressions * Bump version numbers * [qt5] restore harfbuzz on osx
Diffstat (limited to 'ports/qt5-base')
-rw-r--r--ports/qt5-base/CONTROL2
-rw-r--r--ports/qt5-base/portfile.cmake8
-rw-r--r--ports/qt5-base/vcpkg-cmake-wrapper.cmake66
3 files changed, 72 insertions, 4 deletions
diff --git a/ports/qt5-base/CONTROL b/ports/qt5-base/CONTROL
index 4fd30be4c..8d1e6b8f6 100644
--- a/ports/qt5-base/CONTROL
+++ b/ports/qt5-base/CONTROL
@@ -1,4 +1,4 @@
Source: qt5-base
Version: 5.12.1-3
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 (!osx), sqlite3, libpq, double-conversion, openssl
+Build-Depends: zlib, libjpeg-turbo, libpng, freetype, pcre2, harfbuzz, sqlite3, libpq, double-conversion, openssl
diff --git a/ports/qt5-base/portfile.cmake b/ports/qt5-base/portfile.cmake
index ce2252622..4b8869196 100644
--- a/ports/qt5-base/portfile.cmake
+++ b/ports/qt5-base/portfile.cmake
@@ -50,6 +50,7 @@ set(CORE_OPTIONS
-system-pcre
-system-doubleconversion
-system-sqlite
+ -system-harfbuzz
-no-fontconfig
-nomake examples
-nomake tests
@@ -70,7 +71,6 @@ if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore
OPTIONS
${CORE_OPTIONS}
-mp
- -system-harfbuzz
-opengl desktop # other options are "-no-opengl", "-opengl angle", and "-opengl desktop"
OPTIONS_RELEASE
LIBJPEG_LIBS="-ljpeg"
@@ -94,7 +94,6 @@ elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux")
PLATFORM "linux-g++"
OPTIONS
${CORE_OPTIONS}
- -system-harfbuzz
OPTIONS_RELEASE
"LIBJPEG_LIBS=${CURRENT_INSTALLED_DIR}/lib/libjpeg.a"
"QMAKE_LIBS_PRIVATE+=${CURRENT_INSTALLED_DIR}/lib/libpng16.a"
@@ -121,7 +120,6 @@ configure_qt(
PLATFORM "macx-clang"
OPTIONS
${CORE_OPTIONS}
- -no-harfbuzz
OPTIONS_RELEASE
"LIBJPEG_LIBS=${CURRENT_INSTALLED_DIR}/lib/libjpeg.a"
"QMAKE_LIBS_PRIVATE+=${CURRENT_INSTALLED_DIR}/lib/libpng16.a"
@@ -131,6 +129,7 @@ configure_qt(
"FREETYPE_LIBS=${CURRENT_INSTALLED_DIR}/lib/libfreetype.a"
"PSQL_LIBS=${CURRENT_INSTALLED_DIR}/lib/libpq.a ${CURRENT_INSTALLED_DIR}/lib/libssl.a ${CURRENT_INSTALLED_DIR}/lib/libcrypto.a -ldl -lpthread"
"SQLITE_LIBS=${CURRENT_INSTALLED_DIR}/lib/libsqlite3.a -ldl -lpthread"
+ "HARFBUZZ_LIBS=${CURRENT_INSTALLED_DIR}/lib/libharfbuzz.a -framework ApplicationServices"
OPTIONS_DEBUG
"LIBJPEG_LIBS=${CURRENT_INSTALLED_DIR}/debug/lib/libjpeg.a"
"QMAKE_LIBS_PRIVATE+=${CURRENT_INSTALLED_DIR}/debug/lib/libpng16d.a"
@@ -140,6 +139,7 @@ configure_qt(
"FREETYPE_LIBS=${CURRENT_INSTALLED_DIR}/debug/lib/libfreetyped.a"
"PSQL_LIBS=${CURRENT_INSTALLED_DIR}/debug/lib/libpqd.a ${CURRENT_INSTALLED_DIR}/debug/lib/libssl.a ${CURRENT_INSTALLED_DIR}/debug/lib/libcrypto.a -ldl -lpthread"
"SQLITE_LIBS=${CURRENT_INSTALLED_DIR}/debug/lib/libsqlite3.a -ldl -lpthread"
+ "HARFBUZZ_LIBS=${CURRENT_INSTALLED_DIR}/debug/lib/libharfbuzz.a -framework ApplicationServices"
)
endif()
@@ -218,5 +218,7 @@ endforeach()
file(COPY ${CMAKE_CURRENT_LIST_DIR}/qtdeploy.ps1 DESTINATION ${CURRENT_PACKAGES_DIR}/plugins)
file(COPY ${CMAKE_CURRENT_LIST_DIR}/qtdeploy.ps1 DESTINATION ${CURRENT_PACKAGES_DIR}/debug/plugins)
+file(COPY ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/qt5core)
+
file(INSTALL ${SOURCE_PATH}/LICENSE.LGPLv3 DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
# \ No newline at end of file
diff --git a/ports/qt5-base/vcpkg-cmake-wrapper.cmake b/ports/qt5-base/vcpkg-cmake-wrapper.cmake
new file mode 100644
index 000000000..64496cec0
--- /dev/null
+++ b/ports/qt5-base/vcpkg-cmake-wrapper.cmake
@@ -0,0 +1,66 @@
+_find_package(${ARGS})
+
+function(add_qt_library _target)
+ foreach(_lib IN LISTS ARGN)
+ find_library(${_lib}_LIBRARY_DEBUG NAMES ${_lib}d PATH_SUFFIXES 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}>)
+ endforeach()
+endfunction()
+
+get_target_property(_target_type Qt5::Core TYPE)
+if("${_target_type}" STREQUAL "STATIC_LIBRARY")
+ find_package(ZLIB)
+ find_package(JPEG)
+ find_package(PNG)
+ find_package(Freetype)
+ find_package(sqlite3 CONFIG)
+ find_package(PostgreSQL MODULE REQUIRED)
+ find_package(double-conversion CONFIG)
+ find_package(OpenSSL)
+ find_package(harfbuzz CONFIG)
+
+ set_property(TARGET Qt5::Core APPEND PROPERTY INTERFACE_LINK_LIBRARIES
+ ZLIB::ZLIB JPEG::JPEG PNG::PNG Freetype::Freetype sqlite3 harfbuzz::harfbuzz
+ ${PostgreSQL_LIBRARY} double-conversion::double-conversion OpenSSL::SSL OpenSSL::Crypto
+ )
+
+ add_qt_library(Qt5::Core
+ pcre2-16
+ Qt5ThemeSupport
+ Qt5EventDispatcherSupport
+ Qt5PlatformCompositorSupport
+ Qt5FontDatabaseSupport)
+
+ if(MSVC)
+ set_property(TARGET Qt5::Core APPEND PROPERTY INTERFACE_LINK_LIBRARIES
+ Netapi32.lib Ws2_32.lib Mincore.lib Winmm.lib Iphlpapi.lib Wtsapi32.lib Dwmapi.lib)
+
+ add_qt_library(Qt5::Core Qt5WindowsUIAutomationSupport qwindows qdirect2d)
+
+ elseif(APPLE)
+ set_property(TARGET Qt5::Core APPEND PROPERTY INTERFACE_LINK_LIBRARIES
+ "-weak_framework DiskArbitration" "-weak_framework IOKit" "-weak_framework Foundation" "-weak_framework CoreServices"
+ "-weak_framework AppKit" "-weak_framework Security" "-weak_framework ApplicationServices"
+ "-weak_framework CoreFoundation" "-weak_framework SystemConfiguration"
+ "-weak_framework Carbon"
+ "-weak_framework QuartzCore"
+ "-weak_framework CoreVideo"
+ "-weak_framework Metal"
+ "-weak_framework CoreText"
+ "-weak_framework ApplicationServices"
+ "-weak_framework CoreGraphics"
+ "-weak_framework OpenGL"
+ "-weak_framework AGL"
+ "-weak_framework ImageIO"
+ "z" "m"
+ cups)
+ add_qt_library(Qt5::Core
+ Qt5GraphicsSupport
+ Qt5ClipboardSupport
+ Qt5AccessibilitySupport
+ qcocoa)
+ endif()
+
+endif() \ No newline at end of file