[opensuse-releaseteam] Re: New comment in package X11:XOrg/Mesa by repo-checker
+CC opensuse-releaseteam On Monday, August 14, 2017 7:06:51 AM CDT Stefan Dirsch wrote:
Visit https://build.opensuse.org/package/show/X11:XOrg/Mesa
Repo Checker wrote in package X11:XOrg/Mesa:
The version of this package in openSUSE:Factory has installation issues and may not be installable:
can't install Mesa-libd3d-devel-32bit-17.1.5-168.2.x86_64: nothing provides libvulkan_intel-32bit = 17.1.5 needed by Mesa-libd3d-devel-32bit-17.1.5-168.2.x86_64 nothing provides libvulkan_radeon-32bit = 17.1.5 needed by Mesa-libd3d-devel-32bit-17.1.5-168.2.x86_64 Guys, in case anybody figures out what's wrong in baselibs.conf of Mesa
On Fri, Aug 11, 2017 at 07:13:29PM +0000, Repo Checker wrote: package, please let me know. Sigh.
After reading the baselibs.conf documentation [1] it seems there are two different statements that are extremely similar and are confused within the Mesa baselibs.conf. The two statements being: - arch <arch> package <package> - arch <arch> targets <target_arch>[:<target_type>] [<target_arch>[:<target_type>]...] The first being used to apply only to <package> when arch is <arch>. The second being used to control the arch and target_arch combinations applied when evaluating the baselibs.conf file. Given that the missing requirements should not be requirements of Mesa-libd3d- devel-32bit and are not dependencies of Mesa-libd3d-devel.x86_64 it seems that the parser is interpreting the arch lines as matching the second form (or ignoring as invalid) rather then a conditional to the lines below them. Mesa-libd3d-devel requires "Mesa-libd3d-<targettype> = <version>" arch aarch64 ppc64 ppc64le s390x x86_64 package libvulkan_intel +/usr/share/vulkan/icd.d/intel_icd.*.json arch aarch64 ppc64 ppc64le s390x x86_64 package libvulkan_radeon +/usr/share/vulkan/icd.d/radeon_icd.*.json arch aarch64 ppc64 ppc64le s390x x86_64 package Mesa-libVulkan-devel requires "libvulkan_intel-<targettype> = <version>" requires "libvulkan_radeon-<targettype> = <version>" Since they happen to be placed after Mesa-libd3d-devel they are applied to it as if written without the arch lines: Mesa-libd3d-devel requires "Mesa-libd3d-<targettype> = <version>" +/usr/share/vulkan/icd.d/intel_icd.*.json +/usr/share/vulkan/icd.d/radeon_icd.*.json requires "libvulkan_intel-<targettype> = <version>" requires "libvulkan_radeon-<targettype> = <version>"
From the documentation there does not appear to be a conditional for multiple archs. Instead the only option appears to be targettype in front of each line. This obviously requires repeating for each arch which is a bit ugly. Short of reading the parser to confirm this appears to be the only option.
Feel free to rework my request 516907 [2] as needed. Looking at the build results it properly removes the dependencies from Mesa-libd3d-devel-32bit It would seem possible for the parser to look for the "package" keyword and allow for the desired syntax. I would imagine it either ignored those lines or using the second syntax (with the target keyword). [1] https://en.opensuse.org/openSUSE:Build_Service_baselibs.conf [2] https://build.opensuse.org/request/show/516907 -- Jimmy -- To unsubscribe, e-mail: opensuse-releaseteam+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-releaseteam+owner@opensuse.org
+mls@suse.de Could you confirm my solution and that there is not a better method for achieving the same result? On Monday, August 14, 2017 12:44:25 PM CDT Jimmy Berry wrote:
+CC opensuse-releaseteam
On Monday, August 14, 2017 7:06:51 AM CDT Stefan Dirsch wrote:
On Fri, Aug 11, 2017 at 07:13:29PM +0000, Repo Checker wrote:
Visit https://build.opensuse.org/package/show/X11:XOrg/Mesa
Repo Checker wrote in package X11:XOrg/Mesa:
The version of this package in openSUSE:Factory has installation issues and may not be installable:
can't install Mesa-libd3d-devel-32bit-17.1.5-168.2.x86_64: nothing provides libvulkan_intel-32bit = 17.1.5 needed by Mesa-libd3d-devel-32bit-17.1.5-168.2.x86_64 nothing provides libvulkan_radeon-32bit = 17.1.5 needed by Mesa-libd3d-devel-32bit-17.1.5-168.2.x86_64
Guys, in case anybody figures out what's wrong in baselibs.conf of Mesa package, please let me know. Sigh.
After reading the baselibs.conf documentation [1] it seems there are two different statements that are extremely similar and are confused within the Mesa baselibs.conf.
The two statements being:
- arch <arch> package <package> - arch <arch> targets <target_arch>[:<target_type>] [<target_arch>[:<target_type>]...]
The first being used to apply only to <package> when arch is <arch>. The second being used to control the arch and target_arch combinations applied when evaluating the baselibs.conf file.
Given that the missing requirements should not be requirements of Mesa-libd3d- devel-32bit and are not dependencies of Mesa-libd3d-devel.x86_64 it seems that the parser is interpreting the arch lines as matching the second form (or ignoring as invalid) rather then a conditional to the lines below them.
Mesa-libd3d-devel requires "Mesa-libd3d-<targettype> = <version>" arch aarch64 ppc64 ppc64le s390x x86_64 package libvulkan_intel +/usr/share/vulkan/icd.d/intel_icd.*.json arch aarch64 ppc64 ppc64le s390x x86_64 package libvulkan_radeon +/usr/share/vulkan/icd.d/radeon_icd.*.json arch aarch64 ppc64 ppc64le s390x x86_64 package Mesa-libVulkan-devel requires "libvulkan_intel-<targettype> = <version>" requires "libvulkan_radeon-<targettype> = <version>"
Since they happen to be placed after Mesa-libd3d-devel they are applied to it as if written without the arch lines:
Mesa-libd3d-devel requires "Mesa-libd3d-<targettype> = <version>" +/usr/share/vulkan/icd.d/intel_icd.*.json +/usr/share/vulkan/icd.d/radeon_icd.*.json requires "libvulkan_intel-<targettype> = <version>" requires "libvulkan_radeon-<targettype> = <version>"
From the documentation there does not appear to be a conditional for multiple archs. Instead the only option appears to be targettype in front of each line. This obviously requires repeating for each arch which is a bit ugly. Short of reading the parser to confirm this appears to be the only option.
Feel free to rework my request 516907 [2] as needed. Looking at the build results it properly removes the dependencies from Mesa-libd3d-devel-32bit
It would seem possible for the parser to look for the "package" keyword and allow for the desired syntax. I would imagine it either ignored those lines or using the second syntax (with the target keyword).
[1] https://en.opensuse.org/openSUSE:Build_Service_baselibs.conf [2] https://build.opensuse.org/request/show/516907
-- Jimmy -- To unsubscribe, e-mail: opensuse-releaseteam+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-releaseteam+owner@opensuse.org
participants (1)
-
Jimmy Berry