From: Andrey Semashev (andrey.semashev_at_[hidden])
Date: 2021-06-03 18:40:33
On 6/3/21 9:30 PM, Peter Dimov via Boost wrote:
> Andrey Semashev wrote:
>> But that would mean one has to specify second order dependencies as well for
>> configure checks.
Ok, so it seems I'll have to add a check to enforce that the unified
headers directory exists. This means that we are still dependent on `b2
headers`, at least until there is a CMake equivalent.
>> I'm not sure I understand. Is it that Cygwin doesn't accept angle brackets with
>> Windows paths?
> The Cygwin compiler just doesn't accept Windows paths, as far as I can see.
> Performing C++ SOURCE FILE Test BOOST_FILESYSTEM_HAS_STAT_ST_BLKSIZE failed with the following output:
> Change Dir: C:/boost-git/develop/__build_gcc/CMakeFiles/CMakeTmp
> Run Build Command(s):C:/cygwin64/bin/make.exe -f Makefile cmTC_8f9df/fast && /usr/bin/make -f CMakeFiles/cmTC_8f9df.dir/build.make CMakeFiles/cmTC_8f9df.dir/build
> make: Entering directory '/cygdrive/c/boost-git/develop/__build_gcc/CMakeFiles/CMakeTmp'
> Building CXX object CMakeFiles/cmTC_8f9df.dir/src.cxx.obj
> C:/cygwin64/bin/c++.exe -DBOOST_FILESYSTEM_HAS_STAT_ST_BLKSIZE @CMakeFiles/cmTC_8f9df.dir/includes_CXX.rsp -o CMakeFiles/cmTC_8f9df.dir/src.cxx.obj -c C:/boost-git/develop/__build_gcc/CMakeFiles/CMakeTmp/src.cxx
> C:/boost-git/develop/__build_gcc/CMakeFiles/CMakeTmp/src.cxx:1:10: fatal error: C:/boost-git/develop/libs/filesystem/config/has_stat_st_blksize.cpp: No such file or directory
> 1 | #include <C:/boost-git/develop/libs/filesystem/config/has_stat_st_blksize.cpp>
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> compilation terminated.
> make: *** [CMakeFiles/cmTC_8f9df.dir/build.make:79: CMakeFiles/cmTC_8f9df.dir/src.cxx.obj] Error 1
> make: Leaving directory '/cygdrive/c/boost-git/develop/__build_gcc/CMakeFiles/CMakeTmp'
> make: *** [Makefile:127: cmTC_8f9df/fast] Error 2
> Source file was:
> #include <C:/boost-git/develop/libs/filesystem/config/has_stat_st_blksize.cpp>
Ok, I think I understand. You're using native Windows CMake that
generates Windows paths and a Cygwin compiler that doesn't understand
them. That looks like an incorrect config to me; you should be using
Cygwin CMake, which should generate Cygwin paths both in source files
and command lines.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk