Bug 1040801

Summary: Kdevelop 4.6.0 Ninja builder is hardwired to use "ninja" executable and so won't build on fedora
Product: [Fedora] Fedora Reporter: Andrew Stitcher <astitcher>
Component: kdevelopAssignee: Jan Grulich <jgrulich>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: 19CC: jgrulich, kevin, ltinkl, rdieter, rnovacek, smparrish, than
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: kdevelop-4.6.0-2.fc19 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-12-15 03:37:36 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:
Attachments:
Description Flags
Proposed patch to fix problem for fedora
none
Tidied up version of the patch none

Description Andrew Stitcher 2013-12-12 06:49:51 UTC
Created attachment 835631 [details]
Proposed patch to fix problem for fedora

Description of problem:
The new 4.6.0 version of kdevelop has a new builder that can build using Ninja (an alternative to make).

However it is hardwired to use an executable called "ninja" and won't evn load the responsible plugin if it can't find the executable.

Unfortunately on Fedora (and maybe on Debian too) because of a name clash the executable is named "ninja-build"

Version-Release number of selected component (if applicable):

4.6.0

How reproducible:

100%

Steps to Reproduce:
1. Start up kdevelop


Actual results:

1. Note error message on console:
kdevelop(29851)/kdevplatform (shell) KDevelop::PluginController::loadPluginInternal: "Plugin 'Ninja Project Builder' could not be loaded correctly and was disabled.
Reason: ." 
kdevelop(29851) KDevNinjaBuilderPlugin::KDevNinjaBuilderPlugin: Ninja plugin installed but ninja is not installed. 

2. Ninja plugin not in list in help menu.

3. cmake builds using ninja hang

Expected results:

Plugin loaded and ninja builds build.

Additional info:

I've attached a patch which fixes the issue for me, although it's not very flexible as to executable name

Comment 1 Andrew Stitcher 2013-12-12 07:51:33 UTC
Created attachment 835650 [details]
Tidied up version of the patch

Comment 2 Jan Grulich 2013-12-12 09:48:27 UTC
Thanks for the fix. I've talked with upstream and your patch is okay as a quick fix, but they told me it should be configurable like for cmake plugin and you should put it for a review request so it's fixed in upstream (at least for a while).

Comment 3 Fedora Update System 2013-12-12 10:36:48 UTC
kdevelop-4.6.0-2.fc19, kdevelop-php-1.6.0-1.fc19, kdevplatform-1.6.0-1.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/FEDORA-2013-23014/kdevelop-php-1.6.0-1.fc19,kdevelop-4.6.0-2.fc19,kdevplatform-1.6.0-1.fc19

Comment 4 Andrew Stitcher 2013-12-12 18:01:52 UTC
(In reply to Jan Grulich from comment #2)
> Thanks for the fix. I've talked with upstream and your patch is okay as a
> quick fix, but they told me it should be configurable like for cmake plugin
> and you should put it for a review request so it's fixed in upstream (at
> least for a while).

The patch was committed upstream this morning, so I think it's fair to say that upstream thinks the quick fix is good enough for the moment, a more configurable fix would need deeper work in the UI as well.

I will test the fixed package when it makes it into the testing repo.

Comment 5 Fedora Update System 2013-12-13 05:05:19 UTC
Package kdevelop-4.6.0-2.fc19, kdevelop-php-1.6.0-1.fc19, kdevplatform-1.6.0-1.fc19:
* should fix your issue,
* was pushed to the Fedora 19 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing kdevelop-4.6.0-2.fc19 kdevelop-php-1.6.0-1.fc19 kdevplatform-1.6.0-1.fc19'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2013-23014/kdevelop-php-1.6.0-1.fc19,kdevelop-4.6.0-2.fc19,kdevplatform-1.6.0-1.fc19
then log in and leave karma (feedback).

Comment 6 Fedora Update System 2013-12-15 03:37:36 UTC
kdevelop-4.6.0-2.fc19, kdevelop-php-1.6.0-1.fc19, kdevplatform-1.6.0-1.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.