Tuesday, November 30, 2021

Re: update vulkan ports to sdk-1.2.198.0

Thomas Frohwein <tfrohwein@fastmail.com> writes:

> Hi,
>
> The below diff updates the collection of vulkan ports to sdk-1.2.198.0,
> released in November. Finding concrete release notes is quite opaque;
> [1] summarizes the new extensions.
>
> Portswise biggest change is that spirv-headers now adopts the same
> sdk-* versioning as vulkan-* (but spirv-tools is sticking with its own
> numbering scheme). In order to use the numbering for spirv-headers now,
> EPOCH needs to be set unfortunately. Some symbols of libvulkan have
> been removed, therefore bumping major.
>
> I tested with vkcube, vulkaninfo, and games/vkquake without issues. I
> noticed however that running FNA games (Rogue Legacy, Cryptark) with
> '/gldevice:Vulkan' now leads to a crash (the default opengl device
> still works fine). This crash also exists qith vulkan 1.2.189.1. I need
> to investigate this further, but at least this shouldn't hold up the
> vulkan update.
>
> Also friendly reminder that a review for importing robin-hood-hashing
> [2] would help with the building and use of vulkan-validation-layers.
>
> ok?
>
> [1] https://www.lunarg.com/lunarg-releases-new-1-2-198-0-sdks/

they all builds fine, tests passes when present, port-lib-depends-check
and plist all fine.

portcheck for spirv-headers complains about python modules without
compiled version, but that's probably known.

vkcube runs fine on amdgpu and vulkaninfo prints lots of stuff so it's
probably happy too :)

Unfortunately I can't test with godot like last time because it needs
SPIRV/GlslangToSpv.h from glslang which went away with this update
(upstream is "still" at vulkan sdk 1.2.190.)

I'm attaching your diff without the vulkan-validation-layers-robin-hood
bits that were picked up by mistake :)


Index: glslang/Makefile
===================================================================
RCS file: /cvs/ports/graphics/glslang/Makefile,v
retrieving revision 1.10
diff -u -p -r1.10 Makefile
--- glslang/Makefile 2 Nov 2021 00:01:15 -0000 1.10
+++ glslang/Makefile 30 Nov 2021 03:03:21 -0000
@@ -4,10 +4,9 @@ PORTROACH = limit:^[0-9]

COMMENT = reference front-end for GLSL and ESSL

-GH_TAGNAME = 11.6.0
+GH_TAGNAME = 11.7.0
GH_ACCOUNT = KhronosGroup
GH_PROJECT = glslang
-REVISION = 0

CATEGORIES = devel graphics

Index: glslang/distinfo
===================================================================
RCS file: /cvs/ports/graphics/glslang/distinfo,v
retrieving revision 1.4
diff -u -p -r1.4 distinfo
--- glslang/distinfo 16 Oct 2021 14:50:40 -0000 1.4
+++ glslang/distinfo 30 Nov 2021 03:03:21 -0000
@@ -1,2 +1,2 @@
-SHA256 (glslang-11.6.0.tar.gz) = mezToMLCIZKT12cjhG92Kp8+fdDcKk80bQ/DoFoM4AA=
-SIZE (glslang-11.6.0.tar.gz) = 3419655
+SHA256 (glslang-11.7.0.tar.gz) = tsg4ZMNgZnjRFnURT6XzWMUZ/h2tmngYArzIf7j6MtU=
+SIZE (glslang-11.7.0.tar.gz) = 3426327
Index: spirv-headers/Makefile
===================================================================
RCS file: /cvs/ports/graphics/spirv-headers/Makefile,v
retrieving revision 1.6
diff -u -p -r1.6 Makefile
--- spirv-headers/Makefile 16 Oct 2021 14:50:40 -0000 1.6
+++ spirv-headers/Makefile 30 Nov 2021 03:03:21 -0000
@@ -2,11 +2,12 @@

COMMENT = SPIRV-Headers

-DISTNAME = spirv-headers-1.5.4pl3
-# commit from 2021-10-07
-GH_COMMIT = 5ea2d62e8c0ddd9e2a7d0ca5e3f2335e09e5f408
+V = 1.2.198.0
+DISTNAME = spirv-headers-${V}
GH_ACCOUNT = KhronosGroup
GH_PROJECT = SPIRV-Headers
+GH_TAGNAME = sdk-${V}
+EPOCH = 0

CATEGORIES = devel graphics

Index: spirv-headers/distinfo
===================================================================
RCS file: /cvs/ports/graphics/spirv-headers/distinfo,v
retrieving revision 1.5
diff -u -p -r1.5 distinfo
--- spirv-headers/distinfo 16 Oct 2021 14:50:40 -0000 1.5
+++ spirv-headers/distinfo 30 Nov 2021 03:03:21 -0000
@@ -1,2 +1,2 @@
-SHA256 (spirv-headers-1.5.4pl3-5ea2d62e.tar.gz) = WNYcWEKk9Ad42NufJoohafZe3m1DVoOrIrpf3xQLAJs=
-SIZE (spirv-headers-1.5.4pl3-5ea2d62e.tar.gz) = 415152
+SHA256 (spirv-headers-1.2.198.0.tar.gz) = MwGiOsoENDNqZD5DPcrKzdYAAKs9013AB4opfAYSShI=
+SIZE (spirv-headers-1.2.198.0.tar.gz) = 416113
Index: spirv-tools/Makefile
===================================================================
RCS file: /cvs/ports/graphics/spirv-tools/Makefile,v
retrieving revision 1.9
diff -u -p -r1.9 Makefile
--- spirv-tools/Makefile 16 Oct 2021 14:50:40 -0000 1.9
+++ spirv-tools/Makefile 30 Nov 2021 03:03:21 -0000
@@ -2,7 +2,7 @@

COMMENT = API and commands for processing SPIR-V

-V = 2021.3
+V = 2021.4
DISTNAME = spirv-tools-${V}
GH_ACCOUNT = KhronosGroup
GH_PROJECT = SPIRV-Tools
Index: spirv-tools/distinfo
===================================================================
RCS file: /cvs/ports/graphics/spirv-tools/distinfo,v
retrieving revision 1.6
diff -u -p -r1.6 distinfo
--- spirv-tools/distinfo 16 Oct 2021 14:50:40 -0000 1.6
+++ spirv-tools/distinfo 30 Nov 2021 03:03:21 -0000
@@ -1,2 +1,2 @@
-SHA256 (spirv-tools-2021.3.tar.gz) = trQZQSHugITGKyD41XTDL3ZuTpI33+YLBlizFtGcaxM=
-SIZE (spirv-tools-2021.3.tar.gz) = 2847869
+SHA256 (spirv-tools-2021.4.tar.gz) = 1o3iYHCN2nhdEJ/xzu7N4tKrcRQvpb9ZBhu59H3Tuyw=
+SIZE (spirv-tools-2021.4.tar.gz) = 2887505
Index: vulkan-headers/Makefile
===================================================================
RCS file: /cvs/ports/graphics/vulkan-headers/Makefile,v
retrieving revision 1.7
diff -u -p -r1.7 Makefile
--- vulkan-headers/Makefile 16 Oct 2021 14:50:40 -0000 1.7
+++ vulkan-headers/Makefile 30 Nov 2021 03:03:21 -0000
@@ -2,7 +2,7 @@

COMMENT = Vulkan header files

-V = 1.2.189.1
+V = 1.2.198.0
PKGNAME = vulkan-headers-${V}
GH_TAGNAME = sdk-${V}
GH_ACCOUNT = KhronosGroup
Index: vulkan-headers/distinfo
===================================================================
RCS file: /cvs/ports/graphics/vulkan-headers/distinfo,v
retrieving revision 1.5
diff -u -p -r1.5 distinfo
--- vulkan-headers/distinfo 16 Oct 2021 14:50:40 -0000 1.5
+++ vulkan-headers/distinfo 30 Nov 2021 03:03:21 -0000
@@ -1,2 +1,2 @@
-SHA256 (Vulkan-Headers-sdk-1.2.189.1.tar.gz) = zi61mV3d2P8s7ol6uRwwo11gltWZb8kc7EK/s3ES0/g=
-SIZE (Vulkan-Headers-sdk-1.2.189.1.tar.gz) = 1191244
+SHA256 (Vulkan-Headers-sdk-1.2.198.0.tar.gz) = NHgsYcrZs8zy+gox7Dl9T86ZSQUAtPN3HLGkhxP+zoA=
+SIZE (Vulkan-Headers-sdk-1.2.198.0.tar.gz) = 1288107
Index: vulkan-headers/pkg/PLIST
===================================================================
RCS file: /cvs/ports/graphics/vulkan-headers/pkg/PLIST,v
retrieving revision 1.5
diff -u -p -r1.5 PLIST
--- vulkan-headers/pkg/PLIST 16 Oct 2021 14:50:40 -0000 1.5
+++ vulkan-headers/pkg/PLIST 30 Nov 2021 03:03:21 -0000
@@ -5,6 +5,7 @@ include/vk_video/vulkan_video_codec_h264
include/vk_video/vulkan_video_codec_h264std_encode.h
include/vk_video/vulkan_video_codec_h265std.h
include/vk_video/vulkan_video_codec_h265std_decode.h
+include/vk_video/vulkan_video_codec_h265std_encode.h
include/vk_video/vulkan_video_codecs_common.h
include/vulkan/
include/vulkan/vk_icd.h
Index: vulkan-loader/Makefile
===================================================================
RCS file: /cvs/ports/graphics/vulkan-loader/Makefile,v
retrieving revision 1.13
diff -u -p -r1.13 Makefile
--- vulkan-loader/Makefile 16 Oct 2021 14:50:40 -0000 1.13
+++ vulkan-loader/Makefile 30 Nov 2021 03:03:21 -0000
@@ -2,13 +2,13 @@

COMMENT = Vulkan ICD loader

-V = 1.2.189.1
+V = 1.2.198.0
PKGNAME = vulkan-loader-${V}
GH_TAGNAME = sdk-${V}
GH_ACCOUNT = KhronosGroup
GH_PROJECT = Vulkan-Loader

-SHARED_LIBS += vulkan 0.1 # 1.2
+SHARED_LIBS += vulkan 1.0 # 1.2.198

CATEGORIES = devel graphics

Index: vulkan-loader/distinfo
===================================================================
RCS file: /cvs/ports/graphics/vulkan-loader/distinfo,v
retrieving revision 1.5
diff -u -p -r1.5 distinfo
--- vulkan-loader/distinfo 16 Oct 2021 14:50:40 -0000 1.5
+++ vulkan-loader/distinfo 30 Nov 2021 03:03:21 -0000
@@ -1,2 +1,2 @@
-SHA256 (Vulkan-Loader-sdk-1.2.189.1.tar.gz) = HZ9TkVTTfOoMozY0HDsl5z1aUyDy+cnFX4MJQi/m7Dw=
-SIZE (Vulkan-Loader-sdk-1.2.189.1.tar.gz) = 1509572
+SHA256 (Vulkan-Loader-sdk-1.2.198.0.tar.gz) = fV1WKW3NiK+E7Q/elpA4NwyshgDE734yh4i3Qi2QJbs=
+SIZE (Vulkan-Loader-sdk-1.2.198.0.tar.gz) = 1440922
Index: vulkan-loader/patches/patch-CMakeLists_txt
===================================================================
RCS file: /cvs/ports/graphics/vulkan-loader/patches/patch-CMakeLists_txt,v
retrieving revision 1.6
diff -u -p -r1.6 patch-CMakeLists_txt
--- vulkan-loader/patches/patch-CMakeLists_txt 16 Oct 2021 14:50:40 -0000 1.6
+++ vulkan-loader/patches/patch-CMakeLists_txt 30 Nov 2021 03:03:21 -0000
@@ -3,7 +3,7 @@ $OpenBSD: patch-CMakeLists_txt,v 1.6 202
Index: CMakeLists.txt
--- CMakeLists.txt.orig
+++ CMakeLists.txt
-@@ -100,13 +100,13 @@ set(LOADER_HELPER_FOLDER "Helper Targets")
+@@ -188,13 +188,13 @@ set(LOADER_HELPER_FOLDER "Helper Targets")

if(UNIX)
set(
@@ -19,7 +19,7 @@ Index: CMakeLists.txt
CACHE
STRING
"Search path to use when XDG_DATA_DIRS is unset or empty or the current process is SUID/SGID. Default is freedesktop compliant."
-@@ -128,6 +128,7 @@ if(UNIX AND NOT APPLE) # i.e.: Linux
+@@ -216,6 +216,7 @@ if(UNIX AND NOT APPLE) # i.e.: Linux

if(BUILD_WSI_XCB_SUPPORT)
find_package(XCB REQUIRED)
Index: vulkan-loader/patches/patch-loader_CMakeLists_txt
===================================================================
RCS file: /cvs/ports/graphics/vulkan-loader/patches/patch-loader_CMakeLists_txt,v
retrieving revision 1.7
diff -u -p -r1.7 patch-loader_CMakeLists_txt
--- vulkan-loader/patches/patch-loader_CMakeLists_txt 16 Oct 2021 14:50:40 -0000 1.7
+++ vulkan-loader/patches/patch-loader_CMakeLists_txt 30 Nov 2021 03:03:21 -0000
@@ -1,29 +1,18 @@
$OpenBSD: patch-loader_CMakeLists_txt,v 1.7 2021/10/16 14:50:40 thfr Exp $

-don't define _XOPEN_SOURCE=500, otherwise alloca from stdlib.h isn't
-visible and libvulkan won't run
-
Index: loader/CMakeLists.txt
--- loader/CMakeLists.txt.orig
+++ loader/CMakeLists.txt
-@@ -15,7 +15,7 @@
+@@ -17,7 +17,7 @@
# limitations under the License.
# ~~~

-include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/generated ${CMAKE_CURRENT_BINARY_DIR})
+include_directories(BEFORE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/generated ${CMAKE_CURRENT_BINARY_DIR})

- # Check for the existance of the secure_getenv or __secure_getenv commands
- include(CheckFunctionExists)
-@@ -202,7 +202,6 @@ else(UNIX AND NOT APPLE) # i.e.: Linux
- target_link_libraries(asm_offset Vulkan::Headers)
- add_custom_command(OUTPUT gen_defines.asm DEPENDS asm_offset COMMAND asm_offset GAS)
- add_custom_target(loader_asm_gen_files DEPENDS gen_defines.asm)
-- target_compile_definitions(asm_offset PRIVATE _XOPEN_SOURCE=500) # hush compiler warnings for readlink
- else()
- message(WARNING "Could not find working x86 GAS assembler\n${ASM_FAILURE_MSG}")
- set(OPT_LOADER_SRCS ${OPT_LOADER_SRCS} unknown_ext_chain.c)
-@@ -300,7 +299,7 @@ else()
+ # Get version of the API the generated code used and put it into a cmake variable LOADER_GENERATED_HEADER_VERSION
+ include(generated/loader_generated_header_version.cmake)
+@@ -360,7 +360,7 @@ else()
add_library(vulkan-framework SHARED ${NORMAL_LOADER_SRCS} ${OPT_LOADER_SRCS} ${FRAMEWORK_HEADERS})
endif()
add_dependencies(vulkan-framework loader_asm_gen_files)
@@ -32,7 +21,7 @@ Index: loader/CMakeLists.txt
target_link_libraries(vulkan-framework Vulkan::Headers)

# The FRAMEWORK_VERSION needs to be "A" here so that Xcode code-signing works when a user adds their framework to an Xcode
-@@ -325,9 +324,6 @@ else()
+@@ -385,9 +385,6 @@ else()
# cmake-format: on
endif()

Index: vulkan-loader/patches/patch-loader_allocation_h
===================================================================
RCS file: vulkan-loader/patches/patch-loader_allocation_h
diff -N vulkan-loader/patches/patch-loader_allocation_h
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ vulkan-loader/patches/patch-loader_allocation_h 30 Nov 2021 03:03:21 -0000
@@ -0,0 +1,17 @@
+$OpenBSD$
+
+Index: loader/allocation.h
+--- loader/allocation.h.orig
++++ loader/allocation.h
+@@ -39,8 +39,8 @@ void loader_device_heap_free(const struct loader_devic
+ void *loader_device_heap_realloc(const struct loader_device *device, void *pMemory, size_t orig_size, size_t size,
+ VkSystemAllocationScope alloc_scope);
+
+-#if defined(__linux__) || defined(__APPLE__) || defined(__Fuchsia__) || defined(__QNXNTO__) || defined(__FreeBSD__)
++#if defined(__unix__) || defined(__APPLE__) || defined(__Fuchsia__) || defined(__QNXNTO__) || defined(__FreeBSD__)
+ #define loader_stack_alloc(size) alloca(size)
+ #elif defined(_WIN32)
+ #define loader_stack_alloc(size) _alloca(size)
+-

No comments:

Post a Comment