[prev in list] [next in list] [prev in thread] [next in thread] 

List:       cmake
Subject:    Re: [CMake] Detailed graphviz graph?
From:       Eric Noulard <eric.noulard () gmail ! com>
Date:       2018-10-07 9:47:41
Message-ID: CAPASGLo=C9Kq8UotkDWsHb1E1SDUFN_uHwVWmudBwXrUVgsexg () mail ! gmail ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


Le sam. 6 oct. 2018 à 18:15, Jan Wielemaker <jan@swi-prolog.org> a écrit :

> On 03/10/18 09:53, Eric Noulard wrote:
> >
> > Are those three add_custom_xxx in the same directory?
> > DEPENDS for custom_xxx do not cross directory.
>
> So this was not the problem. The problem was that on the Mac I had build
> the system before using the autoconf/make suite, which had created
> `swipl.prc` in the source tree. Now, this is the second time I've been
> fooled by this:
>

Good to know you've found the issue.


> If a custom command has a DEPENDS, this points at the
> CMAKE_CURRENT_SOURCE_DIR if the file exists there and at the
> CMAKE_CURRENT_BINARY_DIR otherwise.  This makes sense, but
> easily leads to things that are hard to figure out ...
>

I've already been bitten by that kind of issue.
Now when I want to be "extra-sure" of my source/build tree state I:

- remove the build tree completely
- use the VCS at hand to clean the source tree, e.g. with git
  git -fdx being in the root source dir should remove all non versioned
files (or directories) including ignore ones.
(there are more interesting feature to git-clean:
https://git-scm.com/docs/git-clean)

Then you can be sure to have a "clean" starting point.
Alternatively checking out the project in a separate place works as well.

Thanks. In particular for pointing at Ninja's tools for figuring out
> dependencies.
>

You are welcome.

-- 
Eric

[Attachment #5 (text/html)]

<div dir="ltr"><div dir="ltr"><div class="gmail_quote"><div dir="ltr">Le  sam. 6 oct. \
2018 Ã   18:15, Jan Wielemaker &lt;<a \
href="mailto:jan@swi-prolog.org">jan@swi-prolog.org</a>&gt; a écrit  \
:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px \
0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 03/10/18 09:53, \
Eric Noulard wrote:<br> &gt;<br>
&gt; Are those three add_custom_xxx in the same directory?<br>
&gt; DEPENDS for custom_xxx do not cross directory.<br>
<br>
So this was not the problem. The problem was that on the Mac I had build<br>
the system before using the autoconf/make suite, which had created<br>
`swipl.prc` in the source tree. Now, this is the second time I&#39;ve been<br>
fooled by this:<br></blockquote><div><br></div><div>Good to know you&#39;ve found the \
issue.</div><div>  </div><blockquote class="gmail_quote" style="margin:0px 0px 0px \
0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"> If a custom command \
has a DEPENDS, this points at the<br> CMAKE_CURRENT_SOURCE_DIR if the file exists \
there and at the<br> CMAKE_CURRENT_BINARY_DIR otherwise.   This makes sense, but<br>
easily leads to things that are hard to figure out \
...<br></blockquote><div><br></div><div>I&#39;ve already been bitten by that kind of \
issue.</div><div>Now when I want to be &quot;extra-sure&quot; of my source/build tree \
state I:</div><div><br></div><div>- remove the build tree completely</div><div>- use \
the VCS at hand to clean the source tree, e.g. with git</div><div>   git -fdx being \
in the root source dir should remove all non versioned files (or directories) \
including ignore ones.</div><div>(there are more interesting feature to git-clean:  \
<a href="https://git-scm.com/docs/git-clean">https://git-scm.com/docs/git-clean</a>)</div><div><br></div><div>Then \
you can be sure to have a &quot;clean&quot; starting point.</div><div>Alternatively \
checking out the project in a separate place works as \
well.</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px \
0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"> Thanks. In particular \
for pointing at Ninja&#39;s tools for figuring out<br> \
dependencies.<br></blockquote><div><br></div><div>You are welcome.</div><div>  \
</div></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div \
dir="ltr"><div>Eric<br></div></div></div></div></div></div></div>



-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: \
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more information \
on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at \
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
https://cmake.org/mailman/listinfo/cmake



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic