Bug 1635750

Summary: eclipse-cdt-llvm is not auto-installed for lldb
Product: [Fedora] Fedora Reporter: Jan Kratochvil <jan.kratochvil>
Component: eclipse-cdtAssignee: Jeff Johnston <jjohnstn>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 28CC: akurtako, jan.kratochvil, jjohnstn, mat.booth, rgrunber, TicoTimo
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: eclipse-cdt-9.5.3-3.fc29 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-10-09 00:05:42 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
no dialog - after: dnf install eclipse-cdt
none
upstream extension installation into Fedora LLDB - showing it is missing in Fedora
none
dialog available after upstream extension installation into Fedora eclipse-cdt
none
Testing packages a b c (b is the interface between a and c) none

Description Jan Kratochvil 2018-10-03 15:21:26 UTC
Description of problem:
Fedora ships both eclipse-cdt.rpm and lldb.rpm but their interoperability is missing there.

Version-Release number of selected component (if applicable):
FAIL: eclipse-cdt-9.4.3-1.fc28.x86_64

How reproducible:
Always.

Steps to Reproduce:
Run Eclipse, try to debug using lldb.

Actual results:
There is no dialog "Using ... Process Launcher - Select other...".

Expected results:
There is dialog "Using ... Process Launcher - Select other...".

Additional info:
Following the guide:
  https://wiki.eclipse.org/CDT/User/FAQ#How_do_I_install_the_LLDB_debugger_integration.3F

Comment 1 Jan Kratochvil 2018-10-03 15:22:44 UTC
Created attachment 1490129 [details]
no dialog - after: dnf install eclipse-cdt

Comment 2 Jan Kratochvil 2018-10-03 15:23:37 UTC
Created attachment 1490130 [details]
upstream extension installation into Fedora LLDB - showing it is missing in Fedora

Comment 3 Jan Kratochvil 2018-10-03 15:24:39 UTC
Created attachment 1490131 [details]
dialog available after upstream extension installation into Fedora eclipse-cdt

Comment 4 Mat Booth 2018-10-03 15:41:26 UTC
Do you have the "eclipse-cdt-llvm" package installed?

Comment 5 Jan Kratochvil 2018-10-03 16:01:28 UTC
OK, that one works, thanks.

Now how to make some Requires/Suggests rpm dependency so that anytime eclipse-cdt or lldb gets installed dnf will install also eclipse-cdt-llvm?

Comment 6 Mat Booth 2018-10-03 16:32:47 UTC
Maybe eclipse-cdt could express a "Recommends" dep on eclipse-cdt-llvm (and maybe also eclipse-cdt-qt) to allow minimal installations to still work, but you would get a more feature rich installation by default.

Comment 7 Jan Kratochvil 2018-10-03 19:35:30 UTC
I have found it in: http://rpm.org/user_doc/boolean_dependencies.html

==> eclipse-cdt.spec <==
Recommends: (eclipse-cdt-llvm if lldb)
==> lldb.spec <==
Recommends: (eclipse-cdt-llvm if eclipse-cdt)
==> eclipse-cdt-llvm.spec <==
Requires: eclipse-cdt lldb

I did not examine eclipse-cdt-qt.

Comment 8 Mat Booth 2018-10-04 10:25:33 UTC
As far as dnf is concerned, "Recommends: (eclipse-cdt-llvm if lldb)" is functionally equivalent to "Recommends: eclipse-cdt-llvm" -- at least on F29 where I am testing.

To get dnf to ignore recommendations, one must invoke dnf like this:

$ dnf --setopt=install_weak_deps=False install eclipse-cdt

It makes no difference whether lldb is installed or not -- dnf seems not to have comprehension of such boolean deps.

And I'm not in favour of making the spec more complex than it needs to be, so for now I will keep the spec file simple and just add "Recommends: eclipse-cdt-llvm" directives.

Comment 9 Jan Kratochvil 2018-10-04 12:51:01 UTC
Created attachment 1490515 [details]
Testing packages a b c (b is the interface between a and c)

(In reply to Mat Booth from comment #8)
> As far as dnf is concerned, "Recommends: (eclipse-cdt-llvm if lldb)" is
> functionally equivalent to "Recommends: eclipse-cdt-llvm" -- at least on F29
> where I am testing.

Both on F-28 and F-29 it works for me.


> To get dnf to ignore recommendations, one must invoke dnf like this:
> 
> $ dnf --setopt=install_weak_deps=False install eclipse-cdt

Yes but I do not see why to do that.  I was considering to have there also "Requires:" instead of "Recommends".  It is setup that way in mock (and I expect Koji/Brew).


> It makes no difference whether lldb is installed or not -- dnf seems not to
> have comprehension of such boolean deps.

On F-29 x86_64 it works for me:
dnf install a: a is installed
dnf install c: c and b is installed
dnf remove a: a and b is removed
dnf install a: a and b is installed


> And I'm not in favour of making the spec more complex than it needs to be,
> so for now I will keep the spec file simple and just add "Recommends:
> eclipse-cdt-llvm" directives.

Sure that is also fine with me.

Comment 10 Fedora Update System 2018-10-05 09:15:17 UTC
eclipse-cdt-9.5.3-3.fc29 has been submitted as an update to Fedora 29. https://bodhi.fedoraproject.org/updates/FEDORA-2018-71570bf09f

Comment 11 Fedora Update System 2018-10-05 18:24:05 UTC
eclipse-cdt-9.5.3-3.fc29 has been pushed to the Fedora 29 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-71570bf09f

Comment 12 Fedora Update System 2018-10-09 00:05:42 UTC
eclipse-cdt-9.5.3-3.fc29 has been pushed to the Fedora 29 stable repository. If problems still persist, please make note of it in this bug report.