Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 868297 - media-libs/libplacebo-4.192.1 fails with VkExportMetalObjectCreateInfoEXT undeclared
Summary: media-libs/libplacebo-4.192.1 fails with VkExportMetalObjectCreateInfoEXT und...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: No maintainer - Look at https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers if you want to take care of it
URL:
Whiteboard:
Keywords: PATCH
Depends on:
Blocks:
 
Reported: 2022-09-03 17:31 UTC by Sven Müller
Modified: 2022-09-03 20:28 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,38.61 KB, text/x-log)
2022-09-03 18:08 UTC, Sven Müller
Details
Patch (vulkan.patch,458 bytes, patch)
2022-09-03 18:08 UTC, Sven Müller
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Sven Müller 2022-09-03 17:31:52 UTC
src/utils_gen.c:1036:79: error: ‘VkExportMetalObjectCreateInfoEXT’ undeclared (first use in this function); did you mean ‘VkExportSemaphoreCreateInfoKHR’?
 1036 |     case VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT: return sizeof(VkExportMetalObjectCreateInfoEXT);
      |                                                                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                                                               VkExportSemaphoreCreateInfoKHR
src/utils_gen.c:1036:79: note: each undeclared identifier is reported only once for each function it appears in
src/utils_gen.c:1037:73: error: ‘VkExportMetalObjectsInfoEXT’ undeclared (first use in this function)
 1037 |     case VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT: return sizeof(VkExportMetalObjectsInfoEXT);
      |                                                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/utils_gen.c:1038:72: error: ‘VkExportMetalDeviceInfoEXT’ undeclared (first use in this function)
 1038 |     case VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT: return sizeof(VkExportMetalDeviceInfoEXT);
      |                                                                        ^~~~~~~~~~~~~~~~~~~~~~~~~~
src/utils_gen.c:1039:79: error: ‘VkExportMetalCommandQueueInfoEXT’ undeclared (first use in this function)
 1039 |     case VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT: return sizeof(VkExportMetalCommandQueueInfoEXT);
      |                                                                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/utils_gen.c:1040:72: error: ‘VkExportMetalBufferInfoEXT’ undeclared (first use in this function)
 1040 |     case VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT: return sizeof(VkExportMetalBufferInfoEXT);
      |                                                                        ^~~~~~~~~~~~~~~~~~~~~~~~~~
src/utils_gen.c:1041:72: error: ‘VkImportMetalBufferInfoEXT’ undeclared (first use in this function)
 1041 |     case VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT: return sizeof(VkImportMetalBufferInfoEXT);
      |                                                                        ^~~~~~~~~~~~~~~~~~~~~~~~~~
src/utils_gen.c:1042:73: error: ‘VkExportMetalTextureInfoEXT’ undeclared (first use in this function)
 1042 |     case VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT: return sizeof(VkExportMetalTextureInfoEXT);
      |                                                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/utils_gen.c:1043:73: error: ‘VkImportMetalTextureInfoEXT’ undeclared (first use in this function)
 1043 |     case VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT: return sizeof(VkImportMetalTextureInfoEXT);
      |                                                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/utils_gen.c:1044:78: error: ‘VkExportMetalSharedEventInfoEXT’ undeclared (first use in this function)
 1044 |     case VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT: return sizeof(VkExportMetalSharedEventInfoEXT);
      |                                                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/utils_gen.c:1045:78: error: ‘VkImportMetalSharedEventInfoEXT’ undeclared (first use in this function)
 1045 |     case VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT: return sizeof(VkImportMetalSharedEventInfoEXT);
      |                                                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


Reproducible: Always

Steps to Reproduce:
1. emerge -1 =libplacebo-4.192.1
Comment 1 Stephan Hartmann (RETIRED) gentoo-dev 2022-09-03 18:01:59 UTC
Please paste emerge --info and attach full build.log for completeness.
Comment 2 Sven Müller 2022-09-03 18:02:33 UTC
As I'm getting an internal server error when I try to add the build.log. I'm posting the patch, that allowed me to compile the package:

diff -urN libplacebo-v4.192.1.orig/src/vulkan/utils_gen.py libplacebo-v4.192.1/src/vulkan/utils_gen.py
--- libplacebo-v4.192.1.orig/src/vulkan/utils_gen.py    2022-02-03 16:30:55.000000000 +0100
+++ libplacebo-v4.192.1/src/vulkan/utils_gen.py 2022-09-03 19:27:20.433374613 +0200
@@ -29,6 +29,7 @@
 TEMPLATE = Template("""
 #define VK_ENABLE_BETA_EXTENSIONS
 #include "vulkan/utils.h"
+#include "vulkan/vulkan_metal.h"
 
 const char *vk_res_str(VkResult res)
 {
Comment 3 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-09-03 18:06:11 UTC
(In reply to Sven Müller from comment #2)
> As I'm getting an internal server error when I try to add the build.log. I'm
> posting the patch, that allowed me to compile the package:
> 

This happens when your browser lacks permissions to open the file. Move it/chown it first.
Comment 4 Stephan Hartmann (RETIRED) gentoo-dev 2022-09-03 18:06:47 UTC
Can you try the patch from "See Also"?
Comment 5 Sven Müller 2022-09-03 18:08:00 UTC
Created attachment 803071 [details]
build.log
Comment 6 Sven Müller 2022-09-03 18:08:24 UTC
Created attachment 803074 [details, diff]
Patch
Comment 7 Sven Müller 2022-09-03 18:09:03 UTC
(In reply to Sam James from comment #3)
> This happens when your browser lacks permissions to open the file. Move
> it/chown it first.

Thanks. That was the problem.
Comment 8 Sven Müller 2022-09-03 18:11:37 UTC
(In reply to Stephan Hartmann from comment #1)
> See Also: https://code.videolan.org/videolan/libplacebo/-/issues/201

I've found that issue too. Maybe it's better solution than just adding the include. At least I've got it compiled this way.
Comment 9 Sven Müller 2022-09-03 18:14:15 UTC
(In reply to Stephan Hartmann from comment #4)
> Can you try the patch from "See Also"?

Worked.
Comment 10 Larry the Git Cow gentoo-dev 2022-09-03 20:28:03 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cbe8cf7aba85fe8124c9b118b5198888e602ede9

commit cbe8cf7aba85fe8124c9b118b5198888e602ede9
Author:     Stephan Hartmann <sultan@gentoo.org>
AuthorDate: 2022-09-03 20:27:27 +0000
Commit:     Stephan Hartmann <sultan@gentoo.org>
CommitDate: 2022-09-03 20:27:27 +0000

    media-libs/libplacebo: fix build with vulkan-headers-1.3.217
    
    Closes: https://bugs.gentoo.org/868297
    Signed-off-by: Stephan Hartmann <sultan@gentoo.org>

 .../libplacebo-2.72.2-fix-vulkan-undeclared.patch  | 26 ++++++++++++++++++++++
 media-libs/libplacebo/libplacebo-2.72.2.ebuild     |  5 +++--
 media-libs/libplacebo/libplacebo-3.120.3.ebuild    |  2 ++
 media-libs/libplacebo/libplacebo-4.192.1.ebuild    |  2 ++
 4 files changed, 33 insertions(+), 2 deletions(-)