cotire
cotire copied to clipboard
CMake module to speed up builds.
it seems that all the target names, folders, files, etc. changed. See for instance : * https://cmake.org/cmake/help/v3.8/manual/cmake-qt.7.html#manual:cmake-qt(7) (section AUTOMOC), * https://github.com/Kitware/CMake/commit/dfebdd6218d8f146277d75597fccde74b45cdbd2 and specifically * https://github.com/Kitware/CMake/commit/9d1db7d7c3696108fd0fa1162893076d9a59b652
when i conpiling for android that the ABI is armeabi,has crashed with " error: unknown target CPU 'armv5te' " how i todo?
The system includes must be passed to GCC compiler as 2 flags: "-isystem" "/example/include", not as a single one "-isystem /example/include". Otherwise the path is ignored. Fixes https://github.com/sakra/cotire/issues/133.
For some reason I have to include my local build of Boost instead of system one. So the include path of local Boost must be before `/usr/include`. Cotire ignores this...
I am having trouble with precompiled headers (either autogenerated or manually provided). The header and a corresponding source file get generated, but since the targets do not depend on each...
Given ```CMake set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}) project(foo) include(cotire) set(CMAKE_AUTOMOC ON) find_package(Qt5 COMPONENTS Core Widgets) add_library(A a.cpp b.cpp c.cpp) add_library(B d.cpp e.cpp f.cpp) target_link_libraries(A Qt5::Core Qt5::Widgets) target_link_libraries(B A Qt5::Core Qt5::Widgets) cotire(A) cotire(B)...
Repro in attachment [bug-cmake39-automoc.zip](https://github.com/sakra/cotire/files/1184796/bug-cmake39-automoc.zip)
CMake has a bug where CMAKE_MATCH_# may not be empty if the capture group of a regex matched an empty string. See https://gitlab.kitware.com/cmake/cmake/issues/17079 Found these regexes that can provoke issues:...
In function (cotire_make_unity_source_file_paths _language _target _maxIncludes _unityFilesVar) cotire_setup_file_extension_variables() if (NOT DEFINED _unityFileExt_${_language}) set (${_unityFileVar} "" PARENT_SCOPE) return() set (${_unityFileVar} "" PARENT_SCOPE) should be 'set (${_unityFilesVar} "" PARENT_SCOPE)'
Consider the following CMake: ```CMake add_library(foo INTERFACE IMPORTED) target_sources(foo INTERFACE foo.cpp) add_executable(bar bar.cpp) target_link_libraries(bar foo) cotire(bar) ``` That will apply the PCH settings to bar.cpp but not foo.cpp.