Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 612574 - sys-devel/clang-4.0.0 and sys-devel/llvm-4.0.0 have runtime blockers on llvm and clang:0/3.9.1
Summary: sys-devel/clang-4.0.0 and sys-devel/llvm-4.0.0 have runtime blockers on llvm...
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: LLVM support project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-03-14 04:43 UTC by Harris Landgarten
Modified: 2017-03-16 19:51 UTC (History)
1 user (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 Harris Landgarten 2017-03-14 04:43:44 UTC
llvm ::installed               3.9.1-r1 {:0/3.9.1} 4.0.0 {:4}
clang ::installed               3.9.1-r100 {:0/3.9.1} 4.0.0 {:4}

both ebuilds have:

RDEPEND="${RDEPEND}
        !sys-devel/llvm:0"

and RDEPEND="${RDEPEND}
        !<sys-devel/llvm-4.0.0_rc:0
        !sys-devel/clang:0"

resulting in:

* sys-devel/llvm-3.9.1-r1:0::gentoo
        Did not meet !<sys-devel/llvm-4.0.0_rc:0, use existing if possible, installing to / (nothing is fine too) from !<sys-devel/llvm-4.0.0_rc:0 from sys-devel/clang-4.0.0:4::installed
        Did not meet !sys-devel/llvm:0, use existing if possible, installing to / (nothing is fine too) from !sys-devel/llvm:0 from app-vim/llvm-vim-4.0.0:0::installed

and
* sys-devel/clang-3.9.1-r100:0::gentoo
        Did not meet !sys-devel/clang:0, use existing if possible, installing to / (nothing is fine too) from !sys-devel/clang:0 from sys-devel/clang-4.0.0:4::installed

on world updates on paludis
Comment 1 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2017-03-14 10:59:12 UTC
I'm sorry but the cryptic messages from Paludis give me no clue what the problem might be. In fact, they seem to indicate that you've installed slot 4 already. So please explain in greater detail what happened, did not happen and what you expected to happen.
Comment 2 Harris Landgarten 2017-03-14 12:19:33 UTC
when I did a normal update of installed-packages I was getting the blocker as paludis tried to installed the 4.0.0 slot. I uninstalled clang and llvm 3.9.1 and then installed clang and llvm 4.0.0

then I rebuilt mesa and julia and they pulled back in 3.9.1 the 0/3.9.1 slot.

I Now have both slots installed but still have the blocker. If the intention is only to allow 1 slot then why have slots?
Comment 3 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2017-03-14 12:57:00 UTC
The slotting is supported since 4.0.0, hence that version blocks the old unslotted versions.

I suppose your original problem was related to some package requiring the old version. However, your actions caused the dependency graph to become inconsistent and now it's hard to guess the original cause.

I don't know paludis well enough to suggest any solution to this. If you need support, try Paludis devs.

Closing as INVALID since the blocker is intentional and necessary.
Comment 4 Harris Landgarten 2017-03-14 13:09:14 UTC
there still an issue. This is an attempt to reinstall both slots:

cave resolve llvm:0/3.9.1 clang:0/3.9.1 llvm:4 clang:4 -1z
Done: 1684 steps               

These are the actions I will take, in order:

r   sys-devel/llvm:4::gentoo 4.0.0 to ::installed replacing 4.0.0
    -debug doc -gold -libedit libffi ncurses (-test) ABI_X86: 32 (64) (-x32) LLVM_TARGETS: -AArch64 AMDGPU -ARM BPF -Hexagon -Lanai -MSP430 -Mips NVPTX -PowerPC -RISCV -Sparc -SystemZ (X86) -XCore build_options: symbols=split -dwarf_compress -optional_tests -trace work=tidyup
    Reasons: target, sys-devel/clang-4.0.0:4::gentoo

r   sys-devel/clang:4::gentoo 4.0.0 to ::installed replacing 4.0.0
    -debug -default-compiler-rt -default-libcxx doc -multitarget static-analyzer xml (-test) ABI_X86: 32 (64) (-x32) LLVM_TARGETS: -AArch64 AMDGPU -ARM BPF -Hexagon -Lanai -MSP430 -Mips NVPTX -PowerPC -RISCV -Sparc -SystemZ (X86) -XCore PYTHON_TARGETS: python2_7 build_options: symbols=split -dwarf_compress -optional_tests -trace work=tidyup
    Reasons: target, !<=sys-devel/clang-3.9.1-r99 from sys-devel/llvm-3.9.1-r1:0::gentoo

Total: 2 reinstalls

I encountered the following errors:

!   sys-devel/llvm
    Reasons: target, !<sys-devel/llvm-4.0.0_rc:0 from sys-devel/clang-4.0.0:4::gentoo, !sys-devel/llvm:0 from sys-devel/llvm-4.0.0:4::gentoo, sys-devel/clang-3.9.1-r100:0::gentoo
    Unsuitable candidates:
      * sys-devel/llvm-3.4.2-r100:0::gentoo
        Masked by keyword
            Keywords ~ppc-macos ~x64-macos ~x86-macos
        Did not meet !sys-devel/llvm:0, use existing if possible, installing to / (nothing is fine too) from !sys-devel/llvm:0 from sys-devel/llvm-4.0.0:4::gentoo
        Did not meet sys-devel/llvm:0/3.9.1, never using existing, installing to / from target
        Did not meet ~sys-devel/llvm-3.9.1[clang(-),debug=,python?,static-analyzer?,llvm_targets_AArch64?,llvm_targets_AMDGPU?,llvm_targets_ARM?,llvm_targets_BPF?,llvm_targets_Hexagon?,llvm_targets_Mips?,llvm_targets_MSP430?,llvm_targets_NVPTX?,llvm_targets_PowerPC?,llvm_targets_Sparc?,llvm_targets_SystemZ?,llvm_targets_X86?,llvm_targets_XCore?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?], use existing if possible, installing to / from sys-devel/clang-3.9.1-r100:0::gentoo
      * sys-devel/llvm-3.5.2:0::gentoo
        Did not meet !sys-devel/llvm:0, use existing if possible, installing to / (nothing is fine too) from !sys-devel/llvm:0 from sys-devel/llvm-4.0.0:4::gentoo
        Did not meet sys-devel/llvm:0/3.9.1, never using existing, installing to / from target
        Did not meet ~sys-devel/llvm-3.9.1[clang(-),debug=,python?,static-analyzer?,llvm_targets_AArch64?,llvm_targets_AMDGPU?,llvm_targets_ARM?,llvm_targets_BPF?,llvm_targets_Hexagon?,llvm_targets_Mips?,llvm_targets_MSP430?,llvm_targets_NVPTX?,llvm_targets_PowerPC?,llvm_targets_Sparc?,llvm_targets_SystemZ?,llvm_targets_X86?,llvm_targets_XCore?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?], use existing if possible, installing to / from sys-devel/clang-3.9.1-r100:0::gentoo
      * sys-devel/llvm-3.6.2:0::gentoo
        Did not meet !sys-devel/llvm:0, use existing if possible, installing to / (nothing is fine too) from !sys-devel/llvm:0 from sys-devel/llvm-4.0.0:4::gentoo
        Did not meet sys-devel/llvm:0/3.9.1, never using existing, installing to / from target
        Did not meet ~sys-devel/llvm-3.9.1[clang(-),debug=,python?,static-analyzer?,llvm_targets_AArch64?,llvm_targets_AMDGPU?,llvm_targets_ARM?,llvm_targets_BPF?,llvm_targets_Hexagon?,llvm_targets_Mips?,llvm_targets_MSP430?,llvm_targets_NVPTX?,llvm_targets_PowerPC?,llvm_targets_Sparc?,llvm_targets_SystemZ?,llvm_targets_X86?,llvm_targets_XCore?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?], use existing if possible, installing to / from sys-devel/clang-3.9.1-r100:0::gentoo
      * sys-devel/llvm-3.7.1-r3:0::gentoo
        Did not meet !sys-devel/llvm:0, use existing if possible, installing to / (nothing is fine too) from !sys-devel/llvm:0 from sys-devel/llvm-4.0.0:4::gentoo
        Did not meet sys-devel/llvm:0/3.9.1, never using existing, installing to / from target
        Did not meet ~sys-devel/llvm-3.9.1[clang(-),debug=,python?,static-analyzer?,llvm_targets_AArch64?,llvm_targets_AMDGPU?,llvm_targets_ARM?,llvm_targets_BPF?,llvm_targets_Hexagon?,llvm_targets_Mips?,llvm_targets_MSP430?,llvm_targets_NVPTX?,llvm_targets_PowerPC?,llvm_targets_Sparc?,llvm_targets_SystemZ?,llvm_targets_X86?,llvm_targets_XCore?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?], use existing if possible, installing to / from sys-devel/clang-3.9.1-r100:0::gentoo
      * sys-devel/llvm-3.8.1:0::gentoo
        Did not meet !sys-devel/llvm:0, use existing if possible, installing to / (nothing is fine too) from !sys-devel/llvm:0 from sys-devel/llvm-4.0.0:4::gentoo
        Did not meet sys-devel/llvm:0/3.9.1, never using existing, installing to / from target
        Did not meet ~sys-devel/llvm-3.9.1[clang(-),debug=,python?,static-analyzer?,llvm_targets_AArch64?,llvm_targets_AMDGPU?,llvm_targets_ARM?,llvm_targets_BPF?,llvm_targets_Hexagon?,llvm_targets_Mips?,llvm_targets_MSP430?,llvm_targets_NVPTX?,llvm_targets_PowerPC?,llvm_targets_Sparc?,llvm_targets_SystemZ?,llvm_targets_X86?,llvm_targets_XCore?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?], use existing if possible, installing to / from sys-devel/clang-3.9.1-r100:0::gentoo
      * sys-devel/llvm-3.8.1-r2:0::gentoo
        Did not meet !sys-devel/llvm:0, use existing if possible, installing to / (nothing is fine too) from !sys-devel/llvm:0 from sys-devel/llvm-4.0.0:4::gentoo
        Did not meet sys-devel/llvm:0/3.9.1, never using existing, installing to / from target
        Did not meet ~sys-devel/llvm-3.9.1[clang(-),debug=,python?,static-analyzer?,llvm_targets_AArch64?,llvm_targets_AMDGPU?,llvm_targets_ARM?,llvm_targets_BPF?,llvm_targets_Hexagon?,llvm_targets_Mips?,llvm_targets_MSP430?,llvm_targets_NVPTX?,llvm_targets_PowerPC?,llvm_targets_Sparc?,llvm_targets_SystemZ?,llvm_targets_X86?,llvm_targets_XCore?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?], use existing if possible, installing to / from sys-devel/clang-3.9.1-r100:0::gentoo
      * sys-devel/llvm-3.9.0-r1:0::gentoo
        Did not meet !sys-devel/llvm:0, use existing if possible, installing to / (nothing is fine too) from !sys-devel/llvm:0 from sys-devel/llvm-4.0.0:4::gentoo
        Did not meet sys-devel/llvm:0/3.9.1, never using existing, installing to / from target
        Did not meet ~sys-devel/llvm-3.9.1[clang(-),debug=,python?,static-analyzer?,llvm_targets_AArch64?,llvm_targets_AMDGPU?,llvm_targets_ARM?,llvm_targets_BPF?,llvm_targets_Hexagon?,llvm_targets_Mips?,llvm_targets_MSP430?,llvm_targets_NVPTX?,llvm_targets_PowerPC?,llvm_targets_Sparc?,llvm_targets_SystemZ?,llvm_targets_X86?,llvm_targets_XCore?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?], use existing if possible, installing to / from sys-devel/clang-3.9.1-r100:0::gentoo
      * sys-devel/llvm-3.9.1:0::gentoo
        Did not meet !sys-devel/llvm:0, use existing if possible, installing to / (nothing is fine too) from !sys-devel/llvm:0 from sys-devel/llvm-4.0.0:4::gentoo
      * sys-devel/llvm-3.9.1-r1:0::gentoo
        Did not meet !sys-devel/llvm:0, use existing if possible, installing to / (nothing is fine too) from !sys-devel/llvm:0 from sys-devel/llvm-4.0.0:4::gentoo
!   sys-devel/clang
    Reasons: target, !<=sys-devel/clang-3.9.1-r99 from sys-devel/llvm-3.9.1-r1:0::gentoo, !sys-devel/clang:0 from sys-devel/clang-4.0.0:4::gentoo, sys-devel/llvm-3.9.1-r1:0::gentoo
    Unsuitable candidates:
      * sys-devel/clang-3.4.2-r100:0::gentoo
        Masked by keyword
            Keywords ~ppc-macos ~x64-macos ~x86-macos
        Did not meet !<=sys-devel/clang-3.9.1-r99, use existing if possible, installing to / (nothing is fine too) from !<=sys-devel/clang-3.9.1-r99 from sys-devel/llvm-3.9.1-r1:0::gentoo
        Did not meet !sys-devel/clang:0, use existing if possible, installing to / (nothing is fine too) from !sys-devel/clang:0 from sys-devel/clang-4.0.0:4::gentoo
        Did not meet =sys-devel/clang-3.9.1-r100, use existing if possible, installing to / from sys-devel/llvm-3.9.1-r1:0::gentoo
        Did not meet sys-devel/clang:0/3.9.1, never using existing, installing to / from target
      * sys-devel/clang-3.5.2-r100:0::gentoo
        Did not meet !<=sys-devel/clang-3.9.1-r99, use existing if possible, installing to / (nothing is fine too) from !<=sys-devel/clang-3.9.1-r99 from sys-devel/llvm-3.9.1-r1:0::gentoo
        Did not meet !sys-devel/clang:0, use existing if possible, installing to / (nothing is fine too) from !sys-devel/clang:0 from sys-devel/clang-4.0.0:4::gentoo
        Did not meet =sys-devel/clang-3.9.1-r100, use existing if possible, installing to / from sys-devel/llvm-3.9.1-r1:0::gentoo
        Did not meet sys-devel/clang:0/3.9.1, never using existing, installing to / from target
      * sys-devel/clang-3.6.2-r100:0::gentoo
        Did not meet !<=sys-devel/clang-3.9.1-r99, use existing if possible, installing to / (nothing is fine too) from !<=sys-devel/clang-3.9.1-r99 from sys-devel/llvm-3.9.1-r1:0::gentoo
        Did not meet !sys-devel/clang:0, use existing if possible, installing to / (nothing is fine too) from !sys-devel/clang:0 from sys-devel/clang-4.0.0:4::gentoo
        Did not meet =sys-devel/clang-3.9.1-r100, use existing if possible, installing to / from sys-devel/llvm-3.9.1-r1:0::gentoo
        Did not meet sys-devel/clang:0/3.9.1, never using existing, installing to / from target
      * sys-devel/clang-3.7.1-r100:0::gentoo
        Did not meet !<=sys-devel/clang-3.9.1-r99, use existing if possible, installing to / (nothing is fine too) from !<=sys-devel/clang-3.9.1-r99 from sys-devel/llvm-3.9.1-r1:0::gentoo
        Did not meet !sys-devel/clang:0, use existing if possible, installing to / (nothing is fine too) from !sys-devel/clang:0 from sys-devel/clang-4.0.0:4::gentoo
        Did not meet =sys-devel/clang-3.9.1-r100, use existing if possible, installing to / from sys-devel/llvm-3.9.1-r1:0::gentoo
        Did not meet sys-devel/clang:0/3.9.1, never using existing, installing to / from target
      * sys-devel/clang-3.8.1-r100:0::gentoo
        Did not meet !<=sys-devel/clang-3.9.1-r99, use existing if possible, installing to / (nothing is fine too) from !<=sys-devel/clang-3.9.1-r99 from sys-devel/llvm-3.9.1-r1:0::gentoo
        Did not meet !sys-devel/clang:0, use existing if possible, installing to / (nothing is fine too) from !sys-devel/clang:0 from sys-devel/clang-4.0.0:4::gentoo
        Did not meet =sys-devel/clang-3.9.1-r100, use existing if possible, installing to / from sys-devel/llvm-3.9.1-r1:0::gentoo
        Did not meet sys-devel/clang:0/3.9.1, never using existing, installing to / from target
      * sys-devel/clang-3.9.0-r100:0::gentoo
        Did not meet !<=sys-devel/clang-3.9.1-r99, use existing if possible, installing to / (nothing is fine too) from !<=sys-devel/clang-3.9.1-r99 from sys-devel/llvm-3.9.1-r1:0::gentoo
        Did not meet !sys-devel/clang:0, use existing if possible, installing to / (nothing is fine too) from !sys-devel/clang:0 from sys-devel/clang-4.0.0:4::gentoo
        Did not meet =sys-devel/clang-3.9.1-r100, use existing if possible, installing to / from sys-devel/llvm-3.9.1-r1:0::gentoo
        Did not meet sys-devel/clang:0/3.9.1, never using existing, installing to / from target
      * sys-devel/clang-3.9.1-r100:0::gentoo
        Did not meet !sys-devel/clang:0, use existing if possible, installing to / (nothing is fine too) from !sys-devel/clang:0 from sys-devel/clang-4.0.0:4::gentoo

I think the issue is the attempt to block the old non-slotted 3.9.1 is being picked up by paludis as a block of the new 0/3.9.1 slot when it checks rdepends
Comment 5 Jan-Matthias Braun 2017-03-14 15:32:17 UTC
Hi!

I am seeing similar blocks: with emerge -vuDN @world today, I am seeing (excerpt):
Calculating dependencies... done!
[ebuild  N     ] app-vim/llvm-vim-4.0.0::gentoo  20,524 KiB
[ebuild  NS    ] sys-devel/llvm-4.0.0:4::gentoo [3.9.1-r1:0/3.9.1::gentoo] USE="doc gold libedit libffi ncurses -debug {-test}" ABI_X86="32 (64) (-x32)" LLVM_TARGETS="BPF NVPTX (X86) -AArch64 -AMDGPU -ARM -Hexagon -Lanai -MSP430 -Mips -PowerPC -RISCV -Sparc -SystemZ -XCore" 0 KiB
[ebuild  N     ] sys-devel/llvmgold-4::gentoo  0 KiB
[ebuild  N     ] sys-libs/compiler-rt-4.0.0:4.0.0::gentoo  USE="clang {-test}" 1,402 KiB
[ebuild  N     ] sys-libs/compiler-rt-sanitizers-4.0.0:4.0.0::gentoo  USE="{-test}" 0 KiB
[ebuild  NS    ] sys-devel/clang-4.0.0:4::gentoo [3.9.1-r100:0/3.9.1::gentoo] USE="static-analyzer xml -debug -default-compiler-rt -default-libcxx -doc -multitarget {-test}" ABI_X86="(64) -32 (-x32)" LLVM_TARGETS="BPF NVPTX (X86) -AArch64 -AMDGPU -ARM -Hexagon -Lanai -MSP430 -Mips -PowerPC -RISCV -Sparc -SystemZ -XCore" PYTHON_TARGETS="python2_7" 11,215 KiB
[ebuild     U  ] sys-libs/libomp-4.0.0:0/0::gentoo [3.9.1:0/3.9::gentoo] USE="hwloc -ompt {-test%}" ABI_X86="32 (64) (-x32)" 1,993 KiB
[ebuild  NS    ] sys-devel/clang-runtime-4.0.0:4.0.0::gentoo [3.9.1:0::gentoo] USE="compiler-rt openmp sanitize -libcxx" ABI_X86="(64) -32 (-x32)" 0 KiB
[blocks B      ] <sys-devel/llvm-4.0.0_rc:0 ("<sys-devel/llvm-4.0.0_rc:0" is blocking sys-devel/clang-4.0.0)
[blocks B      ] sys-devel/clang:0 ("sys-devel/clang:0" is blocking sys-devel/clang-4.0.0)
[blocks B      ] sys-devel/llvm:0 ("sys-devel/llvm:0" is blocking app-vim/llvm-vim-4.0.0, sys-devel/llvm-4.0.0, sys-devel/llvmgold-4)

e.g., llvm and clang 3.9.1 is installed and blocking llvm 4.0.0.

Workaround:
After
    emerge -Cv llvm clang

a direct reinstall with
    emerge -v1a sys-devel/llvm sys-devel/clang app-vim/llvm-vim sys-devel/llvmgold dev-util/kdevelop app-doc/doxygen media-libs/mesa sys-libs/compiler-rt sys-libs/compiler-rt-sanitizers libomp sys-devel/clang-runtime

is possible.

So, I do not see any way to get a smooth update without manual intervention. Why is it so? I would call this a bug.
Comment 6 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2017-03-14 16:25:47 UTC
(In reply to Jan-Matthias Braun from comment #5)
> So, I do not see any way to get a smooth update without manual intervention.
> Why is it so? I would call this a bug.

Bugs can be fixed if people report them and provide necessary information. If you can reproduce this on a system where you didn't work around it yet, please open a bug and provide the full output, including the detailed conflict report following.
Comment 7 Harris Landgarten 2017-03-16 19:48:49 UTC
There is a definite issue with paludis handling of the old :0 block

If :0/3.9.1 is not installed paludis is happy. I have one problem that pulls in 3.9.1, julia and I have verified it will not build with 4.0.

Once :0/3.9.1 slot is installed, I get errors on llvm:4 clang:4 and llvm-vim:4 with !llvm:0 messages.

Obviously paludis doesn't know that you only want to block the old :0

This is a bug. Either in the ebuild or in paludis.
Comment 8 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2017-03-16 19:51:33 UTC
Please report it in the Paludis bug tracker (if there's not one yet) and try to get some feedback from Paludis devs. If they can't fix it on their end, I'll try to add an additional :0 version that would be co-installable with :4.