Skip to content

Commit 1bb0fe6

Browse files
Neumann-Aras0219-msftstrega-nil
authored
[vcpkg baseline][qt5-base] Fix glib link issues on linux (#16954)
* [qt5-base] fix glib link issues on linux * add version * remove unused vars * update version * write port info file. * version stuff * remove paraview from baseline. It was added due to the same spurious glib failures. * trying out a different approach * more changes * change the if to actually use the buildtype instead * remove x_vcpkg_get_port_info * add option QT_OPENSSL_LINK back in * use INCLUDE_DIRS_(DEBUG|RELEASE) instead of just INCLUDE_DIRS * regen docs * remove function call I forgot to remove * [vcpkg-pkgconfig-get-modules] Move to port * revert changes to ports.cmake * include the file in qt5-base * fix path * remove unnecessary include * Apply suggestions from code review Co-authored-by: nicole mazzuca <[email protected]> * Apply suggestions from code review * update version * ws removal * version stuff Co-authored-by: Robert Schumacher <[email protected]> Co-authored-by: nicole mazzuca <[email protected]>
1 parent 030cfaa commit 1bb0fe6

17 files changed

+321
-57
lines changed

docs/maintainers/portfile-functions.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,3 +73,7 @@
7373
### [vcpkg-cmake-config](ports/vcpkg-cmake-config.md)
7474

7575
- [vcpkg\_cmake\_config\_fixup](ports/vcpkg-cmake-config/vcpkg_cmake_config_fixup.md)
76+
77+
### [vcpkg-pkgconfig-get-modules](ports/vcpkg-pkgconfig-get-modules.md)
78+
79+
- [x\_vcpkg\_pkgconfig\_get\_modules](ports/vcpkg-pkgconfig-get-modules/x_vcpkg_pkgconfig_get_modules.md)
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# vcpkg-pkgconfig-get-modules
2+
3+
**Experimental: will change or be removed at any time**
4+
5+
`vcpkg-pkgconfig-get-modules` provides `x_vcpkg_pkgconfig_get_modules()`, a function which simplifies calling
6+
`pkg-config` in portfiles in order to gather dependencies for exotic buildsystems.
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
# x_vcpkg_pkgconfig_get_modules
2+
3+
The latest version of this document lives in the [vcpkg repo](https://github.com/Microsoft/vcpkg/blob/master/docs/maintainers/ports/vcpkg-pkgconfig-get-modules/x_vcpkg_pkgconfig_get_modules.md).
4+
5+
Experimental
6+
Retrieve required module information from pkgconfig modules
7+
8+
## Usage
9+
```cmake
10+
x_vcpkg_pkgconfig_get_modules(
11+
PREFIX <prefix>
12+
MODULES <pkgconfig_modules>...
13+
[LIBS]
14+
[LIBRARIES]
15+
[LIBRARIES_DIRS]
16+
[INCLUDE_DIRS]
17+
)
18+
```
19+
## Parameters
20+
21+
### PREFIX
22+
Used variable prefix to use
23+
24+
### MODULES
25+
List of pkgconfig modules to retrieve information for.
26+
27+
### LIBS
28+
Returns `"${PKGCONFIG}" --libs` in <prefix>_LIBS_(DEBUG|RELEASE)
29+
30+
### LIBRARIES
31+
Returns `"${PKGCONFIG}" --libs-only-l` in <prefix>_LIBRARIES_(DEBUG|RELEASE)
32+
33+
### LIBRARIES_DIRS
34+
Returns `"${PKGCONFIG}" --libs-only-L` in <prefix>_LIBRARIES_DIRS_(DEBUG|RELEASE)
35+
36+
### INCLUDE_DIRS
37+
Returns `"${PKGCONFIG}" --cflags-only-I` in <prefix>_INCLUDE_DIRS_(DEBUG|RELEASE)
38+
39+
## Examples
40+
41+
* [qt5-base](https://github.com/microsoft/vcpkg/blob/master/ports/qt5-base/portfile.cmake)
42+
43+
## Source
44+
[ports/vcpkg-pkgconfig-get-modules/x\_vcpkg\_pkgconfig\_get\_modules.cmake](https://github.com/Microsoft/vcpkg/blob/master/ports/vcpkg-pkgconfig-get-modules/x_vcpkg_pkgconfig_get_modules.cmake)

docs/regenerate.ps1

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ class CMakeDocumentation {
2626
[String[]]$cmakeScriptsPorts = @(
2727
'vcpkg-cmake'
2828
'vcpkg-cmake-config'
29+
'vcpkg-pkgconfig-get-modules'
2930
)
3031

3132
[CMakeDocumentation[]]$tableOfContents = @()

ports/qt5-base/cmake/qt_build_submodule.cmake

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,33 +6,34 @@ function(qt_build_submodule SOURCE_PATH)
66
vcpkg_find_acquire_program(PYTHON2)
77
get_filename_component(PYTHON2_EXE_PATH ${PYTHON2} DIRECTORY)
88
vcpkg_add_to_path("${PYTHON2_EXE_PATH}")
9-
9+
1010
vcpkg_configure_qmake(SOURCE_PATH ${SOURCE_PATH} ${ARGV})
1111

1212
vcpkg_build_qmake(SKIP_MAKEFILES)
13-
13+
1414
#Fix the installation location within the makefiles
1515
qt_fix_makefile_install("${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/")
1616
qt_fix_makefile_install("${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/")
1717

1818
#Install the module files
1919
vcpkg_build_qmake(TARGETS install SKIP_MAKEFILES BUILD_LOGNAME install)
20-
20+
2121
qt_fix_cmake(${CURRENT_PACKAGES_DIR} ${PORT})
22+
vcpkg_fixup_pkgconfig() # Needs further investigation if this is enough!
2223

2324
#Replace with VCPKG variables if PR #7733 is merged
2425
unset(BUILDTYPES)
2526
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
2627
set(_buildname "DEBUG")
2728
list(APPEND BUILDTYPES ${_buildname})
2829
set(_short_name_${_buildname} "dbg")
29-
set(_path_suffix_${_buildname} "/debug")
30+
set(_path_suffix_${_buildname} "/debug")
3031
endif()
3132
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
3233
set(_buildname "RELEASE")
3334
list(APPEND BUILDTYPES ${_buildname})
3435
set(_short_name_${_buildname} "rel")
35-
set(_path_suffix_${_buildname} "")
36+
set(_path_suffix_${_buildname} "")
3637
endif()
3738
unset(_buildname)
3839

@@ -42,14 +43,14 @@ function(qt_build_submodule SOURCE_PATH)
4243
file(GLOB_RECURSE PRL_FILES "${CURRENT_BUILD_PACKAGE_DIR}/lib/*.prl" "${CURRENT_PACKAGES_DIR}/tools/qt5${_path_suffix_${_buildname}}/lib/*.prl"
4344
"${CURRENT_PACKAGES_DIR}/tools/qt5${_path_suffix_${_buildname}}/mkspecs/*.pri")
4445
qt_fix_prl("${CURRENT_BUILD_PACKAGE_DIR}" "${PRL_FILES}")
45-
46+
4647
# This makes it impossible to use the build tools in any meaningful way. qt5 assumes they are all in one folder!
4748
# So does the Qt VS Plugin which even assumes all of the in a bin folder
4849
#Move tools to the correct directory
4950
#if(EXISTS ${CURRENT_BUILD_PACKAGE_DIR}/tools/qt5)
5051
# file(RENAME ${CURRENT_BUILD_PACKAGE_DIR}/tools/qt5 ${CURRENT_PACKAGES_DIR}/tools/${PORT})
5152
#endif()
52-
53+
5354
# Move executables in bin to tools
5455
# This is ok since those are not build tools.
5556
file(GLOB PACKAGE_EXE ${CURRENT_BUILD_PACKAGE_DIR}/bin/*.exe)
@@ -64,26 +65,26 @@ function(qt_build_submodule SOURCE_PATH)
6465
endif()
6566
endforeach()
6667
endif()
67-
68+
6869
#cleanup empty folders
6970
file(GLOB PACKAGE_LIBS "${CURRENT_BUILD_PACKAGE_DIR}/lib/*")
7071
if(NOT PACKAGE_LIBS)
7172
file(REMOVE_RECURSE "${CURRENT_BUILD_PACKAGE_DIR}/lib")
7273
endif()
73-
74+
7475
file(GLOB PACKAGE_BINS "${CURRENT_BUILD_PACKAGE_DIR}/bin/*")
7576
if(NOT PACKAGE_BINS)
7677
file(REMOVE_RECURSE "${CURRENT_BUILD_PACKAGE_DIR}/bin")
7778
endif()
7879
endforeach()
7980
if(EXISTS "${CURRENT_PACKAGES_DIR}/tools/qt5/bin")
8081
file(COPY "${CURRENT_PACKAGES_DIR}/tools/qt5/bin" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/${PORT}")
81-
82+
8283
set(CURRENT_INSTALLED_DIR_BACKUP "${CURRENT_INSTALLED_DIR}")
8384
set(CURRENT_INSTALLED_DIR "./../../.." ) # Making the qt.conf relative and not absolute
8485
configure_file(${CURRENT_INSTALLED_DIR_BACKUP}/tools/qt5/qt_release.conf ${CURRENT_PACKAGES_DIR}/tools/${PORT}/bin/qt.conf) # This makes the tools at least useable for release
8586
set(CURRENT_INSTALLED_DIR "${CURRENT_INSTALLED_DIR_BACKUP}")
86-
87+
8788
vcpkg_copy_tool_dependencies("${CURRENT_PACKAGES_DIR}/tools/${PORT}/bin")
8889
if(VCPKG_TARGET_IS_WINDOWS AND VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
8990
file(GLOB_RECURSE DLL_DEPS_AVAIL "${CURRENT_INSTALLED_DIR}/tools/qt5/bin/*.dll")
@@ -99,14 +100,14 @@ function(qt_build_submodule SOURCE_PATH)
99100
endforeach()
100101
endif()
101102
endif()
102-
103+
103104
#This should be removed if somehow possible
104105
if(EXISTS "${CURRENT_PACKAGES_DIR}/tools/qt5/debug/bin")
105106
set(CURRENT_INSTALLED_DIR_BACKUP "${CURRENT_INSTALLED_DIR}")
106107
set(CURRENT_INSTALLED_DIR "./../../../.." ) # Making the qt.conf relative and not absolute
107108
configure_file(${CURRENT_INSTALLED_DIR_BACKUP}/tools/qt5/qt_debug.conf ${CURRENT_PACKAGES_DIR}/tools/${PORT}/debug/bin/qt.conf) # This makes the tools at least useable for release
108109
set(CURRENT_INSTALLED_DIR "${CURRENT_INSTALLED_DIR_BACKUP}")
109-
110+
110111
vcpkg_copy_tool_dependencies("${CURRENT_PACKAGES_DIR}/tools/${PORT}/debug/bin")
111112
if(VCPKG_TARGET_IS_WINDOWS AND VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
112113
file(GLOB_RECURSE DLL_DEPS_AVAIL "${CURRENT_INSTALLED_DIR}/tools/qt5/debug/bin/*.dll")
@@ -122,5 +123,5 @@ function(qt_build_submodule SOURCE_PATH)
122123
endforeach()
123124
endif()
124125
endif()
125-
126+
126127
endfunction()

ports/qt5-base/portfile.cmake

Lines changed: 35 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,11 @@
11
vcpkg_buildpath_length_warning(37)
22

33
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
4-
option(QT_OPENSSL_LINK "Link against OpenSSL at compile-time." ON)
4+
set(QT_OPENSSL_LINK_DEFAULT ON)
55
else()
6-
option(QT_OPENSSL_LINK "Link against OpenSSL at compile-time." OFF)
6+
set(QT_OPENSSL_LINK_DEFAULT OFF)
77
endif()
8-
9-
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
10-
option(QT_MYSQL_PLUGIN "Create MySQL plugin" OFF)
11-
else()
12-
if ("mysqlplugin" IN_LIST FEATURES)
13-
option(QT_MYSQL_PLUGIN "Create MySQL plugin" ON)
14-
endif()
15-
endif()
16-
8+
option(QT_OPENSSL_LINK "Link against OpenSSL at compile-time." ${QT_OPENSSL_LINK_DEFAULT})
179

1810
if (VCPKG_TARGET_IS_LINUX)
1911
message(WARNING "qt5-base currently requires some packages from the system package manager, see https://doc.qt.io/qt-5/linux-requirements.html")
@@ -45,9 +37,17 @@ else()
4537
)
4638
endif()
4739

48-
set(WITH_PGSQL OFF)
40+
set(WITH_PGSQL_PLUGIN OFF)
4941
if("postgresqlplugin" IN_LIST FEATURES)
50-
set(WITH_PGSQL ON)
42+
set(WITH_PGSQL_PLUGIN ON)
43+
endif()
44+
45+
set(WITH_MYSQL_PLUGIN OFF)
46+
if ("mysqlplugin" IN_LIST FEATURES)
47+
set(WITH_MYSQL_PLUGIN ON)
48+
endif()
49+
if(WITH_MYSQL_PLUGIN AND NOT VCPKG_TARGET_IS_WINDOWS)
50+
message(WARNING "${PORT} is currently not setup to support feature 'mysqlplugin' on platforms other than windows. Feel free to open up a PR to fix it!")
5151
endif()
5252

5353
include(qt_port_functions)
@@ -121,31 +121,33 @@ list(APPEND CORE_OPTIONS
121121
-system-zlib
122122
-system-libjpeg
123123
-system-libpng
124-
-system-freetype # static builds require to also link its dependent bzip!
124+
-system-freetype
125125
-system-pcre
126126
-system-doubleconversion
127127
-system-sqlite
128128
-system-harfbuzz
129129
-icu
130130
-no-vulkan
131-
-no-angle) # Qt does not need to build angle. VCPKG will build angle!
131+
-no-angle # Qt does not need to build angle. VCPKG will build angle!
132+
-no-glib
133+
)
132134

133135
if(QT_OPENSSL_LINK)
134136
list(APPEND CORE_OPTIONS -openssl-linked)
135137
endif()
136138

137-
if(WITH_PGSQL)
139+
if(WITH_PGSQL_PLUGIN)
138140
list(APPEND CORE_OPTIONS -sql-psql)
139141
else()
140142
list(APPEND CORE_OPTIONS -no-sql-psql)
141143
endif()
142-
143-
if(VCPKG_TARGET_IS_WINDOWS)
144-
if(QT_MYSQL_PLUGIN)
145-
list(APPEND CORE_OPTIONS -sql-mysql)
146-
endif()
144+
if(WITH_MYSQL_PLUGIN)
145+
list(APPEND CORE_OPTIONS -sql-mysql)
146+
else()
147+
list(APPEND CORE_OPTIONS -no-sql-mysql)
147148
endif()
148149

150+
149151
find_library(ZLIB_RELEASE NAMES z zlib PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
150152
find_library(ZLIB_DEBUG NAMES z zlib zd zlibd PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
151153
find_library(JPEG_RELEASE NAMES jpeg jpeg-static PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
@@ -202,7 +204,6 @@ if(VCPKG_TARGET_IS_WINDOWS)
202204
set(ICU_DEBUG "${ICU_DEBUG} Advapi32.lib" )
203205
endif()
204206

205-
206207
find_library(FONTCONFIG_RELEASE NAMES fontconfig PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
207208
find_library(FONTCONFIG_DEBUG NAMES fontconfig PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
208209
find_library(EXPAT_RELEASE NAMES expat PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
@@ -222,13 +223,7 @@ set(FREETYPE_RELEASE_ALL "${FREETYPE_RELEASE} ${BZ2_RELEASE} ${LIBPNG_RELEASE} $
222223
set(FREETYPE_DEBUG_ALL "${FREETYPE_DEBUG} ${BZ2_DEBUG} ${LIBPNG_DEBUG} ${ZLIB_DEBUG} ${BROTLI_DEC_DEBUG} ${BROTLI_COMMON_DEBUG}")
223224

224225
# If HarfBuzz is built with GLib enabled, it must be statically link
225-
set(GLIB_LIB_VERSION 2.0)
226-
find_library(GLIB_RELEASE NAMES glib-${GLIB_LIB_VERSION} PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
227-
find_library(GLIB_DEBUG NAMES glib-${GLIB_LIB_VERSION} PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
228-
if(GLIB_RELEASE MATCHES "-NOTFOUND" OR GLIB_DEBUG MATCHES "-NOTFOUND")
229-
set(GLIB_RELEASE "")
230-
set(GLIB_DEBUG "")
231-
endif()
226+
x_vcpkg_pkgconfig_get_modules(PREFIX harfbuzz MODULES harfbuzz LIBRARIES)
232227

233228
set(RELEASE_OPTIONS
234229
"LIBJPEG_LIBS=${JPEG_RELEASE}"
@@ -266,23 +261,23 @@ if(VCPKG_TARGET_IS_WINDOWS)
266261
endif()
267262
list(APPEND RELEASE_OPTIONS
268263
"SQLITE_LIBS=${SQLITE_RELEASE}"
269-
"HARFBUZZ_LIBS=${HARFBUZZ_RELEASE} ${FREETYPE_RELEASE_ALL}"
264+
"HARFBUZZ_LIBS=${harfbuzz_LIBRARIES_RELEASE}"
270265
"OPENSSL_LIBS=${SSL_RELEASE} ${EAY_RELEASE} ws2_32.lib secur32.lib advapi32.lib shell32.lib crypt32.lib user32.lib gdi32.lib"
271266
)
272267

273268
list(APPEND DEBUG_OPTIONS
274269
"SQLITE_LIBS=${SQLITE_DEBUG}"
275-
"HARFBUZZ_LIBS=${HARFBUZZ_DEBUG} ${FREETYPE_DEBUG_ALL}"
270+
"HARFBUZZ_LIBS=${harfbuzz_LIBRARIES_DEBUG}"
276271
"OPENSSL_LIBS=${SSL_DEBUG} ${EAY_DEBUG} ws2_32.lib secur32.lib advapi32.lib shell32.lib crypt32.lib user32.lib gdi32.lib"
277272
)
278-
if(WITH_PGSQL)
273+
if(WITH_PGSQL_PLUGIN)
279274
list(APPEND RELEASE_OPTIONS "PSQL_LIBS=${PSQL_RELEASE} ${PSQL_PORT_RELEASE} ${PSQL_COMMON_RELEASE} ${SSL_RELEASE} ${EAY_RELEASE} ws2_32.lib secur32.lib advapi32.lib shell32.lib crypt32.lib user32.lib gdi32.lib")
280275
list(APPEND DEBUG_OPTIONS "PSQL_LIBS=${PSQL_DEBUG} ${PSQL_PORT_DEBUG} ${PSQL_COMMON_DEBUG} ${SSL_DEBUG} ${EAY_DEBUG} ws2_32.lib secur32.lib advapi32.lib shell32.lib crypt32.lib user32.lib gdi32.lib")
281276
endif()
282-
if (QT_MYSQL_PLUGIN)
277+
if (WITH_MYSQL_PLUGIN)
283278
list(APPEND RELEASE_OPTIONS "MYSQL_LIBS=${MYSQL_RELEASE}")
284279
list(APPEND DEBUG_OPTIONS "MYSQL_LIBS=${MYSQL_DEBUG}")
285-
endif(QT_MYSQL_PLUGIN)
280+
endif(WITH_MYSQL_PLUGIN)
286281

287282
elseif(VCPKG_TARGET_IS_LINUX)
288283
list(APPEND CORE_OPTIONS -fontconfig -xcb-xlib -xcb -linuxfb)
@@ -291,17 +286,17 @@ elseif(VCPKG_TARGET_IS_LINUX)
291286
endif()
292287
list(APPEND RELEASE_OPTIONS
293288
"SQLITE_LIBS=${SQLITE_RELEASE} -ldl -lpthread"
294-
"HARFBUZZ_LIBS=${HARFBUZZ_RELEASE} ${FREETYPE_RELEASE_ALL} ${GLIB_RELEASE} -lpthread"
289+
"HARFBUZZ_LIBS=${harfbuzz_LIBRARIES_RELEASE}"
295290
"OPENSSL_LIBS=${SSL_RELEASE} ${EAY_RELEASE} -ldl -lpthread"
296291
"FONTCONFIG_LIBS=${FONTCONFIG_RELEASE} ${FREETYPE_RELEASE} ${EXPAT_RELEASE} -luuid"
297292
)
298293
list(APPEND DEBUG_OPTIONS
299294
"SQLITE_LIBS=${SQLITE_DEBUG} -ldl -lpthread"
300-
"HARFBUZZ_LIBS=${HARFBUZZ_DEBUG} ${FREETYPE_DEBUG_ALL} ${GLIB_DEBUG} -lpthread"
295+
"HARFBUZZ_LIBS=${harfbuzz_LIBRARIES_DEBUG}"
301296
"OPENSSL_LIBS=${SSL_DEBUG} ${EAY_DEBUG} -ldl -lpthread"
302297
"FONTCONFIG_LIBS=${FONTCONFIG_DEBUG} ${FREETYPE_DEBUG} ${EXPAT_DEBUG} -luuid"
303298
)
304-
if(WITH_PGSQL)
299+
if(WITH_PGSQL_PLUGIN)
305300
list(APPEND RELEASE_OPTIONS "PSQL_LIBS=${PSQL_RELEASE} ${PSQL_PORT_RELEASE} ${PSQL_TYPES_RELEASE} ${PSQL_COMMON_RELEASE} ${SSL_RELEASE} ${EAY_RELEASE} -ldl -lpthread")
306301
list(APPEND DEBUG_OPTIONS "PSQL_LIBS=${PSQL_DEBUG} ${PSQL_PORT_DEBUG} ${PSQL_TYPES_DEBUG} ${PSQL_COMMON_DEBUG} ${SSL_DEBUG} ${EAY_DEBUG} -ldl -lpthread")
307302
endif()
@@ -331,18 +326,18 @@ elseif(VCPKG_TARGET_IS_OSX)
331326
#list(APPEND QT_PLATFORM_CONFIGURE_OPTIONS HOST_PLATFORM ${TARGET_MKSPEC})
332327
list(APPEND RELEASE_OPTIONS
333328
"SQLITE_LIBS=${SQLITE_RELEASE} -ldl -lpthread"
334-
"HARFBUZZ_LIBS=${HARFBUZZ_RELEASE} ${FREETYPE_RELEASE_ALL} -framework ApplicationServices"
329+
"HARFBUZZ_LIBS=${harfbuzz_LIBRARIES_RELEASE} -framework ApplicationServices"
335330
"OPENSSL_LIBS=${SSL_RELEASE} ${EAY_RELEASE} -ldl -lpthread"
336331
"FONTCONFIG_LIBS=${FONTCONFIG_RELEASE} ${FREETYPE_RELEASE} ${EXPAT_RELEASE} -liconv"
337332
)
338333
list(APPEND DEBUG_OPTIONS
339334
"SQLITE_LIBS=${SQLITE_DEBUG} -ldl -lpthread"
340-
"HARFBUZZ_LIBS=${HARFBUZZ_DEBUG} ${FREETYPE_DEBUG_ALL} -framework ApplicationServices"
335+
"HARFBUZZ_LIBS=${harfbuzz_LIBRARIES_DEBUG} -framework ApplicationServices"
341336
"OPENSSL_LIBS=${SSL_DEBUG} ${EAY_DEBUG} -ldl -lpthread"
342337
"FONTCONFIG_LIBS=${FONTCONFIG_DEBUG} ${FREETYPE_DEBUG} ${EXPAT_DEBUG} -liconv"
343338
)
344339

345-
if(WITH_PGSQL)
340+
if(WITH_PGSQL_PLUGIN)
346341
list(APPEND RELEASE_OPTIONS "PSQL_LIBS=${PSQL_RELEASE} ${PSQL_PORT_RELEASE} ${PSQL_TYPES_RELEASE} ${PSQL_COMMON_RELEASE} ${SSL_RELEASE} ${EAY_RELEASE} -ldl -lpthread")
347342
list(APPEND DEBUG_OPTIONS "PSQL_LIBS=${PSQL_DEBUG} ${PSQL_PORT_DEBUG} ${PSQL_TYPES_DEBUG} ${PSQL_COMMON_DEBUG} ${SSL_DEBUG} ${EAY_DEBUG} -ldl -lpthread")
348343
endif()

ports/qt5-base/vcpkg.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "qt5-base",
33
"version-string": "5.15.2",
4-
"port-version": 3,
4+
"port-version": 4,
55
"description": "Qt5 Application Framework Base Module. Includes Core, GUI, Widgets, Networking, SQL, Concurrent and other essential qt components.",
66
"homepage": "https://www.qt.io/",
77
"dependencies": [
@@ -26,6 +26,10 @@
2626
"openssl",
2727
"pcre2",
2828
"sqlite3",
29+
{
30+
"name": "vcpkg-pkgconfig-get-modules",
31+
"host": true
32+
},
2933
"zlib",
3034
"zstd"
3135
],
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# vcpkg-pkgconfig-get-modules
2+
3+
**Experimental: will change or be removed at any time**
4+
5+
`vcpkg-pkgconfig-get-modules` provides `x_vcpkg_pkgconfig_get_modules()`, a function which simplifies calling
6+
`pkg-config` in portfiles in order to gather dependencies for exotic buildsystems.

0 commit comments

Comments
 (0)