[CMake] include dirs from EPs not added to project for in-source builds on windows

Miklos Espak espakm at gmail.com
Wed Jul 11 13:33:36 EDT 2018


G

On Wed, 11 Jul 2018 at 17:22, Miklos Espak <espakm at gmail.com> wrote:

> Hi,
>
> I have a "superbuild" project which builds two external projects (EP) and
> then my actual project. It builds fine on linux and mac. On windows,
> however, the build fails if the build directory is *inside* the source
> folder.
>
> Let's say e.g. that the sources are in "c:/src/myproject". If the build is
> in "c:/src/myproject-build", it succeeds, but if it is in
> "c:/src/myproject/build", it fails. (It took me a while until I discovered
> the connection between the failures and the build dir path.)
>
> With the build dir inside the source dir, I get compilation error because
> header files are not found. In fact, if I open the "*.vcxproj" file of the
> same target in the two types of builds, the
> "<AdditionalIncludeDirectories>" elements are different. The include dirs
> of the EPs are missing from it in the "in-source" build and they are there
> in the "out-source" build.
>
> This is how far I got with my debugging, and I'm not sure how to go on.
>
> Unfortunately, I'd need to keep the build folder inside the sources
> because the GitLab CI runners assume this.
>
> Any help would be much appreciated.
>
> I used CMake 3.11.4 and 3.12.0RC3.
>
> Kind regards,
> Miklos
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://cmake.org/pipermail/cmake/attachments/20180711/d15d3f22/attachment.html>


More information about the CMake mailing list