[vsgqt] New port (#47899)

This commit is contained in:
Kai Pastor 2025-10-24 09:55:40 +02:00 committed by GitHub
parent 05d617d7b8
commit 3b9d086009
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
9 changed files with 138 additions and 0 deletions

View File

@ -0,0 +1,30 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO vsg-dev/vsgQt
REF v${VERSION}
SHA512 0c753d573eeec77bdddab0f3499b7fbabc4c0840246501dd83ef1e3a96effacf9cd9a84d5c1c35b49462520a2840ddd02eeefa92c55b23dc44ce9fc285cbee3b
HEAD_REF master
)
file(WRITE "${SOURCE_PATH}/examples/CMakeLists.txt" "# skipped by vcpkg\n")
vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
OPTIONS
-DQT_PACKAGE_NAME=Qt6
)
vcpkg_cmake_install()
vcpkg_copy_pdbs()
vcpkg_cmake_config_fixup(CONFIG_PATH "lib/cmake/vsgQt")
vcpkg_copy_pdbs()
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/vsgqt/vsgQtConfig.cmake"
"#generated by cmake, do not change" [[
include(CMakeFindDependencyMacro)
find_dependency(vsg)
find_dependency(Qt6 COMPONENTS Widgets)
]])
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE.md")

25
ports/vsgqt/vcpkg.json Normal file
View File

@ -0,0 +1,25 @@
{
"name": "vsgqt",
"version": "0.4.0",
"description": "Qt integration with VulkanSceneGraph",
"homepage": "https://github.com/vsg-dev/vsgQt/",
"license": "MIT",
"dependencies": [
{
"name": "qtbase",
"default-features": false,
"features": [
"widgets"
]
},
{
"name": "vcpkg-cmake",
"default-features": false
},
{
"name": "vcpkg-cmake-config",
"default-features": false
},
"vsg"
]
}

View File

@ -809,6 +809,10 @@ v8:x64-windows-static-md=fail
v8:x64-windows-static=fail
v8:x64-windows=fail
v8:x86-windows=fail
# https://github.com/vsg-dev/vsgQt/pull/53
vsgqt:arm-neon-android=fail
vsgqt:arm64-android=fail
vsgqt:x64-android=fail
wasmedge:arm-neon-android=fail
# Collides with libpcap -> similar headers
winpcap:x64-windows-release=skip

View File

@ -1940,6 +1940,7 @@ tgui[sdl2] = options # At least one of the backend features must be selected: sd
vlfeat[openmp](osx) = feature-fails # No openmp on osx
vlpp[tools](linux) = feature-fails # See https://github.com/microsoft/vcpkg/issues/32143 (error: inconsistent begin/end types in range-based ‘for’ statement)
vlpp[tools](osx) = feature-fails # error: use of undeclared identifier 'PATH_MAX'
vsgqt(android) = fail # https://github.com/vsg-dev/vsgQt/pull/53
vtk[all](!windows & !android & !osx) = feature-fails # Wait for fix: https://github.com/microsoft/vcpkg/pull/29260
vtk[all,python]:x64-windows-static-md = feature-fails # vtk[*] dbg: defaultlib 'MSVCRT' conflicts with use of other libs due to python
vtk[core,python,paraview]:x64-linux = options # paraview's transitive gfortran linkage breaks python

View File

@ -0,0 +1,22 @@
set(VCPKG_POLICY_EMPTY_PACKAGE enabled)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO vsg-dev/vsgQt
REF v0.4.0
SHA512 0c753d573eeec77bdddab0f3499b7fbabc4c0840246501dd83ef1e3a96effacf9cd9a84d5c1c35b49462520a2840ddd02eeefa92c55b23dc44ce9fc285cbee3b
HEAD_REF master
)
vcpkg_check_features(OUT_FEATURE_OPTIONS options
FEATURES
vsgxchange USE_VSGXCHANGE
)
vcpkg_cmake_configure(
SOURCE_PATH "${CURRENT_PORT_DIR}/project"
OPTIONS
"-DSOURCE_PATH=${SOURCE_PATH}"
${options}
)
vcpkg_cmake_build()

View File

@ -0,0 +1,15 @@
cmake_minimum_required(VERSION 3.16)
project(vsgqt-test)
set(CMAKE_CXX_STANDARD 17)
find_package(vsgQt CONFIG REQUIRED)
add_executable(vsgqtviewer "${SOURCE_PATH}/examples/vsgqtviewer/main.cpp")
target_link_libraries(vsgqtviewer PRIVATE vsgQt::vsgQt)
if (USE_VSGXCHANGE)
find_package(vsgXchange CONFIG REQUIRED)
target_compile_definitions(vsgqtviewer PRIVATE vsgXchange_FOUND)
target_link_libraries(vsgqtviewer PRIVATE vsgXchange::vsgXchange)
endif()

View File

@ -0,0 +1,28 @@
{
"name": "vcpkg-ci-vsgqt",
"version-string": "ci",
"description": "Port to validate vsgqt in CI",
"homepage": "https://github.com/microsoft/vcpkg",
"license": "MIT",
"dependencies": [
{
"name": "vcpkg-cmake",
"host": true
},
{
"name": "vsgqt",
"default-features": false
}
],
"default-features": [
"vsgxchange"
],
"features": {
"vsgxchange": {
"description": "Build with vsgxchange",
"dependencies": [
"vsgxchange"
]
}
}
}

View File

@ -10248,6 +10248,10 @@
"baseline": "0.7.0",
"port-version": 0
},
"vsgqt": {
"baseline": "0.4.0",
"port-version": 0
},
"vsgxchange": {
"baseline": "1.1.7",
"port-version": 0

9
versions/v-/vsgqt.json Normal file
View File

@ -0,0 +1,9 @@
{
"versions": [
{
"git-tree": "ab7cd857ba48cbd7e585de749fe82bd51cea5479",
"version": "0.4.0",
"port-version": 0
}
]
}