CMake issueshttps://gitlab.kitware.com/cmake/cmake/-/issues2017-05-04T16:24:37-04:00https://gitlab.kitware.com/cmake/cmake/-/issues/16346cmake 3.7.0-rc1 can't configure with c++_static project using Android NDK r1...2017-05-04T16:24:37-04:00David Netocmake 3.7.0-rc1 can't configure with c++_static project using Android NDK r13 release candidateI can't configure a project with cmake 3.7.0-rc1 using CMAKE_ANDROID_STL_TYPE=c++_static
The NDK has rearranged its libc++ sources since r12b.
You can find the NDK r13 release candidates at https://partner.android.com/build?pli=1#p:id...I can't configure a project with cmake 3.7.0-rc1 using CMAKE_ANDROID_STL_TYPE=c++_static
The NDK has rearranged its libc++ sources since r12b.
You can find the NDK r13 release candidates at https://partner.android.com/build?pli=1#p:id=buildlist&a=100621237&h=YnJhbmNoPWFvc3AtbmRrLXIxMy1yZWxlYXNlJnByb2R1Y3Q9bGludXg
I used Android NDK r13 build 3316327
Example:
```
cmake -G Ninja -DCMAKE_SYSTEM_NAME=Android \
-DCMAKE_ANDROID_ARCH_ABI=arm64-v8a \
-DCMAKE_ANDROID_NDK=$HOME/android-ndk-r13 \
-DCMAKE_ANDROID_STL_TYPE=c++_static \
../SPIRV-Headers
```
I get this result:
```
-- Android: Targeting API '24' with architecture 'arm64', ABI 'arm64-v8a', and processor 'aarch64'
-- Android: Selected GCC toolchain 'aarch64-linux-android-4.9'
-- The C compiler identification is GNU 4.9.0
-- The CXX compiler identification is GNU 4.9.0
-- Check for working C compiler: /local/android-ndk-r13/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-gcc
-- Check for working C compiler: /local/android-ndk-r13/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
CMake Error at /local/cmake-3.7.0-rc1/share/cmake-3.7/Modules/Platform/Android-Common.cmake:54 (message):
Android: STL 'c++_static' include directory not found:
/local/android-ndk-r13/sources/cxx-stl/llvm-libc++/libcxx/include
Call Stack (most recent call first):
/local/cmake-3.7.0-rc1/share/cmake-3.7/Modules/Platform/Android/ndk-stl-c++.cmake:6 (__android_stl_inc)
/local/cmake-3.7.0-rc1/share/cmake-3.7/Modules/Platform/Android/ndk-stl-c++_static.cmake:3 (__android_stl_cxx)
/local/cmake-3.7.0-rc1/share/cmake-3.7/Modules/Platform/Android-Common.cmake:146 (__android_stl)
/local/cmake-3.7.0-rc1/share/cmake-3.7/Modules/Platform/Android-GNU.cmake:32 (__android_compiler_common)
/local/cmake-3.7.0-rc1/share/cmake-3.7/Modules/Platform/Android-GNU-CXX.cmake:2 (__android_compiler_gnu)
/local/cmake-3.7.0-rc1/share/cmake-3.7/Modules/CMakeCXXInformation.cmake:48 (include)
CMakeLists.txt:32 (project)
-- Configuring incomplete, errors occurred!
```
I think the problem shows up when configuring any project. I used https://github.com/KhronosGroup/SPIRV-Headers in my test case because it's small and simple.3.7.0Brad KingBrad Kinghttps://gitlab.kitware.com/cmake/cmake/-/issues/16331FindCxxTest runs incorrect python executable2018-02-20T16:28:55-05:00Orion PoplawskiFindCxxTest runs incorrect python executableOn Fedora 24+, cxxtestgen is a python3 executable with a #!/usr/bin/python3 shbang. However, FindCxxTest calls it with /usr/bin/python, which fails. See http://public.kitware.com/pipermail/cmake/2016-August/064027.html for more.
There...On Fedora 24+, cxxtestgen is a python3 executable with a #!/usr/bin/python3 shbang. However, FindCxxTest calls it with /usr/bin/python, which fails. See http://public.kitware.com/pipermail/cmake/2016-August/064027.html for more.
There is no need to call with python explicitly on Linux/Unix. Not sure what the situation on Windows is.3.7.0Brad KingBrad Kinghttps://gitlab.kitware.com/cmake/cmake/-/issues/16326With Xcode 8 CMake cannot detect Swift compiler2017-06-27T14:59:10-04:00Gregor JasnyWith Xcode 8 CMake cannot detect Swift compilerI get the following error:
```
Compiling the Swift compiler identification source file "CompilerId/main.swift" failed.
Compiler:
Build flags:
Id flags:
The output was:
65
=== BUILD TARGET CompilerIdSwift OF PROJECT Compil...I get the following error:
```
Compiling the Swift compiler identification source file "CompilerId/main.swift" failed.
Compiler:
Build flags:
Id flags:
The output was:
65
=== BUILD TARGET CompilerIdSwift OF PROJECT CompilerIdSwift WITH THE DEFAULT CONFIGURATION (Debug) ===
Check dependencies
“Use Legacy Swift Language Version” (SWIFT_VERSION) is required to be configured correctly for targets which use Swift. Use the [Edit > Convert > To Current Swift Syntax…] menu to choose a Swift version or use the Build Settings editor to configure the build setting directly.
** BUILD FAILED **
```
The trick is to specify the required Swift version in the Xcode project:
```
isa = XCBuildConfiguration;
buildSettings = {
PRODUCT_NAME = CompilerIdSwift;
+ SWIFT_VERSION = 2.3;
};
```3.7.0Brad KingBrad Kinghttps://gitlab.kitware.com/cmake/cmake/-/issues/16323Cannot detect Xcode SDK version from unversioned SDK path2017-06-27T14:59:10-04:00Gregor JasnyCannot detect Xcode SDK version from unversioned SDK pathStaring with Xcode 8 the SDK path might be unversioned, too. The following should work properly:
```
cmake -DCMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -DCMAKE_OSX...Staring with Xcode 8 the SDK path might be unversioned, too. The following should work properly:
```
cmake -DCMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=10.10 -GXcode ..
```
See discussion in: http://public.kitware.com/pipermail/cmake/2016-September/064263.html3.7.0Gregor JasnyGregor Jasnyhttps://gitlab.kitware.com/cmake/cmake/-/issues/16234CMake supporting for Fortran 2008 submodules2018-02-20T16:28:55-05:00Damian RousonCMake supporting for Fortran 2008 submodulesThe transcript below and the attached file [fortran-submodule-support.tar.gz](/uploads/8795713101815402faae472a92c880f9/fortran-submodule-support.tar.gz) demonstrate a skeleton Fortran 2008 submodule implementation that is currently supp...The transcript below and the attached file [fortran-submodule-support.tar.gz](/uploads/8795713101815402faae472a92c880f9/fortran-submodule-support.tar.gz) demonstrate a skeleton Fortran 2008 submodule implementation that is currently supported by the GNU, Cray, IBM, and Intel compilers. As discussed on the [CMake users list in March 2016](https://cmake.org/pipermail/cmake/2016-March/063056.html), the CMake parser apparently cannot handle this syntax.
```console
$ cat CMakeLists.txt
cmake_minimum_required(VERSION 3.6)
project (fortran-submodule-issue Fortran)
add_executable(submodule-issue-reproducer fortran-submodule.F90)
rouson@localhost:~/Code/AdHoc/src/cmake/bug-xxxxy$ cat fortran-submodule.f90
module foo_interface
implicit none
interface
module subroutine foo()
end subroutine
end interface
end module
submodule (foo_interface) foo_implementation
implicit none
contains
module subroutine foo()
end subroutine
end submodule
end ! Dummy main program to produce an executable file
$ mkdir build
$ cd build
$ FC=gfortran cmake ..
-- The Fortran compiler identification is GNU 6.1.0
-- Checking whether Fortran compiler has -isysroot
-- Checking whether Fortran compiler has -isysroot - yes
-- Checking whether Fortran compiler supports OSX deployment target flag
-- Checking whether Fortran compiler supports OSX deployment target flag - yes
-- Check for working Fortran compiler: /opt/local/bin/gfortran
-- Check for working Fortran compiler: /opt/local/bin/gfortran -- works
-- Detecting Fortran compiler ABI info
-- Detecting Fortran compiler ABI info - done
-- Checking whether /opt/local/bin/gfortran supports Fortran 90
-- Checking whether /opt/local/bin/gfortran supports Fortran 90 -- yes
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/rouson/Code/AdHoc/src/cmake/bug-xxxxy/build
rouson@localhost:~/Code/AdHoc/src/cmake/bug-xxxxy/build$ make
Scanning dependencies of target submodule-issue-reproducer
[ 50%] Building Fortran object CMakeFiles/submodule-issue-reproducer.dir/fortran-submodule.F90.o
Error copying Fortran module "subroutine". Tried "SUBROUTINE.mod" and "subroutine.mod".
make[2]: *** [CMakeFiles/submodule-issue-reproducer.dir/fortran-submodule.F90.o.provides.build] Error 1
make[1]: *** [CMakeFiles/submodule-issue-reproducer.dir/all] Error 2
make: *** [all] Error 2
$ gfortran --version
GNU Fortran (MacPorts gcc6 6.1.0_0) 6.1.0
$ cmake --version
cmake version 3.6.1
```
3.7.0Brad KingBrad Kinghttps://gitlab.kitware.com/cmake/cmake/-/issues/16196FindGIF doesn't support recent giflib versions2018-02-20T16:28:55-05:00Ben CampbellFindGIF doesn't support recent giflib versionsFindGIF only checks for giflib versions 3 (or earlier) and 4.
giflib version 5 came out around 2012, making some breaking API changes, so it's definitely worth distinguishing between 4 and 5.
The giflib version labelling has always...FindGIF only checks for giflib versions 3 (or earlier) and 4.
giflib version 5 came out around 2012, making some breaking API changes, so it's definitely worth distinguishing between 4 and 5.
The giflib version labelling has always been a bit ad-hoc (which FindGIF deals with), but since v4.1.6 it's been cleaned up:
(From http://giflib.sourceforge.net/gif_lib.html#compatibility )
> Versions up to 4.1.6 defined a GIF_LIB_VERSION macro that was string-valued with a tricky format to parse. This macro has been retired.
>
> Versions after 4.1.6 define integer-valued GIFLIB_MAJOR, GIFLIB_MINOR, and GIFLIB_RELEASE macros for the three components of the version. See the NEWS file in the GIFLIB distribution to track API changes.
So it'd be lovely if FindGIF could be updated to use the new defined if they are available.
3.7.0https://gitlab.kitware.com/cmake/cmake/-/issues/16143Missing generator for Visual Studio "15"2018-02-20T16:28:55-05:00RomanMissing generator for Visual Studio "15"There is no generator available for the new/upcoming Visual Studio "15" (https://www.visualstudio.com/en-us/downloads/visual-studio-next-downloads-vs.aspx)There is no generator available for the new/upcoming Visual Studio "15" (https://www.visualstudio.com/en-us/downloads/visual-studio-next-downloads-vs.aspx)3.7.0Brad KingBrad King