Hi,

I ran into the same problem now on mac. It turned out that it has nothing
to do with CMake.

I apply some patches to the external projects with "git apply" instead of
"patch". But the EP sources are not in git, and if the superbuild dir is
inside the source dir, git apply recognises that it's inside a working dir
(of the main project) and it does not apply the patch. Strangely, it
returns 0 and does not print any error either, just goes on happily.

So, the include dirs were missing because the patch was not applied to the
EP. (The patch was to set them as a target property.)

Miklos

On Wed, 11 Jul 2018 at 17:22, Miklos Espak <esp...@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
>
>
-- 

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

Reply via email to