Bug 242775

Summary: devel/vulkan-headers: update to 1.1.130.0
Product: Ports & Packages Reporter: Jan Beich <jbeich>
Component: Individual Port(s)Assignee: Jan Beich <jbeich>
Status: Closed FIXED    
Severity: Affects Only Me CC: ashafer, greg
Priority: --- Keywords: needs-patch
Version: LatestFlags: greg: maintainer-feedback+
Hardware: Any   
OS: Any   
URL: https://www.lunarg.com/lunarg-releases-new-sdks-for-vulkan-header-1-1-130-0/
Bug Depends on:    
Bug Blocks: 251345    
Attachments:
Description Flags
Update vulkan to 1.2.135
none
1.2.135 update, v3 none

Description Jan Beich freebsd_committer 2019-12-21 16:46:54 UTC
Vulkan SDK 1.1.130.0 was recently released (see URL field). The version in ports is several months old, so consumers may start to depend on it. For wider adoption via /quarterly it'd be nice to land before 2020-01-01.

Can you provide a patch and test on AMD?
Comment 1 Emanuel Haupt freebsd_committer 2020-03-08 20:18:23 UTC
Looks good to me. Can you provide a patch?
Comment 2 Emanuel Haupt freebsd_committer 2020-03-08 20:20:09 UTC
(In reply to Emanuel Haupt from comment #1)
Please ignore. Wrong PR.
Comment 3 Austin Shafer 2020-05-14 19:47:25 UTC
Created attachment 214499 [details]
Update vulkan to 1.2.135

My second attempt at upgrading vulkan and all related ports to something more recent.

The vulkan validation layers crash when presenting to a physical display, which is why I'd like to see this updated. I've tested the loader/validation layers regularly with no issues.

* most of the changes are just bumping version numbers
* some patches were no longer needed due to being applied upstream
* new patches had to be added to fix #ifdefs for platform support
* shaderc wants to use spirv-headers now, in much the same way as spirv-tools

Please let me know if there is anything that needs improving.
Comment 4 Jan Beich freebsd_committer 2020-05-14 23:07:20 UTC
Created attachment 214508 [details]
1.2.135 update, v3

All consumers build fine on 12.1 amd64. I've fixed a few minor bugs mainly found via poudriere:
- PORTREVISION wasn't reset to 0
- pkg-plist was often missing new entries (broken in graphics/shaderc)
- devel/vulkan-tools wasn't rebased after ports r535235
- Cruft (e.g., unused PATCH_SITES and SHADERC_ENABLE_NV_EXTENSIONS)

graphics/vulkan-loader fails to build on i386, see https://reviews.freebsd.org/P387

<instantiation>:14:17: error: cannot use more than one symbol in memory operand
    push offset termin_error_string@GOT # Push the error string (fourth arg)
                ^
Comment 5 Greg V 2020-05-15 01:13:45 UTC
> graphics/vulkan-loader fails to build on i386

Maybe using binutils gnu as on i386 would help.

Otherwise, you could just slap a BROKEN_i386 on this I guess.
Comment 6 commit-hook freebsd_committer 2020-05-15 03:26:28 UTC
A commit references this bug:

Author: jbeich
Date: Fri May 15 03:26:10 UTC 2020
New revision: 535260
URL: https://svnweb.freebsd.org/changeset/ports/535260

Log:
  devel/vulkan-*: update to 1.2.135.0

  Changes:	https://github.com/KhronosGroup/glslang/compare/7.11.3214...8.13.3743
  Changes:	https://github.com/KhronosGroup/SPIRV-Headers/compare/1.4.1...1.5.3
  Changes:	https://github.com/KhronosGroup/SPIRV-Tools/compare/v2019.3...v2020.2
  Changes:	https://github.com/google/shaderc/compare/v2018.0...v2020.0
  Changes:	https://github.com/KhronosGroup/Vulkan-Headers/compare/sdk-1.1.108.0...sdk-1.2.135.0
  Changes:	https://github.com/KhronosGroup/Vulkan-Loader/compare/sdk-1.1.108.0...sdk-1.2.135.0
  Changes:	https://github.com/KhronosGroup/Vulkan-Tools/compare/sdk-1.1.108.0...sdk-1.2.135.0
  Changes:	https://github.com/KhronosGroup/Vulkan-ValidationLayers/compare/sdk-1.1.108.0...sdk-1.2.135.0
  PR:		242775
  Submitted by:	Austin Shafer <ashafer@badland.io>
  Approved by:	Greg V <greg@unrelenting.technology> (maintainer)

Changes:
  head/devel/glslang/Makefile
  head/devel/glslang/distinfo
  head/devel/glslang/pkg-plist
  head/devel/spirv-tools/Makefile
  head/devel/spirv-tools/distinfo
  head/devel/spirv-tools/pkg-plist
  head/devel/vulkan-headers/Makefile
  head/devel/vulkan-headers/distinfo
  head/devel/vulkan-headers/files/
  head/devel/vulkan-headers/files/patch-include_vulkan_vulkan.hpp
  head/devel/vulkan-headers/pkg-plist
  head/devel/vulkan-tools/Makefile
  head/devel/vulkan-tools/distinfo
  head/devel/vulkan-tools/files/patch-cube_CMakeLists.txt
  head/devel/vulkan-tools/files/patch-cube_cube.cpp
  head/devel/vulkan-tools/files/patch-vulkaninfo_vulkaninfo.h
  head/devel/vulkan-validation-layers/Makefile
  head/devel/vulkan-validation-layers/distinfo
  head/devel/vulkan-validation-layers/pkg-plist
  head/graphics/shaderc/Makefile
  head/graphics/shaderc/distinfo
  head/graphics/shaderc/pkg-plist
  head/graphics/vkd3d/Makefile
  head/graphics/vkd3d/distinfo
  head/graphics/vulkan-loader/Makefile
  head/graphics/vulkan-loader/distinfo
  head/graphics/vulkan-loader/files/patch-CMakeLists.txt
  head/graphics/vulkan-loader/files/patch-loader_CMakeLists.txt
  head/graphics/vulkan-loader/files/patch-loader_loader.c
  head/graphics/vulkan-loader/files/patch-loader_vk__loader__platform.h
  head/graphics/vulkan-loader/pkg-plist
Comment 7 Jan Beich freebsd_committer 2020-05-15 03:33:30 UTC
I've bisected to https://github.com/KhronosGroup/Vulkan-Loader/commit/85836796b357
-no-integrated-as -B/usr/local/bin helped but then the build couldn't find gen_defines.asm.