Re: kdesrc-build and include-dependencies

2015-12-23 Thread Michael Pyne
On Wed, December 23, 2015 18:40:36 Aleix Pol wrote:
> Hello,
> I've been testing kde-src-builder on a bare system (actually a docker
> image) and I realized that --include-dependencies isn't doing what I
> expected [1], which is to actually build and install the repository's
> dependencies.
> 
> Can anybody point me out what am I missing? :/

--include-dependencies only works on repositories that kdesrc-build thinks are 
from the kde.org git repositories (i.e. things under projects.kde.org, 
referred to as "kde-projects" modules). Your .kdesrc-buildrc is somewhat 
empty, so all that kdesrc-build understands about "kcompletion" is that it's a 
module seen on the command line, presumably git-based.

Even if kdesrc-build assumed the cmdline module was a kde-projects module, a 
separate issue would prevent --include-dependencies from appearing to work.

If you have a conf file more like the following then you'd probably see more 
success (e.g. my kdesrc-build offers to build 4 modules with your cmdline). 
Note that include-dependencies was migrated into a module-set, though it 
should still work OK as a global setting.

The most important change is adding more modules to the overall build. I 
thought I had implemented --include-dependencies to pull in any kde-projects 
module if needed, but after looking it over tonight it seems it merely pulls 
in any kde-projects module available within the .kdesrc-buildrc -- but if no 
such modules are available then there's not much to pull in.

$ cat .kdesrc-buildrc
global
branch-group kf5-qt5
kdedir ~/kde-5
qtdir /usr
source-dir ~/kdesrc
end global

module-set kf5-and-workspace
# This is a 'magic' repo for kde.org projects
repository kde-projects

 # This specifies what git repos from within that repository to use,
# based on the virtual KDE project hierarchy. Multiple repos can be
# included, inclusion is recursive.
use-modules frameworks workspace

 # And this says to pull any needed kde.org dependencies into this 
# module-set as well
include-dependencies true
end module-set



If you wish to quickly see what kdesrc-build thinks it should do, try

$ kdesrc-build --metadata-only (this updates just the kde-build-metadata, 
needed for remaining steps)

$ kdesrc-build --pretend (shows update/build steps without actually taking 
them)

$ kdesrc-build --pretend --print-modules (Just displays the list of modules to 
build directly, in build order. Indentation is used to show where kdesrc-build 
reordered modules due to kde-build-metadata)

Other useful commands:

$ kdesrc-build --resume-after foo --stop-before bar (builds a subset of the 
build list in same order as normal. --resume-from and --stop-after also work)

$ kdesrc-build --stop-on-failure ... (useful for first-time builds, kdesrc-
build bails out if any module fails to build)

$ kdesrc-build --no-src ... (skip source update, roll straight into build, 
useful if you simply had to fix a local misconfiguration)

$ kdesrc-build --install-only ... (skip source *and* build, install whatever 
the build directory has built already... useful if you want to nuke your 
~/kde-5 and start over without spending a ton of time on source/build updates)


I do apologize for the lack of user-friendlyness but the script, and 
especially its configuration file, predates KDE's usage of SVN, and at this 
point everything seems easy enough from my viewpoint... :-/

I'll be working over the next few days to try to expand out --include-
dependencies to include any possible kde-projects modules (how it was 
originally intended to work), but until then hopefully this help.

Regards,
 - Michael Pyne

>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<


Re: kdesrc-build and include-dependencies

2015-12-23 Thread Johan Ouwerkerk
I don't think kdesrc-build inspects the cmake files to discover deps,
it relies on the project metadata GIT repo instead. So
--include-dependencies only applies to the dependencies discovered
through the project metadata repo, and then only those which
kdesrc-build knows how to build.

Any other dependencies (of which there are *a lot*, e.g. X libs,
graphics libs, sound libs...) require you to break out your package
manager and fetch the development packages. So it's not really like
emerge/portage (or the kde-on-windows clone of that for building KDE
apps on Windows) and rather a lot more like a convenient frontend that
requires either you inspect the cmake files yourself or accept an
initial element of trial and error to discover & install the missing
deps manually.

On Wed, Dec 23, 2015 at 6:51 PM, Ovidiu-Florin BOGDAN
 wrote:
> În ziua de Wednesday 23 December 2015, la 18:40:36, Aleix Pol a scris:
>
>> Hello,
>
>> I've been testing kde-src-builder on a bare system (actually a docker
>
>> image) and I realized that --include-dependencies isn't doing what I
>
>> expected [1], which is to actually build and install the repository's
>
>> dependencies.
>
>>
>
>> Can anybody point me out what am I missing? :/
>
>>
>
>> That's my configuration file, so far: [2].
>
>>
>
>> Thanks in advance!
>
>> Aleix
>
>>
>
>> [1] $ ./kdesrc-build/kdesrc-build --include-dependencies kcompletion
>
>> * There do not seem to be any modules to build in your configuration.
>
>> Updating kde-build-metadata (to branch master)
>
>> * Downloading projects.kde.org project database...
>
>>
>
>> Building kcompletion from guessed_from_cmdline (1/1)
>
>> Updating kcompletion (to branch master)
>
>> No source update, but the last configure failed
>
>> Source update complete for kcompletion: no files affected
>
>> Preparing build system for kcompletion.
>
>> Removing files in build directory for kcompletion
>
>> Old build system cleaned, starting new build system.
>
>> Running cmake...
>
>> Unable to configure kcompletion with CMake!
>
>> Unable to configure kcompletion with KDE
>
>>
>
>> [2] $ cat .kdesrc-buildrc
>
>> global
>
>> branch-group kf5-qt5
>
>> kdedir ~/kde-5
>
>> qtdir /usr
>
>> source-dir ~/kdesrc
>
>> include-dependencies true
>
>> end global
>
>>
>
>> >> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to
>> >> unsubscribe <<
>
>
>
> I have these outside of global. Perhaps they help:
>
>
>
> include src/extragear/utils/kdesrc-build/kf5-applications-build-include
>
> include src/extragear/utils/kdesrc-build/kf5-extragear-build-include
>
> include src/extragear/utils/kdesrc-build/kf5-frameworks-build-include
>
> include src/extragear/utils/kdesrc-build/kf5-qt5-build-include
>
> include src/extragear/utils/kdesrc-build/kf5-kdepim-build-include
>
>
>
> Besides that KSB is a big blur to me. Any doccumentation I've found, it
> seems to me to be obsolete and missleading.
>
>
> --
>
> Ovidiu-Florin Bogdan
>
> GeekAliens.com
>
> Kubuntu Romania Representative
>
> Kubuntu Council Member
>
>
>
>>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe
>>> <<
>

>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<


Re: kdesrc-build and include-dependencies

2015-12-23 Thread Ovidiu-Florin BOGDAN
În ziua de Wednesday 23 December 2015, la 18:40:36, Aleix Pol a scris:
> Hello,
> I've been testing kde-src-builder on a bare system (actually a docker
> image) and I realized that --include-dependencies isn't doing what I
> expected [1], which is to actually build and install the repository's
> dependencies.
>
> Can anybody point me out what am I missing? :/
>
> That's my configuration file, so far: [2].
>
> Thanks in advance!
> Aleix
>
> [1] $ ./kdesrc-build/kdesrc-build --include-dependencies kcompletion
> * There do not seem to be any modules to build in your configuration.
> Updating kde-build-metadata (to branch master)
> * Downloading projects.kde.org project database...
>
> Building kcompletion from guessed_from_cmdline (1/1)
>Updating kcompletion (to branch master)
>No source update, but the last configure failed
>Source update complete for kcompletion: no files affected
>Preparing build system for kcompletion.
>Removing files in build directory for kcompletion
>Old build system cleaned, starting new build system.
>Running cmake...
>Unable to configure kcompletion with CMake!
>Unable to configure kcompletion with KDE
>
> [2] $ cat .kdesrc-buildrc
> global
>branch-group kf5-qt5
>kdedir ~/kde-5
>qtdir /usr
>source-dir ~/kdesrc
>include-dependencies true
> end global
>
> >> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe 
> >> <<

I have these outside of global. Perhaps they help:

include src/extragear/utils/kdesrc-build/kf5-applications-build-include
include src/extragear/utils/kdesrc-build/kf5-extragear-build-include
include src/extragear/utils/kdesrc-build/kf5-frameworks-build-include
include src/extragear/utils/kdesrc-build/kf5-qt5-build-include
include src/extragear/utils/kdesrc-build/kf5-kdepim-build-include

Besides that KSB is a big blur to me. Any doccumentation I've found, it seems 
to me to be obsolete and missleading.


*Ovidiu-Florin Bogdan*
GeekAliens.com[1]
Kubuntu Romania Representative[2]
_Kubuntu Council Member_


[1] http://ovidiu.geekaliens.com
[2] http://kubuntu.org


signature.asc
Description: This is a digitally signed message part.

>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<


kdesrc-build and include-dependencies

2015-12-23 Thread Aleix Pol
Hello,
I've been testing kde-src-builder on a bare system (actually a docker
image) and I realized that --include-dependencies isn't doing what I
expected [1], which is to actually build and install the repository's
dependencies.

Can anybody point me out what am I missing? :/

That's my configuration file, so far: [2].

Thanks in advance!
Aleix

[1] $ ./kdesrc-build/kdesrc-build --include-dependencies kcompletion
* There do not seem to be any modules to build in your configuration.
Updating kde-build-metadata (to branch master)
* Downloading projects.kde.org project database...

Building kcompletion from guessed_from_cmdline (1/1)
   Updating kcompletion (to branch master)
   No source update, but the last configure failed
   Source update complete for kcompletion: no files affected
   Preparing build system for kcompletion.
   Removing files in build directory for kcompletion
   Old build system cleaned, starting new build system.
   Running cmake...
   Unable to configure kcompletion with CMake!
   Unable to configure kcompletion with KDE

[2] $ cat .kdesrc-buildrc
global
   branch-group kf5-qt5
   kdedir ~/kde-5
   qtdir /usr
   source-dir ~/kdesrc
   include-dependencies true
end global

>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<