CMake + MSYS broken on ToT ?


I’ve got the impression that the CMake + MSYS combination no longer works on ToT (r128013)… though it could, obviously, be my own broken environment.

My llvm repository is in: /d/llvm
And my build folder is: /d/llvm-cmake

I have invoked CMake like so
$ cmake …/llvm -G"MSYS Makefiles"

And I have then tried to build using
$ make
[ 0%] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/CommandLine.cpp.obj
Cannot create temporary file in d:\llvm-cmake\lib\Support\c\DOCUME~1\MyPC\LOCALS~1\Temp: No such file or directory

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application’s support team for more information.
make[2]: *** [lib/Support/CMakeFiles/LLVMSupport.dir/CommandLine.cpp.obj] Error 3
make[1]: *** [lib/Support/CMakeFiles/LLVMSupport.dir/all] Error 2
make: *** [all] Error 2

From what I can see, mount has some hardcoded paths on mingw/msys:
$ mount | grep Temp
C:\DOCUME~1\MyPC\LOCALS~1\Temp on /tmp type user (binmode,noumount)

$ env | grep TEMP

$ echo $TEMP

Msys does not seem capable to correctly “deduce” the path here, I have tried modifying the “mount” configuration, but it seems builtin (nothing in /etc/fstab) and I cannot seem to be able to actually modify this

Have there been recent changes to the CMake scripts that could explain this ? Or has my environment suddenly ceased to work ?

I’d appreciate any pointer…


Matthieu Monrocq
<> writes:


Cannot create temporary file in
d:\llvm-cmake\lib\Support\c\DOCUME~1\MyPC\LOCALS~1\Temp\: No such file or


$ echo $TEMP

That is wrong. It should be /c/... Without the leading slahs it is a
relative path.