diff --git a/games/warzone2100/files/patch-vulkan-headers-1.2.202 b/games/warzone2100/files/patch-vulkan-headers-1.2.202 new file mode 100644 index 000000000000..94c67b83349f --- /dev/null +++ b/games/warzone2100/files/patch-vulkan-headers-1.2.202 @@ -0,0 +1,30 @@ +In file included from warzone2100-4.0.1/lib/ivis_opengl/gfx_api_vk.cpp:42: +lib/ivis_opengl/gfx_api_vk.h:123:9: error: redefinition of 'hash' + struct hash + ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +/usr/local/include/vulkan/vulkan_structs.hpp:20333:13: note: previous definition is here +struct std::hash + ^ + +--- lib/ivis_opengl/gfx_api_vk.h.orig 2021-04-18 18:28:41 UTC ++++ lib/ivis_opengl/gfx_api_vk.h +@@ -118,19 +118,6 @@ inline void hash_combine(std::size_t& seed, const T& v + #endif + hash_combine(seed, rest...); + } +-namespace std { +- template <> +- struct hash +- { +- std::size_t operator()(const vk::DescriptorBufferInfo& k) const +- { +- std::size_t h = 0; +- hash_combine(h, static_cast(k.buffer), k.offset, k.range); +- return h; +- } +- }; +-} +- + struct BlockBufferAllocator + { + BlockBufferAllocator(VmaAllocator allocator, uint32_t minimumBlockSize, const vk::BufferUsageFlags& usageFlags, const VmaAllocationCreateInfo& allocInfo, bool autoMap = false); diff --git a/graphics/vulkan-headers/Makefile b/graphics/vulkan-headers/Makefile index c6ae99fc9317..5d89bac9c1ec 100644 --- a/graphics/vulkan-headers/Makefile +++ b/graphics/vulkan-headers/Makefile @@ -1,18 +1,18 @@ PORTNAME= vulkan-headers DISTVERSIONPREFIX= v -DISTVERSION= 1.2.201 +DISTVERSION= 1.2.202 CATEGORIES= graphics MAINTAINER= jbeich@FreeBSD.org COMMENT= Headers for the Vulkan graphics API LICENSE= APACHE20 USES= cmake STRIP= # nothing to strip USE_GITHUB= yes GH_ACCOUNT= KhronosGroup GH_PROJECT= Vulkan-Headers .include diff --git a/graphics/vulkan-headers/distinfo b/graphics/vulkan-headers/distinfo index ff042db4220b..db7b80b2344d 100644 --- a/graphics/vulkan-headers/distinfo +++ b/graphics/vulkan-headers/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1638326636 -SHA256 (KhronosGroup-Vulkan-Headers-v1.2.201_GH0.tar.gz) = 6b7f9c809acff4f0877e2e7722e02a08f2e17e06c6e2e8c84081631d15490009 -SIZE (KhronosGroup-Vulkan-Headers-v1.2.201_GH0.tar.gz) = 1318121 +TIMESTAMP = 1638869794 +SHA256 (KhronosGroup-Vulkan-Headers-v1.2.202_GH0.tar.gz) = df8748ba3073be032f78c97994798c3c2b52b1812e506cc58855faf10f031226 +SIZE (KhronosGroup-Vulkan-Headers-v1.2.202_GH0.tar.gz) = 1361825 diff --git a/graphics/vulkan-headers/files/patch-include_vulkan_vulkan.hpp b/graphics/vulkan-headers/files/patch-include_vulkan_vulkan.hpp new file mode 100644 index 000000000000..edb4a98c9d2e --- /dev/null +++ b/graphics/vulkan-headers/files/patch-include_vulkan_vulkan.hpp @@ -0,0 +1,30 @@ +https://github.com/KhronosGroup/Vulkan-Hpp/issues/1161 + +--- include/vulkan/vulkan.hpp.orig 2021-12-07 09:36:34 UTC ++++ include/vulkan/vulkan.hpp +@@ -234,9 +234,23 @@ static_assert( VK_HEADER_VERSION == 202, "Wrong VK_HEA + # define VULKAN_HPP_NAMESPACE vk + #endif + ++template ::type> ++struct safe_underlying_type ++{ ++ using type = T; ++}; ++ ++template ++struct safe_underlying_type ++{ ++ using type = typename std::underlying_type::type; ++}; ++ + #if !defined( VULKAN_HPP_HASH_COMBINE ) +-# define VULKAN_HPP_HASH_COMBINE( valueType, seed, value ) \ +- seed ^= std::hash::type>{}( value ) + 0x9e3779b9 + ( seed << 6 ) + ( seed >> 2 ) ++# define VULKAN_HPP_HASH_COMBINE( valueType, seed, value ) \ ++ seed ^= std::hash::type>::type>{}( \ ++ static_cast::type>( value ) ) + \ ++ 0x9e3779b9 + ( seed << 6 ) + ( seed >> 2 ) + #endif + + #define VULKAN_HPP_STRINGIFY2( text ) #text diff --git a/graphics/vulkan-loader/Makefile b/graphics/vulkan-loader/Makefile index 5c256e8edb0a..eb4c681cc81a 100644 --- a/graphics/vulkan-loader/Makefile +++ b/graphics/vulkan-loader/Makefile @@ -1,48 +1,49 @@ PORTNAME= vulkan-loader DISTVERSIONPREFIX= v DISTVERSION= 1.2.201 +PORTREVISION= 1 CATEGORIES= graphics devel MAINTAINER= jbeich@FreeBSD.org COMMENT= Driver loader for the Vulkan graphics API LICENSE= APACHE20 BUILD_DEPENDS= vulkan-headers>0:graphics/vulkan-headers USES= alias cmake compiler:c++11-lib pkgconfig python:3.4+,build USE_GITHUB= yes USE_LDCONFIG= yes GH_ACCOUNT= KhronosGroup GH_PROJECT= Vulkan-Loader CMAKE_ON= CMAKE_SKIP_RPATH CMAKE_OFF= BUILD_TESTS OPTIONS_DEFINE= WAYLAND XCB XLIB OPTIONS_DEFAULT=WAYLAND XCB XLIB WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland WAYLAND_CMAKE_BOOL= BUILD_WSI_WAYLAND_SUPPORT XCB_DESC= ${X11_DESC} via libxcb XCB_USES= xorg XCB_USE= XORG=xcb XCB_CMAKE_BOOL= BUILD_WSI_XCB_SUPPORT XLIB_DESC= ${X11_DESC} via libX11 XLIB_USES= xorg XLIB_USE= XORG=x11,xrandr XLIB_CMAKE_BOOL= BUILD_WSI_XLIB_SUPPORT post-patch: # Extract (snapshot) version from the port @${REINPLACE_CMD} -e '/find_.*Git/d' \ -e '/BRANCH/s/--unknown--/main/' \ -e '/TAG/s/--unknown--/${DISTVERSIONFULL}/' \ ${WRKSRC}/CMakeLists.txt # https://bugs.llvm.org/show_bug.cgi?id=47348 @if [ "${CHOSEN_COMPILER_TYPE}-${ARCH}-${_OSRELEASE:C/.*-//}" = "clang-i386-CURRENT" ]; then \ ${ECHO} "disabled" >${WRKSRC}/loader/asm_test_x86.S; \ fi .include