CMake + mdvc + --build + jenkins

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

CMake + mdvc + --build + jenkins

Michael Ellery
I know this is a long-shot, but I’m wondering if anyone has encountered this scenario:

CMake (3.10) being used to generate a project for Visual Studio 15 (the current latest)

the build is running on a windows machine under a jenkins slave process

The generation step runs fine

I then run cmake in build mode, and the build basically completes (based on the fact that I see the executable produced).  BUT the child MSBuild processes never exit and thus the build is stuck (cmake is still waiting…)

I’ve tried running the jenkins slave process in a console window (foreground) just to eliminate any service/service account issues, but it makes no difference.

More important, if I instead invoke MSBuild directly rather than use “cmake —build . ……”, the process behaves fine and runs to completion.

This experiment makes me think something is odd about how cmake spawns the MSBuild process - perhaps some child event or signal is not being handled?

In any event, I’m not blocked by this since I can simply run MSBUILD directly in the build script, but I wondered if this is a known issue or if others have encountered it.

Also, I’ll note that I’m passing /nr:false to msbuild in both cases because that is common recommendation for running msbuild under CI.

-Mike


--

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

signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: CMake + mdvc + --build + jenkins

J. Caleb Wherry
(forgot to reply all)

I have a pretty similar setup but do not use the cmake --build since I selectively build projects based the jenkins build type (CI, nightly, research ,etc).

I'll see if I can kick off a test and use the --build option, I've thought about doing that in the past but never tested. Will let you know if I see a similar issue as you are seeing.

FWIW, I also set /nr:false so our setups are pretty close. I also build Java and .NET wrappers in the same solution and sometimes have issues with the .NET processes not ending when a build is done. I haven't investigated those thoroughly though. So it is very possible something is screwed up somewhere on either side.

-Caleb


On Thu, Feb 1, 2018 at 1:49 PM, Michael Ellery <[hidden email]> wrote:
I know this is a long-shot, but I’m wondering if anyone has encountered this scenario:

CMake (3.10) being used to generate a project for Visual Studio 15 (the current latest)

the build is running on a windows machine under a jenkins slave process

The generation step runs fine

I then run cmake in build mode, and the build basically completes (based on the fact that I see the executable produced).  BUT the child MSBuild processes never exit and thus the build is stuck (cmake is still waiting…)

I’ve tried running the jenkins slave process in a console window (foreground) just to eliminate any service/service account issues, but it makes no difference.

More important, if I instead invoke MSBuild directly rather than use “cmake —build . ……”, the process behaves fine and runs to completion.

This experiment makes me think something is odd about how cmake spawns the MSBuild process - perhaps some child event or signal is not being handled?

In any event, I’m not blocked by this since I can simply run MSBUILD directly in the build script, but I wondered if this is a known issue or if others have encountered it.

Also, I’ll note that I’m passing /nr:false to msbuild in both cases because that is common recommendation for running msbuild under CI.

-Mike


--

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




--
J. Caleb Wherry
Scientific Software Engineer

--

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