Summary: | ninja_src_make in cmake-utils.eclass takes all MAKEOPTS and fails for unknown option | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Dmitry Derevyanko <nrndda> |
Component: | Eclasses | Assignee: | Gentoo KDE team <kde> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | chromium, junghans, nikoli, nrndda |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | All | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
emerge --info
build.log emerge --debug gromacs |
Description
Dmitry Derevyanko
2013-11-03 15:31:05 UTC
Created attachment 362490 [details]
emerge --info
Created attachment 362492 [details]
build.log
Created attachment 362494 [details]
emerge --debug gromacs
@kde: While you are touching the eclass, please clean up the indentation in that ninja_src_make function as well. Here's a function based loosely on scons_clean_makeopts from scons.eclass. It discards everything except the -j, -l, and -k options. ninjaopts_from_makeopts() { if [[ ${NINJAOPTS+set} == set ]]; then return 0 fi local ninjaopts=() set -- ${MAKEOPTS} while (( $# )); do case $1 in -j|-l|-k) ninjaopts+=( $1 $2 ) shift 2 ;; -j*|-l*|-k*) ninjaopts+=( $1 ) shift 1 ;; esac done export NINJAOPTS="${ninjaopts[*]}" } (In reply to Mike Gilbert from comment #5) Need to add this to the case statement: *) shift ;; I don't think anyone in KDE uses ninja, so please feel free to commit if it works for you. (In reply to Michael Palimaka (kensington) from comment #7) > I don't think anyone in KDE uses ninja, so please feel free to commit if it > works for you. Ack please apply it if its working, nobody in KDE uses ninja. (In reply to Johannes Huber from comment #8) > (In reply to Michael Palimaka (kensington) from comment #7) > > I don't think anyone in KDE uses ninja, so please feel free to commit if it > > works for you. > > Ack please apply it if its working, nobody in KDE uses ninja. I originally added ninja support in cmake-utils for gromacs. Changes look good to me! Looking at ninja --help: -j N run N jobs in parallel [default=6, derived from CPUs available] So -j is actually unnecessary as the default is already quite reasonable. Thanks for weighing in. ^_^ I will try to get this committed this weekend if nobody beats me to it. + 25 Jan 2014; Mike Gilbert <floppym@gentoo.org> cmake-utils.eclass: + Improve support for ninja, bug 490280. + |