Bug 288378 - Build system determination still pending when build attempted. at ./kdesrc-build/kdesrc-build line 2649
Summary: Build system determination still pending when build attempted. at ./kdesrc-bu...
Status: RESOLVED FIXED
Alias: None
Product: kdesrc-build
Classification: Developer tools
Component: general (show other bugs)
Version: Git
Platform: Debian unstable Linux
: NOR crash
Target Milestone: ---
Assignee: Michael Pyne
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-12-07 03:01 UTC by Fred Jackson
Modified: 2011-12-23 04:18 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Fred Jackson 2011-12-07 03:01:31 UTC
Version:           git (using Devel) 
OS:                Linux

crashes with the listed errors on module kdev-www when doing a full build. I notice that kdev-www doesn't have a Makefile or any indication of a build system.

Reproducible: Always

Steps to Reproduce:
just rerun 'kdesrc-build'. Interesting enough, this error didn't occur the first or possibly the second/third full build but only occurred after I'd ran kdesrc-build at least a couple times. After that, the error is 100% repeatable.


Actual Results:  
Building kdev-www (96/97)
        Waiting for source code update.
        No source update, but kdev-www meets other building criteria.
        Source update complete for kdev-www: no files affected
Build system determination still pending when build attempted. at ./kdesrc-build/kdesrc-build line 2649
        Module::build('Module=HASH(0x9a7edb0)') called at ./kdesrc-build/kdesrc-build line 6904
        main::handle_build('PipeIPC=HASH(0x9a7e9b4)', 'ksb::BuildContext=HASH(0x980b6c8)') called at ./kdesrc-build/kdesrc-build line 7478
        main::handle_async_build('PipeIPC=HASH(0x9a7e9b4)', 'ksb::BuildContext=HASH(0x980b6c8)') called at ./kdesrc-build/kdesrc-build line 7760
        eval {...} called at ./kdesrc-build/kdesrc-build line 7598
Internal error: 1
        Can't continue, so stopping now.


Expected Results:  
A module without any kind of a build system should produce an appropriate error message.
Comment 1 Michael Pyne 2011-12-08 01:10:30 UTC
Well, if kdev-www has no build system then it really shouldn't be getting built. Is kdesrc-build checking this out because you maintain the kdevelop website, or just because it is included with the kdevelop git modules?

In the meantime you can set the manual-build option to true for the kdev-www module by placing this at the end of your ~/.kdesrc-buildrc:

module kdev-www
  manual-build true
end module
Comment 2 Fred Jackson 2011-12-08 03:50:46 UTC
kdesrc-build is including this module in it's build list automatically. Adding:
module kdev-www
        manual-update true
        manual-build true
end module
to the end of .kdesrc-buildrc has no effect. I get the same error messages.
Comment 3 Michael Pyne 2011-12-09 23:18:49 UTC
OK, I'll work with KDevelop devs to figure out the best way to keep kdev-www from being processed by automated scripts. In the meantime manual-build not working is a bug so I will clone this one for that bug...
Comment 4 David Faure 2011-12-22 10:45:34 UTC
Got the same internal error for kdev-www with kdesrc-build today.

My config simply says
module-set
    use-modules kdevelop
    repository kde-projects
end module-set

Somehow kdesrc-build should exclude kdev-www from building, or there should be a dummy CMakeLists.txt there...
At least kdesrc-build should say "no build system found" rather than "internal error, please report a bug".
Comment 5 Michael Pyne 2011-12-23 00:28:10 UTC
Git commit fbcd923616974b63c8acb688d3697a7f8e8b0b70 by Michael Pyne.
Committed on 23/12/2011 at 01:25.
Pushed by mpyne into branch 'master'.

Convert build system assert to an error.

This is kind of a workaround for the "kdev-www is in the default
kdevelop build but doesn't have a build system fiasco". This really
needs support from the build software repository to be fixed finally,
and that requires me to design and actually implement such support. :(

CCBUG:288378

M  +2    -1    kdesrc-build

http://commits.kde.org/kdesrc-build/fbcd923616974b63c8acb688d3697a7f8e8b0b70
Comment 6 Michael Pyne 2011-12-23 03:14:33 UTC
Git commit 1aa9a81ec198462ee3687b885f5ac406845adbef by Michael Pyne.
Committed on 23/12/2011 at 04:11.
Pushed by mpyne into branch 'master'.

Auto-import kde-build-metadata when using kde-projects.

At some point this will mean ignoring modules that are active but which
we shouldn't do anything with, and maybe even real dependency resolution
someday.

Note that despite the comment, forcing kde-build-metadata to only be in
the build phase doesn't seem to work yet.

CCBUG:288378

M  +23   -1    kdesrc-build

http://commits.kde.org/kdesrc-build/1aa9a81ec198462ee3687b885f5ac406845adbef
Comment 7 Michael Pyne 2011-12-23 04:18:14 UTC
Git commit bd17b5c7e92040e63268e9cf2d1580f7b2e32616 by Michael Pyne.
Committed on 23/12/2011 at 05:15.
Pushed by mpyne into branch 'master'.

Support kde-build-metadata ignore info.

This unfortunately isn't really the best way to do it (in retrospect
this should be handled in ensure_projects_xml_present since we want the
metadata whenever we'd be downloading the XML anyways). Plus it really
probably isn't necessary to subclass KDEProjectUpdate.

However, the perfect is the enemy of the good and this seems to be
working for me now and I will be away on holidays for a week or so, so
best to get it in now, imperfect as it is.

Let me know if this doesn't work, also keep in mind the
'kde-build-metadata' repo is open for business if there's other modules
that should be ignored! ;)

BUG:288378

M  +60   -4    kdesrc-build

http://commits.kde.org/kdesrc-build/bd17b5c7e92040e63268e9cf2d1580f7b2e32616