mirror of
https://github.com/microsoft/vcpkg.git
synced 2025-01-19 02:33:02 +08:00
[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 <mazzucan@outlook.com> * Apply suggestions from code review * update version * ws removal * version stuff Co-authored-by: Robert Schumacher <roschuma@microsoft.com> Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
This commit is contained in:
parent
030cfaa24d
commit
1bb0fe61df
@ -73,3 +73,7 @@
|
|||||||
### [vcpkg-cmake-config](ports/vcpkg-cmake-config.md)
|
### [vcpkg-cmake-config](ports/vcpkg-cmake-config.md)
|
||||||
|
|
||||||
- [vcpkg\_cmake\_config\_fixup](ports/vcpkg-cmake-config/vcpkg_cmake_config_fixup.md)
|
- [vcpkg\_cmake\_config\_fixup](ports/vcpkg-cmake-config/vcpkg_cmake_config_fixup.md)
|
||||||
|
|
||||||
|
### [vcpkg-pkgconfig-get-modules](ports/vcpkg-pkgconfig-get-modules.md)
|
||||||
|
|
||||||
|
- [x\_vcpkg\_pkgconfig\_get\_modules](ports/vcpkg-pkgconfig-get-modules/x_vcpkg_pkgconfig_get_modules.md)
|
||||||
|
6
docs/maintainers/ports/vcpkg-pkgconfig-get-modules.md
Normal file
6
docs/maintainers/ports/vcpkg-pkgconfig-get-modules.md
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
# vcpkg-pkgconfig-get-modules
|
||||||
|
|
||||||
|
**Experimental: will change or be removed at any time**
|
||||||
|
|
||||||
|
`vcpkg-pkgconfig-get-modules` provides `x_vcpkg_pkgconfig_get_modules()`, a function which simplifies calling
|
||||||
|
`pkg-config` in portfiles in order to gather dependencies for exotic buildsystems.
|
@ -0,0 +1,44 @@
|
|||||||
|
# x_vcpkg_pkgconfig_get_modules
|
||||||
|
|
||||||
|
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).
|
||||||
|
|
||||||
|
Experimental
|
||||||
|
Retrieve required module information from pkgconfig modules
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
```cmake
|
||||||
|
x_vcpkg_pkgconfig_get_modules(
|
||||||
|
PREFIX <prefix>
|
||||||
|
MODULES <pkgconfig_modules>...
|
||||||
|
[LIBS]
|
||||||
|
[LIBRARIES]
|
||||||
|
[LIBRARIES_DIRS]
|
||||||
|
[INCLUDE_DIRS]
|
||||||
|
)
|
||||||
|
```
|
||||||
|
## Parameters
|
||||||
|
|
||||||
|
### PREFIX
|
||||||
|
Used variable prefix to use
|
||||||
|
|
||||||
|
### MODULES
|
||||||
|
List of pkgconfig modules to retrieve information for.
|
||||||
|
|
||||||
|
### LIBS
|
||||||
|
Returns `"${PKGCONFIG}" --libs` in <prefix>_LIBS_(DEBUG|RELEASE)
|
||||||
|
|
||||||
|
### LIBRARIES
|
||||||
|
Returns `"${PKGCONFIG}" --libs-only-l` in <prefix>_LIBRARIES_(DEBUG|RELEASE)
|
||||||
|
|
||||||
|
### LIBRARIES_DIRS
|
||||||
|
Returns `"${PKGCONFIG}" --libs-only-L` in <prefix>_LIBRARIES_DIRS_(DEBUG|RELEASE)
|
||||||
|
|
||||||
|
### INCLUDE_DIRS
|
||||||
|
Returns `"${PKGCONFIG}" --cflags-only-I` in <prefix>_INCLUDE_DIRS_(DEBUG|RELEASE)
|
||||||
|
|
||||||
|
## Examples
|
||||||
|
|
||||||
|
* [qt5-base](https://github.com/microsoft/vcpkg/blob/master/ports/qt5-base/portfile.cmake)
|
||||||
|
|
||||||
|
## Source
|
||||||
|
[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)
|
@ -26,6 +26,7 @@ class CMakeDocumentation {
|
|||||||
[String[]]$cmakeScriptsPorts = @(
|
[String[]]$cmakeScriptsPorts = @(
|
||||||
'vcpkg-cmake'
|
'vcpkg-cmake'
|
||||||
'vcpkg-cmake-config'
|
'vcpkg-cmake-config'
|
||||||
|
'vcpkg-pkgconfig-get-modules'
|
||||||
)
|
)
|
||||||
|
|
||||||
[CMakeDocumentation[]]$tableOfContents = @()
|
[CMakeDocumentation[]]$tableOfContents = @()
|
||||||
|
@ -6,19 +6,20 @@ function(qt_build_submodule SOURCE_PATH)
|
|||||||
vcpkg_find_acquire_program(PYTHON2)
|
vcpkg_find_acquire_program(PYTHON2)
|
||||||
get_filename_component(PYTHON2_EXE_PATH ${PYTHON2} DIRECTORY)
|
get_filename_component(PYTHON2_EXE_PATH ${PYTHON2} DIRECTORY)
|
||||||
vcpkg_add_to_path("${PYTHON2_EXE_PATH}")
|
vcpkg_add_to_path("${PYTHON2_EXE_PATH}")
|
||||||
|
|
||||||
vcpkg_configure_qmake(SOURCE_PATH ${SOURCE_PATH} ${ARGV})
|
vcpkg_configure_qmake(SOURCE_PATH ${SOURCE_PATH} ${ARGV})
|
||||||
|
|
||||||
vcpkg_build_qmake(SKIP_MAKEFILES)
|
vcpkg_build_qmake(SKIP_MAKEFILES)
|
||||||
|
|
||||||
#Fix the installation location within the makefiles
|
#Fix the installation location within the makefiles
|
||||||
qt_fix_makefile_install("${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/")
|
qt_fix_makefile_install("${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/")
|
||||||
qt_fix_makefile_install("${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/")
|
qt_fix_makefile_install("${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/")
|
||||||
|
|
||||||
#Install the module files
|
#Install the module files
|
||||||
vcpkg_build_qmake(TARGETS install SKIP_MAKEFILES BUILD_LOGNAME install)
|
vcpkg_build_qmake(TARGETS install SKIP_MAKEFILES BUILD_LOGNAME install)
|
||||||
|
|
||||||
qt_fix_cmake(${CURRENT_PACKAGES_DIR} ${PORT})
|
qt_fix_cmake(${CURRENT_PACKAGES_DIR} ${PORT})
|
||||||
|
vcpkg_fixup_pkgconfig() # Needs further investigation if this is enough!
|
||||||
|
|
||||||
#Replace with VCPKG variables if PR #7733 is merged
|
#Replace with VCPKG variables if PR #7733 is merged
|
||||||
unset(BUILDTYPES)
|
unset(BUILDTYPES)
|
||||||
@ -26,13 +27,13 @@ function(qt_build_submodule SOURCE_PATH)
|
|||||||
set(_buildname "DEBUG")
|
set(_buildname "DEBUG")
|
||||||
list(APPEND BUILDTYPES ${_buildname})
|
list(APPEND BUILDTYPES ${_buildname})
|
||||||
set(_short_name_${_buildname} "dbg")
|
set(_short_name_${_buildname} "dbg")
|
||||||
set(_path_suffix_${_buildname} "/debug")
|
set(_path_suffix_${_buildname} "/debug")
|
||||||
endif()
|
endif()
|
||||||
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
|
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
|
||||||
set(_buildname "RELEASE")
|
set(_buildname "RELEASE")
|
||||||
list(APPEND BUILDTYPES ${_buildname})
|
list(APPEND BUILDTYPES ${_buildname})
|
||||||
set(_short_name_${_buildname} "rel")
|
set(_short_name_${_buildname} "rel")
|
||||||
set(_path_suffix_${_buildname} "")
|
set(_path_suffix_${_buildname} "")
|
||||||
endif()
|
endif()
|
||||||
unset(_buildname)
|
unset(_buildname)
|
||||||
|
|
||||||
@ -42,14 +43,14 @@ function(qt_build_submodule SOURCE_PATH)
|
|||||||
file(GLOB_RECURSE PRL_FILES "${CURRENT_BUILD_PACKAGE_DIR}/lib/*.prl" "${CURRENT_PACKAGES_DIR}/tools/qt5${_path_suffix_${_buildname}}/lib/*.prl"
|
file(GLOB_RECURSE PRL_FILES "${CURRENT_BUILD_PACKAGE_DIR}/lib/*.prl" "${CURRENT_PACKAGES_DIR}/tools/qt5${_path_suffix_${_buildname}}/lib/*.prl"
|
||||||
"${CURRENT_PACKAGES_DIR}/tools/qt5${_path_suffix_${_buildname}}/mkspecs/*.pri")
|
"${CURRENT_PACKAGES_DIR}/tools/qt5${_path_suffix_${_buildname}}/mkspecs/*.pri")
|
||||||
qt_fix_prl("${CURRENT_BUILD_PACKAGE_DIR}" "${PRL_FILES}")
|
qt_fix_prl("${CURRENT_BUILD_PACKAGE_DIR}" "${PRL_FILES}")
|
||||||
|
|
||||||
# This makes it impossible to use the build tools in any meaningful way. qt5 assumes they are all in one folder!
|
# This makes it impossible to use the build tools in any meaningful way. qt5 assumes they are all in one folder!
|
||||||
# So does the Qt VS Plugin which even assumes all of the in a bin folder
|
# So does the Qt VS Plugin which even assumes all of the in a bin folder
|
||||||
#Move tools to the correct directory
|
#Move tools to the correct directory
|
||||||
#if(EXISTS ${CURRENT_BUILD_PACKAGE_DIR}/tools/qt5)
|
#if(EXISTS ${CURRENT_BUILD_PACKAGE_DIR}/tools/qt5)
|
||||||
# file(RENAME ${CURRENT_BUILD_PACKAGE_DIR}/tools/qt5 ${CURRENT_PACKAGES_DIR}/tools/${PORT})
|
# file(RENAME ${CURRENT_BUILD_PACKAGE_DIR}/tools/qt5 ${CURRENT_PACKAGES_DIR}/tools/${PORT})
|
||||||
#endif()
|
#endif()
|
||||||
|
|
||||||
# Move executables in bin to tools
|
# Move executables in bin to tools
|
||||||
# This is ok since those are not build tools.
|
# This is ok since those are not build tools.
|
||||||
file(GLOB PACKAGE_EXE ${CURRENT_BUILD_PACKAGE_DIR}/bin/*.exe)
|
file(GLOB PACKAGE_EXE ${CURRENT_BUILD_PACKAGE_DIR}/bin/*.exe)
|
||||||
@ -64,13 +65,13 @@ function(qt_build_submodule SOURCE_PATH)
|
|||||||
endif()
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#cleanup empty folders
|
#cleanup empty folders
|
||||||
file(GLOB PACKAGE_LIBS "${CURRENT_BUILD_PACKAGE_DIR}/lib/*")
|
file(GLOB PACKAGE_LIBS "${CURRENT_BUILD_PACKAGE_DIR}/lib/*")
|
||||||
if(NOT PACKAGE_LIBS)
|
if(NOT PACKAGE_LIBS)
|
||||||
file(REMOVE_RECURSE "${CURRENT_BUILD_PACKAGE_DIR}/lib")
|
file(REMOVE_RECURSE "${CURRENT_BUILD_PACKAGE_DIR}/lib")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
file(GLOB PACKAGE_BINS "${CURRENT_BUILD_PACKAGE_DIR}/bin/*")
|
file(GLOB PACKAGE_BINS "${CURRENT_BUILD_PACKAGE_DIR}/bin/*")
|
||||||
if(NOT PACKAGE_BINS)
|
if(NOT PACKAGE_BINS)
|
||||||
file(REMOVE_RECURSE "${CURRENT_BUILD_PACKAGE_DIR}/bin")
|
file(REMOVE_RECURSE "${CURRENT_BUILD_PACKAGE_DIR}/bin")
|
||||||
@ -78,12 +79,12 @@ function(qt_build_submodule SOURCE_PATH)
|
|||||||
endforeach()
|
endforeach()
|
||||||
if(EXISTS "${CURRENT_PACKAGES_DIR}/tools/qt5/bin")
|
if(EXISTS "${CURRENT_PACKAGES_DIR}/tools/qt5/bin")
|
||||||
file(COPY "${CURRENT_PACKAGES_DIR}/tools/qt5/bin" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/${PORT}")
|
file(COPY "${CURRENT_PACKAGES_DIR}/tools/qt5/bin" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/${PORT}")
|
||||||
|
|
||||||
set(CURRENT_INSTALLED_DIR_BACKUP "${CURRENT_INSTALLED_DIR}")
|
set(CURRENT_INSTALLED_DIR_BACKUP "${CURRENT_INSTALLED_DIR}")
|
||||||
set(CURRENT_INSTALLED_DIR "./../../.." ) # Making the qt.conf relative and not absolute
|
set(CURRENT_INSTALLED_DIR "./../../.." ) # Making the qt.conf relative and not absolute
|
||||||
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
|
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
|
||||||
set(CURRENT_INSTALLED_DIR "${CURRENT_INSTALLED_DIR_BACKUP}")
|
set(CURRENT_INSTALLED_DIR "${CURRENT_INSTALLED_DIR_BACKUP}")
|
||||||
|
|
||||||
vcpkg_copy_tool_dependencies("${CURRENT_PACKAGES_DIR}/tools/${PORT}/bin")
|
vcpkg_copy_tool_dependencies("${CURRENT_PACKAGES_DIR}/tools/${PORT}/bin")
|
||||||
if(VCPKG_TARGET_IS_WINDOWS AND VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
|
if(VCPKG_TARGET_IS_WINDOWS AND VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
|
||||||
file(GLOB_RECURSE DLL_DEPS_AVAIL "${CURRENT_INSTALLED_DIR}/tools/qt5/bin/*.dll")
|
file(GLOB_RECURSE DLL_DEPS_AVAIL "${CURRENT_INSTALLED_DIR}/tools/qt5/bin/*.dll")
|
||||||
@ -99,14 +100,14 @@ function(qt_build_submodule SOURCE_PATH)
|
|||||||
endforeach()
|
endforeach()
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#This should be removed if somehow possible
|
#This should be removed if somehow possible
|
||||||
if(EXISTS "${CURRENT_PACKAGES_DIR}/tools/qt5/debug/bin")
|
if(EXISTS "${CURRENT_PACKAGES_DIR}/tools/qt5/debug/bin")
|
||||||
set(CURRENT_INSTALLED_DIR_BACKUP "${CURRENT_INSTALLED_DIR}")
|
set(CURRENT_INSTALLED_DIR_BACKUP "${CURRENT_INSTALLED_DIR}")
|
||||||
set(CURRENT_INSTALLED_DIR "./../../../.." ) # Making the qt.conf relative and not absolute
|
set(CURRENT_INSTALLED_DIR "./../../../.." ) # Making the qt.conf relative and not absolute
|
||||||
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
|
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
|
||||||
set(CURRENT_INSTALLED_DIR "${CURRENT_INSTALLED_DIR_BACKUP}")
|
set(CURRENT_INSTALLED_DIR "${CURRENT_INSTALLED_DIR_BACKUP}")
|
||||||
|
|
||||||
vcpkg_copy_tool_dependencies("${CURRENT_PACKAGES_DIR}/tools/${PORT}/debug/bin")
|
vcpkg_copy_tool_dependencies("${CURRENT_PACKAGES_DIR}/tools/${PORT}/debug/bin")
|
||||||
if(VCPKG_TARGET_IS_WINDOWS AND VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
|
if(VCPKG_TARGET_IS_WINDOWS AND VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
|
||||||
file(GLOB_RECURSE DLL_DEPS_AVAIL "${CURRENT_INSTALLED_DIR}/tools/qt5/debug/bin/*.dll")
|
file(GLOB_RECURSE DLL_DEPS_AVAIL "${CURRENT_INSTALLED_DIR}/tools/qt5/debug/bin/*.dll")
|
||||||
@ -122,5 +123,5 @@ function(qt_build_submodule SOURCE_PATH)
|
|||||||
endforeach()
|
endforeach()
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endfunction()
|
endfunction()
|
@ -1,19 +1,11 @@
|
|||||||
vcpkg_buildpath_length_warning(37)
|
vcpkg_buildpath_length_warning(37)
|
||||||
|
|
||||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
|
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
|
||||||
option(QT_OPENSSL_LINK "Link against OpenSSL at compile-time." ON)
|
set(QT_OPENSSL_LINK_DEFAULT ON)
|
||||||
else()
|
else()
|
||||||
option(QT_OPENSSL_LINK "Link against OpenSSL at compile-time." OFF)
|
set(QT_OPENSSL_LINK_DEFAULT OFF)
|
||||||
endif()
|
endif()
|
||||||
|
option(QT_OPENSSL_LINK "Link against OpenSSL at compile-time." ${QT_OPENSSL_LINK_DEFAULT})
|
||||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
|
|
||||||
option(QT_MYSQL_PLUGIN "Create MySQL plugin" OFF)
|
|
||||||
else()
|
|
||||||
if ("mysqlplugin" IN_LIST FEATURES)
|
|
||||||
option(QT_MYSQL_PLUGIN "Create MySQL plugin" ON)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
if (VCPKG_TARGET_IS_LINUX)
|
if (VCPKG_TARGET_IS_LINUX)
|
||||||
message(WARNING "qt5-base currently requires some packages from the system package manager, see https://doc.qt.io/qt-5/linux-requirements.html")
|
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()
|
|||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(WITH_PGSQL OFF)
|
set(WITH_PGSQL_PLUGIN OFF)
|
||||||
if("postgresqlplugin" IN_LIST FEATURES)
|
if("postgresqlplugin" IN_LIST FEATURES)
|
||||||
set(WITH_PGSQL ON)
|
set(WITH_PGSQL_PLUGIN ON)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set(WITH_MYSQL_PLUGIN OFF)
|
||||||
|
if ("mysqlplugin" IN_LIST FEATURES)
|
||||||
|
set(WITH_MYSQL_PLUGIN ON)
|
||||||
|
endif()
|
||||||
|
if(WITH_MYSQL_PLUGIN AND NOT VCPKG_TARGET_IS_WINDOWS)
|
||||||
|
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!")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
include(qt_port_functions)
|
include(qt_port_functions)
|
||||||
@ -121,31 +121,33 @@ list(APPEND CORE_OPTIONS
|
|||||||
-system-zlib
|
-system-zlib
|
||||||
-system-libjpeg
|
-system-libjpeg
|
||||||
-system-libpng
|
-system-libpng
|
||||||
-system-freetype # static builds require to also link its dependent bzip!
|
-system-freetype
|
||||||
-system-pcre
|
-system-pcre
|
||||||
-system-doubleconversion
|
-system-doubleconversion
|
||||||
-system-sqlite
|
-system-sqlite
|
||||||
-system-harfbuzz
|
-system-harfbuzz
|
||||||
-icu
|
-icu
|
||||||
-no-vulkan
|
-no-vulkan
|
||||||
-no-angle) # Qt does not need to build angle. VCPKG will build angle!
|
-no-angle # Qt does not need to build angle. VCPKG will build angle!
|
||||||
|
-no-glib
|
||||||
|
)
|
||||||
|
|
||||||
if(QT_OPENSSL_LINK)
|
if(QT_OPENSSL_LINK)
|
||||||
list(APPEND CORE_OPTIONS -openssl-linked)
|
list(APPEND CORE_OPTIONS -openssl-linked)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(WITH_PGSQL)
|
if(WITH_PGSQL_PLUGIN)
|
||||||
list(APPEND CORE_OPTIONS -sql-psql)
|
list(APPEND CORE_OPTIONS -sql-psql)
|
||||||
else()
|
else()
|
||||||
list(APPEND CORE_OPTIONS -no-sql-psql)
|
list(APPEND CORE_OPTIONS -no-sql-psql)
|
||||||
endif()
|
endif()
|
||||||
|
if(WITH_MYSQL_PLUGIN)
|
||||||
if(VCPKG_TARGET_IS_WINDOWS)
|
list(APPEND CORE_OPTIONS -sql-mysql)
|
||||||
if(QT_MYSQL_PLUGIN)
|
else()
|
||||||
list(APPEND CORE_OPTIONS -sql-mysql)
|
list(APPEND CORE_OPTIONS -no-sql-mysql)
|
||||||
endif()
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
find_library(ZLIB_RELEASE NAMES z zlib PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
|
find_library(ZLIB_RELEASE NAMES z zlib PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
|
||||||
find_library(ZLIB_DEBUG NAMES z zlib zd zlibd PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
|
find_library(ZLIB_DEBUG NAMES z zlib zd zlibd PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
|
||||||
find_library(JPEG_RELEASE NAMES jpeg jpeg-static PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
|
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)
|
|||||||
set(ICU_DEBUG "${ICU_DEBUG} Advapi32.lib" )
|
set(ICU_DEBUG "${ICU_DEBUG} Advapi32.lib" )
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
find_library(FONTCONFIG_RELEASE NAMES fontconfig PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
|
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(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_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} $
|
|||||||
set(FREETYPE_DEBUG_ALL "${FREETYPE_DEBUG} ${BZ2_DEBUG} ${LIBPNG_DEBUG} ${ZLIB_DEBUG} ${BROTLI_DEC_DEBUG} ${BROTLI_COMMON_DEBUG}")
|
set(FREETYPE_DEBUG_ALL "${FREETYPE_DEBUG} ${BZ2_DEBUG} ${LIBPNG_DEBUG} ${ZLIB_DEBUG} ${BROTLI_DEC_DEBUG} ${BROTLI_COMMON_DEBUG}")
|
||||||
|
|
||||||
# If HarfBuzz is built with GLib enabled, it must be statically link
|
# If HarfBuzz is built with GLib enabled, it must be statically link
|
||||||
set(GLIB_LIB_VERSION 2.0)
|
x_vcpkg_pkgconfig_get_modules(PREFIX harfbuzz MODULES harfbuzz LIBRARIES)
|
||||||
find_library(GLIB_RELEASE NAMES glib-${GLIB_LIB_VERSION} PATHS "${CURRENT_INSTALLED_DIR}/lib" NO_DEFAULT_PATH)
|
|
||||||
find_library(GLIB_DEBUG NAMES glib-${GLIB_LIB_VERSION} PATHS "${CURRENT_INSTALLED_DIR}/debug/lib" NO_DEFAULT_PATH)
|
|
||||||
if(GLIB_RELEASE MATCHES "-NOTFOUND" OR GLIB_DEBUG MATCHES "-NOTFOUND")
|
|
||||||
set(GLIB_RELEASE "")
|
|
||||||
set(GLIB_DEBUG "")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(RELEASE_OPTIONS
|
set(RELEASE_OPTIONS
|
||||||
"LIBJPEG_LIBS=${JPEG_RELEASE}"
|
"LIBJPEG_LIBS=${JPEG_RELEASE}"
|
||||||
@ -266,23 +261,23 @@ if(VCPKG_TARGET_IS_WINDOWS)
|
|||||||
endif()
|
endif()
|
||||||
list(APPEND RELEASE_OPTIONS
|
list(APPEND RELEASE_OPTIONS
|
||||||
"SQLITE_LIBS=${SQLITE_RELEASE}"
|
"SQLITE_LIBS=${SQLITE_RELEASE}"
|
||||||
"HARFBUZZ_LIBS=${HARFBUZZ_RELEASE} ${FREETYPE_RELEASE_ALL}"
|
"HARFBUZZ_LIBS=${harfbuzz_LIBRARIES_RELEASE}"
|
||||||
"OPENSSL_LIBS=${SSL_RELEASE} ${EAY_RELEASE} ws2_32.lib secur32.lib advapi32.lib shell32.lib crypt32.lib user32.lib gdi32.lib"
|
"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
|
list(APPEND DEBUG_OPTIONS
|
||||||
"SQLITE_LIBS=${SQLITE_DEBUG}"
|
"SQLITE_LIBS=${SQLITE_DEBUG}"
|
||||||
"HARFBUZZ_LIBS=${HARFBUZZ_DEBUG} ${FREETYPE_DEBUG_ALL}"
|
"HARFBUZZ_LIBS=${harfbuzz_LIBRARIES_DEBUG}"
|
||||||
"OPENSSL_LIBS=${SSL_DEBUG} ${EAY_DEBUG} ws2_32.lib secur32.lib advapi32.lib shell32.lib crypt32.lib user32.lib gdi32.lib"
|
"OPENSSL_LIBS=${SSL_DEBUG} ${EAY_DEBUG} ws2_32.lib secur32.lib advapi32.lib shell32.lib crypt32.lib user32.lib gdi32.lib"
|
||||||
)
|
)
|
||||||
if(WITH_PGSQL)
|
if(WITH_PGSQL_PLUGIN)
|
||||||
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")
|
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")
|
||||||
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")
|
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")
|
||||||
endif()
|
endif()
|
||||||
if (QT_MYSQL_PLUGIN)
|
if (WITH_MYSQL_PLUGIN)
|
||||||
list(APPEND RELEASE_OPTIONS "MYSQL_LIBS=${MYSQL_RELEASE}")
|
list(APPEND RELEASE_OPTIONS "MYSQL_LIBS=${MYSQL_RELEASE}")
|
||||||
list(APPEND DEBUG_OPTIONS "MYSQL_LIBS=${MYSQL_DEBUG}")
|
list(APPEND DEBUG_OPTIONS "MYSQL_LIBS=${MYSQL_DEBUG}")
|
||||||
endif(QT_MYSQL_PLUGIN)
|
endif(WITH_MYSQL_PLUGIN)
|
||||||
|
|
||||||
elseif(VCPKG_TARGET_IS_LINUX)
|
elseif(VCPKG_TARGET_IS_LINUX)
|
||||||
list(APPEND CORE_OPTIONS -fontconfig -xcb-xlib -xcb -linuxfb)
|
list(APPEND CORE_OPTIONS -fontconfig -xcb-xlib -xcb -linuxfb)
|
||||||
@ -291,17 +286,17 @@ elseif(VCPKG_TARGET_IS_LINUX)
|
|||||||
endif()
|
endif()
|
||||||
list(APPEND RELEASE_OPTIONS
|
list(APPEND RELEASE_OPTIONS
|
||||||
"SQLITE_LIBS=${SQLITE_RELEASE} -ldl -lpthread"
|
"SQLITE_LIBS=${SQLITE_RELEASE} -ldl -lpthread"
|
||||||
"HARFBUZZ_LIBS=${HARFBUZZ_RELEASE} ${FREETYPE_RELEASE_ALL} ${GLIB_RELEASE} -lpthread"
|
"HARFBUZZ_LIBS=${harfbuzz_LIBRARIES_RELEASE}"
|
||||||
"OPENSSL_LIBS=${SSL_RELEASE} ${EAY_RELEASE} -ldl -lpthread"
|
"OPENSSL_LIBS=${SSL_RELEASE} ${EAY_RELEASE} -ldl -lpthread"
|
||||||
"FONTCONFIG_LIBS=${FONTCONFIG_RELEASE} ${FREETYPE_RELEASE} ${EXPAT_RELEASE} -luuid"
|
"FONTCONFIG_LIBS=${FONTCONFIG_RELEASE} ${FREETYPE_RELEASE} ${EXPAT_RELEASE} -luuid"
|
||||||
)
|
)
|
||||||
list(APPEND DEBUG_OPTIONS
|
list(APPEND DEBUG_OPTIONS
|
||||||
"SQLITE_LIBS=${SQLITE_DEBUG} -ldl -lpthread"
|
"SQLITE_LIBS=${SQLITE_DEBUG} -ldl -lpthread"
|
||||||
"HARFBUZZ_LIBS=${HARFBUZZ_DEBUG} ${FREETYPE_DEBUG_ALL} ${GLIB_DEBUG} -lpthread"
|
"HARFBUZZ_LIBS=${harfbuzz_LIBRARIES_DEBUG}"
|
||||||
"OPENSSL_LIBS=${SSL_DEBUG} ${EAY_DEBUG} -ldl -lpthread"
|
"OPENSSL_LIBS=${SSL_DEBUG} ${EAY_DEBUG} -ldl -lpthread"
|
||||||
"FONTCONFIG_LIBS=${FONTCONFIG_DEBUG} ${FREETYPE_DEBUG} ${EXPAT_DEBUG} -luuid"
|
"FONTCONFIG_LIBS=${FONTCONFIG_DEBUG} ${FREETYPE_DEBUG} ${EXPAT_DEBUG} -luuid"
|
||||||
)
|
)
|
||||||
if(WITH_PGSQL)
|
if(WITH_PGSQL_PLUGIN)
|
||||||
list(APPEND RELEASE_OPTIONS "PSQL_LIBS=${PSQL_RELEASE} ${PSQL_PORT_RELEASE} ${PSQL_TYPES_RELEASE} ${PSQL_COMMON_RELEASE} ${SSL_RELEASE} ${EAY_RELEASE} -ldl -lpthread")
|
list(APPEND RELEASE_OPTIONS "PSQL_LIBS=${PSQL_RELEASE} ${PSQL_PORT_RELEASE} ${PSQL_TYPES_RELEASE} ${PSQL_COMMON_RELEASE} ${SSL_RELEASE} ${EAY_RELEASE} -ldl -lpthread")
|
||||||
list(APPEND DEBUG_OPTIONS "PSQL_LIBS=${PSQL_DEBUG} ${PSQL_PORT_DEBUG} ${PSQL_TYPES_DEBUG} ${PSQL_COMMON_DEBUG} ${SSL_DEBUG} ${EAY_DEBUG} -ldl -lpthread")
|
list(APPEND DEBUG_OPTIONS "PSQL_LIBS=${PSQL_DEBUG} ${PSQL_PORT_DEBUG} ${PSQL_TYPES_DEBUG} ${PSQL_COMMON_DEBUG} ${SSL_DEBUG} ${EAY_DEBUG} -ldl -lpthread")
|
||||||
endif()
|
endif()
|
||||||
@ -331,18 +326,18 @@ elseif(VCPKG_TARGET_IS_OSX)
|
|||||||
#list(APPEND QT_PLATFORM_CONFIGURE_OPTIONS HOST_PLATFORM ${TARGET_MKSPEC})
|
#list(APPEND QT_PLATFORM_CONFIGURE_OPTIONS HOST_PLATFORM ${TARGET_MKSPEC})
|
||||||
list(APPEND RELEASE_OPTIONS
|
list(APPEND RELEASE_OPTIONS
|
||||||
"SQLITE_LIBS=${SQLITE_RELEASE} -ldl -lpthread"
|
"SQLITE_LIBS=${SQLITE_RELEASE} -ldl -lpthread"
|
||||||
"HARFBUZZ_LIBS=${HARFBUZZ_RELEASE} ${FREETYPE_RELEASE_ALL} -framework ApplicationServices"
|
"HARFBUZZ_LIBS=${harfbuzz_LIBRARIES_RELEASE} -framework ApplicationServices"
|
||||||
"OPENSSL_LIBS=${SSL_RELEASE} ${EAY_RELEASE} -ldl -lpthread"
|
"OPENSSL_LIBS=${SSL_RELEASE} ${EAY_RELEASE} -ldl -lpthread"
|
||||||
"FONTCONFIG_LIBS=${FONTCONFIG_RELEASE} ${FREETYPE_RELEASE} ${EXPAT_RELEASE} -liconv"
|
"FONTCONFIG_LIBS=${FONTCONFIG_RELEASE} ${FREETYPE_RELEASE} ${EXPAT_RELEASE} -liconv"
|
||||||
)
|
)
|
||||||
list(APPEND DEBUG_OPTIONS
|
list(APPEND DEBUG_OPTIONS
|
||||||
"SQLITE_LIBS=${SQLITE_DEBUG} -ldl -lpthread"
|
"SQLITE_LIBS=${SQLITE_DEBUG} -ldl -lpthread"
|
||||||
"HARFBUZZ_LIBS=${HARFBUZZ_DEBUG} ${FREETYPE_DEBUG_ALL} -framework ApplicationServices"
|
"HARFBUZZ_LIBS=${harfbuzz_LIBRARIES_DEBUG} -framework ApplicationServices"
|
||||||
"OPENSSL_LIBS=${SSL_DEBUG} ${EAY_DEBUG} -ldl -lpthread"
|
"OPENSSL_LIBS=${SSL_DEBUG} ${EAY_DEBUG} -ldl -lpthread"
|
||||||
"FONTCONFIG_LIBS=${FONTCONFIG_DEBUG} ${FREETYPE_DEBUG} ${EXPAT_DEBUG} -liconv"
|
"FONTCONFIG_LIBS=${FONTCONFIG_DEBUG} ${FREETYPE_DEBUG} ${EXPAT_DEBUG} -liconv"
|
||||||
)
|
)
|
||||||
|
|
||||||
if(WITH_PGSQL)
|
if(WITH_PGSQL_PLUGIN)
|
||||||
list(APPEND RELEASE_OPTIONS "PSQL_LIBS=${PSQL_RELEASE} ${PSQL_PORT_RELEASE} ${PSQL_TYPES_RELEASE} ${PSQL_COMMON_RELEASE} ${SSL_RELEASE} ${EAY_RELEASE} -ldl -lpthread")
|
list(APPEND RELEASE_OPTIONS "PSQL_LIBS=${PSQL_RELEASE} ${PSQL_PORT_RELEASE} ${PSQL_TYPES_RELEASE} ${PSQL_COMMON_RELEASE} ${SSL_RELEASE} ${EAY_RELEASE} -ldl -lpthread")
|
||||||
list(APPEND DEBUG_OPTIONS "PSQL_LIBS=${PSQL_DEBUG} ${PSQL_PORT_DEBUG} ${PSQL_TYPES_DEBUG} ${PSQL_COMMON_DEBUG} ${SSL_DEBUG} ${EAY_DEBUG} -ldl -lpthread")
|
list(APPEND DEBUG_OPTIONS "PSQL_LIBS=${PSQL_DEBUG} ${PSQL_PORT_DEBUG} ${PSQL_TYPES_DEBUG} ${PSQL_COMMON_DEBUG} ${SSL_DEBUG} ${EAY_DEBUG} -ldl -lpthread")
|
||||||
endif()
|
endif()
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "qt5-base",
|
"name": "qt5-base",
|
||||||
"version-string": "5.15.2",
|
"version-string": "5.15.2",
|
||||||
"port-version": 3,
|
"port-version": 4,
|
||||||
"description": "Qt5 Application Framework Base Module. Includes Core, GUI, Widgets, Networking, SQL, Concurrent and other essential qt components.",
|
"description": "Qt5 Application Framework Base Module. Includes Core, GUI, Widgets, Networking, SQL, Concurrent and other essential qt components.",
|
||||||
"homepage": "https://www.qt.io/",
|
"homepage": "https://www.qt.io/",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
@ -26,6 +26,10 @@
|
|||||||
"openssl",
|
"openssl",
|
||||||
"pcre2",
|
"pcre2",
|
||||||
"sqlite3",
|
"sqlite3",
|
||||||
|
{
|
||||||
|
"name": "vcpkg-pkgconfig-get-modules",
|
||||||
|
"host": true
|
||||||
|
},
|
||||||
"zlib",
|
"zlib",
|
||||||
"zstd"
|
"zstd"
|
||||||
],
|
],
|
||||||
|
6
ports/vcpkg-pkgconfig-get-modules/README.md
Normal file
6
ports/vcpkg-pkgconfig-get-modules/README.md
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
# vcpkg-pkgconfig-get-modules
|
||||||
|
|
||||||
|
**Experimental: will change or be removed at any time**
|
||||||
|
|
||||||
|
`vcpkg-pkgconfig-get-modules` provides `x_vcpkg_pkgconfig_get_modules()`, a function which simplifies calling
|
||||||
|
`pkg-config` in portfiles in order to gather dependencies for exotic buildsystems.
|
23
ports/vcpkg-pkgconfig-get-modules/copyright
Normal file
23
ports/vcpkg-pkgconfig-get-modules/copyright
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
Copyright (c) Microsoft Corporation
|
||||||
|
|
||||||
|
All rights reserved.
|
||||||
|
|
||||||
|
MIT License
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||||
|
this software and associated documentation files (the "Software"), to deal in
|
||||||
|
the Software without restriction, including without limitation the rights to
|
||||||
|
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
|
||||||
|
of the Software, and to permit persons to whom the Software is furnished to do
|
||||||
|
so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED *AS IS*, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
12
ports/vcpkg-pkgconfig-get-modules/portfile.cmake
Normal file
12
ports/vcpkg-pkgconfig-get-modules/portfile.cmake
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
if(NOT TARGET_TRIPLET STREQUAL HOST_TRIPLET)
|
||||||
|
# make FATAL_ERROR in CI when issue #16773 fixed
|
||||||
|
message(WARNING "vcpkg-pkgconfig-get-modules is a host-only port; please mark it as a host port in your dependencies.")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
file(COPY
|
||||||
|
"${CMAKE_CURRENT_LIST_DIR}/x_vcpkg_pkgconfig_get_modules.cmake"
|
||||||
|
"${CMAKE_CURRENT_LIST_DIR}/vcpkg-port-config.cmake"
|
||||||
|
"${CMAKE_CURRENT_LIST_DIR}/copyright"
|
||||||
|
DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
|
||||||
|
|
||||||
|
set(VCPKG_POLICY_EMPTY_PACKAGE enabled)
|
@ -0,0 +1 @@
|
|||||||
|
include("${CMAKE_CURRENT_LIST_DIR}/x_vcpkg_pkgconfig_get_modules.cmake")
|
4
ports/vcpkg-pkgconfig-get-modules/vcpkg.json
Normal file
4
ports/vcpkg-pkgconfig-get-modules/vcpkg.json
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"name": "vcpkg-pkgconfig-get-modules",
|
||||||
|
"version-date": "2021-04-02"
|
||||||
|
}
|
@ -0,0 +1,146 @@
|
|||||||
|
#[===[.md:
|
||||||
|
# x_vcpkg_pkgconfig_get_modules
|
||||||
|
|
||||||
|
Experimental
|
||||||
|
Retrieve required module information from pkgconfig modules
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
```cmake
|
||||||
|
x_vcpkg_pkgconfig_get_modules(
|
||||||
|
PREFIX <prefix>
|
||||||
|
MODULES <pkgconfig_modules>...
|
||||||
|
[LIBS]
|
||||||
|
[LIBRARIES]
|
||||||
|
[LIBRARIES_DIRS]
|
||||||
|
[INCLUDE_DIRS]
|
||||||
|
)
|
||||||
|
```
|
||||||
|
## Parameters
|
||||||
|
|
||||||
|
### PREFIX
|
||||||
|
Used variable prefix to use
|
||||||
|
|
||||||
|
### MODULES
|
||||||
|
List of pkgconfig modules to retrieve information for.
|
||||||
|
|
||||||
|
### LIBS
|
||||||
|
Returns `"${PKGCONFIG}" --libs` in <prefix>_LIBS_(DEBUG|RELEASE)
|
||||||
|
|
||||||
|
### LIBRARIES
|
||||||
|
Returns `"${PKGCONFIG}" --libs-only-l` in <prefix>_LIBRARIES_(DEBUG|RELEASE)
|
||||||
|
|
||||||
|
### LIBRARIES_DIRS
|
||||||
|
Returns `"${PKGCONFIG}" --libs-only-L` in <prefix>_LIBRARIES_DIRS_(DEBUG|RELEASE)
|
||||||
|
|
||||||
|
### INCLUDE_DIRS
|
||||||
|
Returns `"${PKGCONFIG}" --cflags-only-I` in <prefix>_INCLUDE_DIRS_(DEBUG|RELEASE)
|
||||||
|
|
||||||
|
## Examples
|
||||||
|
|
||||||
|
* [qt5-base](https://github.com/microsoft/vcpkg/blob/master/ports/qt5-base/portfile.cmake)
|
||||||
|
#]===]
|
||||||
|
if(Z_VCPKG_PKGCONFIG_GET_MODULES_GUARD)
|
||||||
|
return()
|
||||||
|
endif()
|
||||||
|
set(Z_VCPKG_PKGCONFIG_GET_MODULES_GUARD ON CACHE INTERNAL "guard variable")
|
||||||
|
|
||||||
|
function(x_vcpkg_pkgconfig_get_modules)
|
||||||
|
cmake_parse_arguments(PARSE_ARGV 0 "arg" "LIBS;LIBRARIES;LIBRARIES_DIR;INCLUDE_DIRS" "PREFIX" "MODULES")
|
||||||
|
if(NOT DEFINED arg_PREFIX OR arg_PREFIX STREQUAL "")
|
||||||
|
message(FATAL_ERROR "x_vcpkg_pkgconfig_get_modules requires parameter PREFIX!")
|
||||||
|
endif()
|
||||||
|
if(NOT DEFINED arg_MODULES OR arg_MODULES STREQUAL "")
|
||||||
|
message(FATAL_ERROR "x_vcpkg_pkgconfig_get_modules requires parameter MODULES!")
|
||||||
|
endif()
|
||||||
|
if(DEFINED arg_UNPARSED_ARGUMENTS)
|
||||||
|
message(FATAL_ERROR "extra arguments passed to x_vcpkg_pkgconfig_get_modules: ${arg_UNPARSED_ARGUMENTS}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
vcpkg_find_acquire_program(PKGCONFIG)
|
||||||
|
set(backup_PKG_CONFIG_PATH "$ENV{PKG_CONFIG_PATH}")
|
||||||
|
|
||||||
|
set(var_suffixes)
|
||||||
|
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
|
||||||
|
z_vcpkg_set_pkgconfig_path("${CURRENT_INSTALLED_DIR}/lib/pkgconfig" "${backup_PKG_CONFIG_PATH}")
|
||||||
|
if(arg_LIBS)
|
||||||
|
execute_process(
|
||||||
|
COMMAND "${PKGCONFIG}" --libs ${arg_MODULES}
|
||||||
|
OUTPUT_VARIABLE ${arg_PREFIX}_LIBS_RELEASE
|
||||||
|
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||||
|
)
|
||||||
|
list(APPEND var_suffixes LIBS_RELEASE)
|
||||||
|
endif()
|
||||||
|
if(arg_LIBRARIES)
|
||||||
|
execute_process(
|
||||||
|
COMMAND "${PKGCONFIG}" --libs-only-l ${arg_MODULES}
|
||||||
|
OUTPUT_VARIABLE ${arg_PREFIX}_LIBRARIES_RELEASE
|
||||||
|
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||||
|
)
|
||||||
|
list(APPEND var_suffixes LIBRARIES_RELEASE)
|
||||||
|
endif()
|
||||||
|
if(arg_LIBRARIES_DIRS)
|
||||||
|
execute_process(
|
||||||
|
COMMAND "${PKGCONFIG}" --libs-only-L ${arg_MODULES}
|
||||||
|
OUTPUT_VARIABLE ${arg_PREFIX}_LIBRARIES_DIRS_RELEASE
|
||||||
|
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||||
|
)
|
||||||
|
list(APPEND var_suffixes LIBRARIES_DIRS_RELEASE)
|
||||||
|
endif()
|
||||||
|
if(arg_INCLUDE_DIRS)
|
||||||
|
execute_process(
|
||||||
|
COMMAND "${PKGCONFIG}" --cflags-only-I ${arg_MODULES}
|
||||||
|
OUTPUT_VARIABLE ${arg_PREFIX}_INCLUDE_DIRS_RELEASE
|
||||||
|
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||||
|
)
|
||||||
|
list(APPEND var_suffixes INCLUDE_DIRS_RELEASE)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
|
||||||
|
z_vcpkg_set_pkgconfig_path("${CURRENT_INSTALLED_DIR}/debug/lib/pkgconfig" "${backup_PKG_CONFIG_PATH}")
|
||||||
|
if(arg_LIBS)
|
||||||
|
execute_process(
|
||||||
|
COMMAND "${PKGCONFIG}" --libs ${arg_MODULES}
|
||||||
|
OUTPUT_VARIABLE ${arg_PREFIX}_LIBS_DEBUG
|
||||||
|
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||||
|
)
|
||||||
|
list(APPEND var_suffixes LIBS_DEBUG)
|
||||||
|
endif()
|
||||||
|
if(arg_LIBRARIES)
|
||||||
|
execute_process(
|
||||||
|
COMMAND "${PKGCONFIG}" --libs-only-l ${arg_MODULES}
|
||||||
|
OUTPUT_VARIABLE ${arg_PREFIX}_LIBRARIES_DEBUG
|
||||||
|
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||||
|
)
|
||||||
|
list(APPEND var_suffixes LIBRARIES_DEBUG)
|
||||||
|
endif()
|
||||||
|
if(arg_LIBRARIES_DIRS)
|
||||||
|
execute_process(
|
||||||
|
COMMAND "${PKGCONFIG}" --libs-only-L ${arg_MODULES}
|
||||||
|
OUTPUT_VARIABLE ${arg_PREFIX}_LIBRARIES_DIRS_DEBUG
|
||||||
|
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||||
|
)
|
||||||
|
list(APPEND var_suffixes LIBRARIES_DIRS_DEBUG)
|
||||||
|
endif()
|
||||||
|
if(arg_INCLUDE_DIRS)
|
||||||
|
execute_process(
|
||||||
|
COMMAND "${PKGCONFIG}" --cflags-only-I ${arg_MODULES}
|
||||||
|
OUTPUT_VARIABLE ${arg_PREFIX}_INCLUDE_DIRS_DEBUG
|
||||||
|
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||||
|
)
|
||||||
|
list(APPEND var_suffixes INCLUDE_DIRS_DEBUG)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
set(ENV{PKG_CONFIG_PATH} "${backup_PKG_CONFIG_PATH}")
|
||||||
|
|
||||||
|
foreach(_var IN LISTS var_suffixes)
|
||||||
|
set("${arg_PREFIX}_${_var}" "${${arg_PREFIX}_${_var}}" PARENT_SCOPE)
|
||||||
|
endforeach()
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
function(z_vcpkg_set_pkgconfig_path _path _backup)
|
||||||
|
if(NOT _backup STREQUAL "")
|
||||||
|
set(ENV{PKG_CONFIG_PATH} "${_path}${VCPKG_HOST_PATH_SEPARATOR}${_backup}")
|
||||||
|
else()
|
||||||
|
set(ENV{PKG_CONFIG_PATH} "${_path}")
|
||||||
|
endif()
|
||||||
|
endfunction()
|
@ -1213,7 +1213,6 @@ paho-mqtt:arm-uwp=fail
|
|||||||
paho-mqtt:x64-uwp=fail
|
paho-mqtt:x64-uwp=fail
|
||||||
pangomm:x64-osx=fail
|
pangomm:x64-osx=fail
|
||||||
pangomm:arm64-windows=fail
|
pangomm:arm64-windows=fail
|
||||||
paraview:x64-linux=fail
|
|
||||||
parmetis:x64-linux=fail
|
parmetis:x64-linux=fail
|
||||||
parmetis:x64-osx=fail
|
parmetis:x64-osx=fail
|
||||||
pdal:x64-linux=fail
|
pdal:x64-linux=fail
|
||||||
|
@ -4962,7 +4962,7 @@
|
|||||||
},
|
},
|
||||||
"qt5-base": {
|
"qt5-base": {
|
||||||
"baseline": "5.15.2",
|
"baseline": "5.15.2",
|
||||||
"port-version": 3
|
"port-version": 4
|
||||||
},
|
},
|
||||||
"qt5-canvas3d": {
|
"qt5-canvas3d": {
|
||||||
"baseline": "0",
|
"baseline": "0",
|
||||||
@ -6264,6 +6264,10 @@
|
|||||||
"baseline": "3",
|
"baseline": "3",
|
||||||
"port-version": 0
|
"port-version": 0
|
||||||
},
|
},
|
||||||
|
"vcpkg-pkgconfig-get-modules": {
|
||||||
|
"baseline": "2021-04-02",
|
||||||
|
"port-version": 0
|
||||||
|
},
|
||||||
"vectorclass": {
|
"vectorclass": {
|
||||||
"baseline": "2.00.01",
|
"baseline": "2.00.01",
|
||||||
"port-version": 0
|
"port-version": 0
|
||||||
|
@ -1,5 +1,10 @@
|
|||||||
{
|
{
|
||||||
"versions": [
|
"versions": [
|
||||||
|
{
|
||||||
|
"git-tree": "6bd06b14752f1123c7d43df59ae19c584c24ea54",
|
||||||
|
"version-string": "5.15.2",
|
||||||
|
"port-version": 4
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"git-tree": "da84dcfb306668b2cdb510efb6a130882da2055a",
|
"git-tree": "da84dcfb306668b2cdb510efb6a130882da2055a",
|
||||||
"version-string": "5.15.2",
|
"version-string": "5.15.2",
|
||||||
|
9
versions/v-/vcpkg-pkgconfig-get-modules.json
Normal file
9
versions/v-/vcpkg-pkgconfig-get-modules.json
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
"versions": [
|
||||||
|
{
|
||||||
|
"git-tree": "827541895526ebcd68711de9d05e98acd09bd323",
|
||||||
|
"version-date": "2021-04-02",
|
||||||
|
"port-version": 0
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user