* Cmake build system and build directories
@ 2013-11-25 22:22 Andreas Enge
2013-11-25 22:41 ` Ludovic Courtès
0 siblings, 1 reply; 6+ messages in thread
From: Andreas Enge @ 2013-11-25 22:22 UTC (permalink / raw)
To: guix-devel
Hello,
my kdelibs package currently fails with the following message:
CMake Error at cmake/modules/MacroEnsureOutOfSourceBuild.cmake:17 (MESSAGE):
kdelibs requires an out of source build. Please create a separate build
directory and run 'cmake path_to_kdelibs [options]' there.
Call Stack (most recent call first):
CMakeLists.txt:157 (macro_ensure_out_of_source_build)
I think it is simply a matter of replacing in
cmake-build-system.scm (configure)
the call to
cmake
by
mkdir build
cd build
cmake ..
(appropriately guilified).
What do you think, if this is a solution, should we maybe globally modify
the cmake build system to always build in a separate directory?
Andreas
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Cmake build system and build directories
2013-11-25 22:22 Cmake build system and build directories Andreas Enge
@ 2013-11-25 22:41 ` Ludovic Courtès
2013-11-26 7:50 ` Andreas Enge
0 siblings, 1 reply; 6+ messages in thread
From: Ludovic Courtès @ 2013-11-25 22:41 UTC (permalink / raw)
To: Andreas Enge; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 595 bytes --]
Andreas Enge <andreas@enge.fr> skribis:
> CMake Error at cmake/modules/MacroEnsureOutOfSourceBuild.cmake:17 (MESSAGE):
> kdelibs requires an out of source build. Please create a separate build
> directory and run 'cmake path_to_kdelibs [options]' there.
> Call Stack (most recent call first):
> CMakeLists.txt:157 (macro_ensure_out_of_source_build)
>
> I think it is simply a matter of replacing in
> cmake-build-system.scm (configure)
> the call to
> cmake
> by
> mkdir build
> cd build
> cmake ..
> (appropriately guilified).
I suspect this one-byte change is enough:
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: Type: text/x-patch, Size: 539 bytes --]
diff --git a/guix/build-system/cmake.scm b/guix/build-system/cmake.scm
index e09f165..1a5f4b6 100644
--- a/guix/build-system/cmake.scm
+++ b/guix/build-system/cmake.scm
@@ -48,7 +48,7 @@
(search-paths '())
(make-flags ''())
(cmake (default-cmake))
- (out-of-source? #f)
+ (out-of-source? #t)
(tests? #t)
(test-target "test")
(parallel-build? #t) (parallel-tests? #f)
[-- Attachment #3: Type: text/plain, Size: 177 bytes --]
Can you confirm?
It will cause some rebuild, but it’s probably the right thing since my
understanding is that out-of-source builds are the norm with CMake.
Ludo’.
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: Cmake build system and build directories
2013-11-25 22:41 ` Ludovic Courtès
@ 2013-11-26 7:50 ` Andreas Enge
2013-11-26 15:11 ` Ludovic Courtès
0 siblings, 1 reply; 6+ messages in thread
From: Andreas Enge @ 2013-11-26 7:50 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: guix-devel
On Mon, Nov 25, 2013 at 11:41:04PM +0100, Ludovic Courtès wrote:
> I suspect this one-byte change is enough:
> - (out-of-source? #f)
> + (out-of-source? #t)
No, because the configure in cmake-build-system does not call that of
gnu-build-system; so this variable is not used. We would still have to
modify cmake-build-system.
Andreas
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Cmake build system and build directories
2013-11-26 7:50 ` Andreas Enge
@ 2013-11-26 15:11 ` Ludovic Courtès
2013-11-27 23:16 ` Ludovic Courtès
0 siblings, 1 reply; 6+ messages in thread
From: Ludovic Courtès @ 2013-11-26 15:11 UTC (permalink / raw)
To: Andreas Enge; +Cc: guix-devel
Andreas Enge <andreas@enge.fr> skribis:
> On Mon, Nov 25, 2013 at 11:41:04PM +0100, Ludovic Courtès wrote:
>> I suspect this one-byte change is enough:
>> - (out-of-source? #f)
>> + (out-of-source? #t)
>
> No, because the configure in cmake-build-system does not call that of
> gnu-build-system; so this variable is not used. We would still have to
> modify cmake-build-system.
Ah right. I think we should copy what gnu-build-system.scm does in its
‘configure’ procedure.
Ludo’.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Cmake build system and build directories
2013-11-26 15:11 ` Ludovic Courtès
@ 2013-11-27 23:16 ` Ludovic Courtès
2013-11-27 23:40 ` Andreas Enge
0 siblings, 1 reply; 6+ messages in thread
From: Ludovic Courtès @ 2013-11-27 23:16 UTC (permalink / raw)
To: Andreas Enge; +Cc: guix-devel
ludo@gnu.org (Ludovic Courtès) skribis:
> Andreas Enge <andreas@enge.fr> skribis:
>
>> On Mon, Nov 25, 2013 at 11:41:04PM +0100, Ludovic Courtès wrote:
>>> I suspect this one-byte change is enough:
>>> - (out-of-source? #f)
>>> + (out-of-source? #t)
>>
>> No, because the configure in cmake-build-system does not call that of
>> gnu-build-system; so this variable is not used. We would still have to
>> modify cmake-build-system.
>
> Ah right. I think we should copy what gnu-build-system.scm does in its
> ‘configure’ procedure.
Commit 977f03f does exactly that. Let me know how it works for you.
Ludo’.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Cmake build system and build directories
2013-11-27 23:16 ` Ludovic Courtès
@ 2013-11-27 23:40 ` Andreas Enge
0 siblings, 0 replies; 6+ messages in thread
From: Andreas Enge @ 2013-11-27 23:40 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: guix-devel
On Thu, Nov 28, 2013 at 12:16:36AM +0100, Ludovic Courtès wrote:
> Commit 977f03f does exactly that. Let me know how it works for you.
It seems to work insofar as kdelibs fails differently now ;-)
Thanks!
Andreas
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2013-11-27 23:41 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-11-25 22:22 Cmake build system and build directories Andreas Enge
2013-11-25 22:41 ` Ludovic Courtès
2013-11-26 7:50 ` Andreas Enge
2013-11-26 15:11 ` Ludovic Courtès
2013-11-27 23:16 ` Ludovic Courtès
2013-11-27 23:40 ` Andreas Enge
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.