[CMake] Concurrent TryCompiles with Visual Studio 11 fail

Alistair Low alistair.low at gmail.com
Wed Feb 20 13:58:37 EST 2013


Hi,

I've noticed a problem in running CMake concurrently, targeting Visual 
Studio 11 solution files (also reproduced with Visual Studio 10). The 
use case is a Jenkins job building LLVM, and this kicks off child jobs 
to build in Debug and Release mode, at the same time but in different paths.

CMake 2.8.10.2 is called from a bash script running under Cygwin:

"cmake '-DLLVM_TARGETS_TO_BUILD:STRING=X86;QPU' 
'-DLLVM_LIT_ARGS:STRING=-v --no-progress-bar' 
-DLLVM_LIT_TOOLS_DIR:STRING=C:/llvm_gnuwin32/bin ../ThirdParty/llvm
-- Building for: Visual Studio 11
-- The C compiler identification is unknown
-- The CXX compiler identification is MSVC 17.0.51106.1
-- Check for working CXX compiler using: Visual Studio 11
-- Check for working CXX compiler using: Visual Studio 11 -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Looking for argz.h
CMake Error at C:/Program Files (x86)/CMake 
2.8/share/cmake-2.8/Modules/CMakeCInformation.cmake:37 
(get_filename_component):
   get_filename_component called with incorrect number of arguments
Call Stack (most recent call first):
   CMakeLists.txt:3 (PROJECT)


CMake Error: Internal CMake error, TryCompile configure of cmake failed
-- Looking for argz.h - not found
..."

If the child jobs are started at different times, each builds correctly. 
Has anyone run into this issue before, and is there a workaround other 
than stopping the jobs running concurrently? I haven't had the chance to 
debug further and see if this is a CMake or Visual Studio error.

Thanks,
Alistair


More information about the CMake mailing list