Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 933997 - sys-devel/clang-15.0.7-r3 needs updating to support python 12
Summary: sys-devel/clang-15.0.7-r3 needs updating to support python 12
Status: CONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: LLVM support project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 921826
  Show dependency tree
 
Reported: 2024-06-10 10:33 UTC by Andrew Cameron
Modified: 2024-06-29 13:16 UTC (History)
8 users (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andrew Cameron 2024-06-10 10:33:17 UTC
https://www.gentoo.org/support/news-items/2024-05-09-python3-12.html

It will not emerge on systems that no longer have python 11
Comment 1 Andreas Sturmlechner gentoo-dev 2024-06-10 15:27:45 UTC
You would be expected to upgrade to a much newer version instead. Is that for some reason not possible?


$ eshowkw clang
Keywords for sys-devel/clang:
                                             |   u         |  
               a   a     p s     l r   a     |   n         |  
               m   r h   p p   i o i s l m m | e u s       | r
               d a m p p c a x a o s 3 p 6 i | a s l       | e
               6 r 6 p p 6 r 8 6 n c 9 h 8 p | p e o       | p
               4 m 4 a c 4 c 6 4 g v 0 a k s | i d t       | o
--------------+-------------------------------+-------------+
    15.0.7-r3 | + + + o + + + + o o ~ o o o o | 8 o 15/15g1 | gentoo
--------------+-------------------------------+-------------+
    16.0.6    | + + + o + + + + o ~ ~ o o o o | 8 o 16/16   | gentoo
--------------+-------------------------------+-------------+
    17.0.6    | + + + o + + + + o ~ ~ o o o o | 8 o 17/17   | gentoo
Comment 2 Andrew Cameron 2024-06-10 16:02:22 UTC
I already have clang:16 clang:17: clang:18 on my system.

Some of the older packages on some of the overlays may still require clang:15
Comment 3 Andreas Sturmlechner gentoo-dev 2024-06-10 16:04:22 UTC
(In reply to Andrew Cameron from comment #2)
> I already have clang:16 clang:17: clang:18 on my system.
> 
> Some of the older packages on some of the overlays may still require clang:15
Those shall port away from it.

It is no problem for you to keep python:3.11 around either, if you still need older packages like clang:15.

But ultimately, this is up to clang maintainers.
Comment 4 Pacho Ramos gentoo-dev 2024-06-16 10:12:34 UTC
This is needed on systems having dev-util/intel-graphics-compiler
https://bugs.gentoo.org/920541
Comment 5 Pacho Ramos gentoo-dev 2024-06-16 11:44:06 UTC
(In reply to Pacho Ramos from comment #4)
> This is needed on systems having dev-util/intel-graphics-compiler
> https://bugs.gentoo.org/920541

We get this failure:
!!! The ebuild selected to satisfy "sys-devel/clang:15=[static-analyzer]" has unmet requirements.
- sys-devel/clang-15.0.7-r3::gentoo USE="extra (pie) static-analyzer xml -debug -doc (-ieee-long-double) -test -verify-sig" ABI_X86="(64) -32 (-x32)" LLVM_TARGETS="(AArch64) (AMDGPU) (ARM) (AVR) (BPF) (Hexagon) (Lanai) (MSP430) (Mips) (NVPTX) (PowerPC) (RISCV) (Sparc) (SystemZ) (VE) (WebAssembly) (X86) (XCore) (-ARC) (-CSKY) (-DirectX) (-LoongArch) (-M68k) (-SPIRV)" PYTHON_SINGLE_TARGET="-python3_10 -python3_11"

  The following REQUIRED_USE flag constraints are unsatisfied:
    exactly-one-of ( python_single_target_python3_10 python_single_target_python3_11 )

  The above constraints are a subset of the following complete expression:
    exactly-one-of ( python_single_target_python3_10 python_single_target_python3_11 ) any-of ( llvm_targets_AArch64 llvm_targets_AMDGPU llvm_targets_ARM llvm_targets_AVR llvm_targets_BPF llvm_targets_Hexagon llvm_targets_Lanai llvm_targets_Mips llvm_targets_MSP430 llvm_targets_NVPTX llvm_targets_PowerPC llvm_targets_RISCV llvm_targets_Sparc llvm_targets_SystemZ llvm_targets_VE llvm_targets_WebAssembly llvm_targets_X86 llvm_targets_XCore llvm_targets_ARC llvm_targets_CSKY llvm_targets_DirectX llvm_targets_LoongArch llvm_targets_M68k llvm_targets_SPIRV )

(dependency required by "dev-libs/opencl-clang-15.0.0-r1::gentoo[llvm_slot_15]" [installed])
(dependency required by "dev-util/intel-graphics-compiler-1.0.16695.2::gentoo" [ebuild])
(dependency required by "dev-libs/intel-compute-runtime-24.13.29138.7::gentoo" [ebuild])
(dependency required by "@selected" [set])
(dependency required by "@world" [argument])
Comment 6 Andrew Cameron 2024-06-16 13:11:12 UTC
(In reply to Pacho Ramos from comment #5)
> (In reply to Pacho Ramos from comment #4)
> > This is needed on systems having dev-util/intel-graphics-compiler
> > https://bugs.gentoo.org/920541
> 
> We get this failure:
> !!! The ebuild selected to satisfy "sys-devel/clang:15=[static-analyzer]"
> has unmet requirements.
> - sys-devel/clang-15.0.7-r3::gentoo USE="extra (pie) static-analyzer xml
> -debug -doc (-ieee-long-double) -test -verify-sig" ABI_X86="(64) -32 (-x32)"
> LLVM_TARGETS="(AArch64) (AMDGPU) (ARM) (AVR) (BPF) (Hexagon) (Lanai)
> (MSP430) (Mips) (NVPTX) (PowerPC) (RISCV) (Sparc) (SystemZ) (VE)
> (WebAssembly) (X86) (XCore) (-ARC) (-CSKY) (-DirectX) (-LoongArch) (-M68k)
> (-SPIRV)" PYTHON_SINGLE_TARGET="-python3_10 -python3_11"
> 
>   The following REQUIRED_USE flag constraints are unsatisfied:
>     exactly-one-of ( python_single_target_python3_10
> python_single_target_python3_11 )
> 
>   The above constraints are a subset of the following complete expression:
>     exactly-one-of ( python_single_target_python3_10
> python_single_target_python3_11 ) any-of ( llvm_targets_AArch64
> llvm_targets_AMDGPU llvm_targets_ARM llvm_targets_AVR llvm_targets_BPF
> llvm_targets_Hexagon llvm_targets_Lanai llvm_targets_Mips
> llvm_targets_MSP430 llvm_targets_NVPTX llvm_targets_PowerPC
> llvm_targets_RISCV llvm_targets_Sparc llvm_targets_SystemZ llvm_targets_VE
> llvm_targets_WebAssembly llvm_targets_X86 llvm_targets_XCore
> llvm_targets_ARC llvm_targets_CSKY llvm_targets_DirectX
> llvm_targets_LoongArch llvm_targets_M68k llvm_targets_SPIRV )
> 
> (dependency required by
> "dev-libs/opencl-clang-15.0.0-r1::gentoo[llvm_slot_15]" [installed])
> (dependency required by
> "dev-util/intel-graphics-compiler-1.0.16695.2::gentoo" [ebuild])
> (dependency required by
> "dev-libs/intel-compute-runtime-24.13.29138.7::gentoo" [ebuild])
> (dependency required by "@selected" [set])
> (dependency required by "@world" [argument])

While we wait for it to be addressed try adding the following to your /etc/portage/make.conf as a temporary workaround

PYTHON_TARGETS="python3_11 python3_12"
PYTHON_SINGLE_TARGET="python3_11"
Comment 7 Eli Schwartz 2024-06-18 00:28:20 UTC
(In reply to Andrew Cameron from comment #6)
> While we wait for it to be addressed try adding the following to your
> /etc/portage/make.conf as a temporary workaround

"Waiting for it to be addressed" makes it sound like it's already been decided it will be addressed.


(In reply to Pacho Ramos from comment #4)
> This is needed on systems having dev-util/intel-graphics-compiler
> https://bugs.gentoo.org/920541

Claiming it is "needed" ignores the fact that it's not "needed" to achieve an end state where a package requires a USE flag that isn't set by default.


...

The actual issue here is that clang has a possibly legitimate reason to use python max capped at 3.11. The lack of 3.12 support could be for one of two reasons:

- it is genuinely source-incompatible with 3.12

- nobody bothered to enable it


Please check which case this is. In the latter case, I am sure no one will dispute adding PYTHON_COMPAT. In the former case, you're asking the llvm team to maintain a patchset.

My personal opinion is that software using ancient LLVM should expect to also use ancient python, and maintaining a downstream patchset to port over support for bleeding edge python would be wrong and should not be done. But I am not the llvm team either. :)
Comment 8 Pacho Ramos gentoo-dev 2024-06-18 11:57:19 UTC
I simply wanted to draw attention over this blocking the update of people needing dev-util/intel-graphics-compiler. dev-util/intel-graphics-compiler is needed by dev-libs/intel-compute-runtime, used for having openCL support on current Intel processors:
https://wiki.gentoo.org/wiki/OpenCL#Intel_Graphics_Compute_Runtime

For now, I simply updated the python compat locally, and everything looks to still be ok.
Comment 9 Conrad Kostecki gentoo-dev 2024-06-18 13:18:54 UTC
(In reply to Andrew Cameron from comment #2)
> I already have clang:16 clang:17: clang:18 on my system.
> 
> Some of the older packages on some of the overlays may still require clang:15

In case of intel-graphics-compiler, we cannot do anything. Upstream simply does not support LLVM16 or newer..
Comment 10 Andrew Cameron 2024-06-21 10:48:15 UTC
This is my workaround for now.

/etc/portage/env/python-compat.conf
PYTHON_SINGLE_TARGET="python3_11"


/etc/portage/package.env/clang
=sys-devel/clang-15.0.7-r3 python-compat.conf