cotire
cotire copied to clipboard
Evaluation file to be written multiple times with different content
Hi, I want to build a project that uses dlib.
Here's the CMakeLists.txtfile that I used.
cmake_minimum_required(VERSION 3.11)
project("dlib example" LANGUAGES CXX)
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/CMake")
include(FetchContent)
# Fetch Dlib
set(DLIB_TAG master)
FetchContent_Declare(
dlib
GIT_REPOSITORY https://github.com/davisking/dlib.git
GIT_TAG ${DLIB_TAG}
)
message("-- Fetching dlib ${DLIB_TAG}")
FetchContent_MakeAvailable(dlib)
include(cotire)
add_executable(mnist build/_deps/dlib-src/examples/dnn_introduction_ex.cpp)
target_link_libraries(mnist PRIVATE dlib::dlib)
target_compile_options(mnist PRIVATE -Wall -Wextra -Wpedantic)
cotire(mnist)
When I run
mkdir build && cd build
cmake -GNinja ..
I get the following error:
CMake Error in CMakeLists.txt:
Evaluation file to be written multiple times with different content. This
is generally caused by the content evaluating the configuration type,
language, or location of object files:
/home/adria/Projects/cotire/build/mnist_CXX_Release_cotire.cmake
Here's the output with -DCOTIRE_DEBUG=ON
-- cotire 1.8.0 loaded.
-- C exclude extensions: m;mm
-- CXX source file extensions: C;M;c++;cc;cpp;cxx;mm;CPP
-- CXX ignore extensions: inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC
-- CXX exclude extensions: m;mm
-- Filtered mnist CXX sources: build/_deps/dlib-src/examples/dnn_introduction_ex.cpp
-- CXX source file extensions: C;M;c++;cc;cpp;cxx;mm;CPP
-- CXX ignore extensions: inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC
-- CXX exclude extensions: m;mm
-- Filtered mnist CXX sources: build/_deps/dlib-src/examples/dnn_introduction_ex.cpp
-- Target mnist compile flags: -O3;-DNDEBUG;-Wall;-Wextra;-Wpedantic;-DDLIB_JPEG_SUPPORT;-DDLIB_USE_BLAS;-DDLIB_USE_LAPACK;-DDLIB_PNG_SUPPORT;-DDLIB_GIF_SUPPORT;$<$<COMPILE_LANGUAGE:CXX>:-Wreturn-type>
-- Filter I unmatched: -O3;-DNDEBUG;-Wall;-Wextra;-Wpedantic;-DDLIB_JPEG_SUPPORT;-DDLIB_USE_BLAS;-DDLIB_USE_LAPACK;-DDLIB_PNG_SUPPORT;-DDLIB_GIF_SUPPORT;$<$<COMPILE_LANGUAGE:CXX>:-Wreturn-type>
-- Filter isystem unmatched: -O3;-DNDEBUG;-Wall;-Wextra;-Wpedantic;-DDLIB_JPEG_SUPPORT;-DDLIB_USE_BLAS;-DDLIB_USE_LAPACK;-DDLIB_PNG_SUPPORT;-DDLIB_GIF_SUPPORT;$<$<COMPILE_LANGUAGE:CXX>:-Wreturn-type>
-- Target mnist include dirs: $<BUILD_INTERFACE:/home/adria/Projects/cotire/build/_deps/dlib-src/dlib/..>;$<INSTALL_INTERFACE:include>
-- Target mnist compile flags: -O3;-DNDEBUG;-Wall;-Wextra;-Wpedantic;-DDLIB_JPEG_SUPPORT;-DDLIB_USE_BLAS;-DDLIB_USE_LAPACK;-DDLIB_PNG_SUPPORT;-DDLIB_GIF_SUPPORT;$<$<COMPILE_LANGUAGE:CXX>:-Wreturn-type>
-- Filter D matched: NDEBUG;DLIB_JPEG_SUPPORT;DLIB_USE_BLAS;DLIB_USE_LAPACK;DLIB_PNG_SUPPORT;DLIB_GIF_SUPPORT
-- Filter D unmatched: -O3;-Wall;-Wextra;-Wpedantic;$<$<COMPILE_LANGUAGE:CXX>:-Wreturn-type>
-- Target mnist compile definitions: NDEBUG;DLIB_JPEG_SUPPORT;DLIB_USE_BLAS;DLIB_USE_LAPACK;DLIB_PNG_SUPPORT;DLIB_GIF_SUPPORT
-- Target mnist compile flags: -O3;-DNDEBUG;-Wall;-Wextra;-Wpedantic;-DDLIB_JPEG_SUPPORT;-DDLIB_USE_BLAS;-DDLIB_USE_LAPACK;-DDLIB_PNG_SUPPORT;-DDLIB_GIF_SUPPORT;$<$<COMPILE_LANGUAGE:CXX>:-Wreturn-type>
-- Filter D|I|isystem matched: NDEBUG;DLIB_JPEG_SUPPORT;DLIB_USE_BLAS;DLIB_USE_LAPACK;DLIB_PNG_SUPPORT;DLIB_GIF_SUPPORT
-- Filter D|I|isystem unmatched: -O3;-Wall;-Wextra;-Wpedantic;$<$<COMPILE_LANGUAGE:CXX>:-Wreturn-type>
-- Target mnist compiler flags: -O3;-Wall;-Wextra;-Wpedantic;$<$<COMPILE_LANGUAGE:CXX>:-Wreturn-type>
-- # cotire.cmake 1.8.0 generated file
# /home/adria/Projects/cotire/build/mnist_CXX_cotire.cmake
set (COTIRE_ADDITIONAL_PREFIX_HEADER_IGNORE_EXTENSIONS "inc;inl;ipp")
set (COTIRE_ADDITIONAL_PREFIX_HEADER_IGNORE_PATH "")
set (COTIRE_CLEAN_ALL_TARGET_NAME "clean_cotire")
set (COTIRE_CLEAN_TARGET_SUFFIX "_clean_cotire")
set (COTIRE_CMAKE_MODULE_FILE "/home/adria/Projects/cotire/CMake/cotire.cmake")
set (COTIRE_CMAKE_MODULE_VERSION "1.8.0")
set (COTIRE_DEBUG "ON")
set (COTIRE_INTDIR "cotire")
set (COTIRE_MAXIMUM_NUMBER_OF_UNITY_INCLUDES "-j")
set (COTIRE_MINIMUM_NUMBER_OF_TARGET_SOURCES "2")
set (COTIRE_PCH_ALL_TARGET_NAME "all_pch")
set (COTIRE_PCH_TARGET_SUFFIX "_pch")
set (COTIRE_PREFIX_HEADER_FILENAME_SUFFIX "_prefix")
set (COTIRE_TARGETS_FOLDER "cotire")
set (COTIRE_TARGET_COMPILE_DEFINITIONS_RELEASE "NDEBUG;DLIB_JPEG_SUPPORT;DLIB_USE_BLAS;DLIB_USE_LAPACK;DLIB_PNG_SUPPORT;DLIB_GIF_SUPPORT")
set (COTIRE_TARGET_COMPILE_FLAGS_RELEASE "-O3;-Wall;-Wextra;-Wpedantic;$<$<COMPILE_LANGUAGE:CXX>:-Wreturn-type>")
set (COTIRE_TARGET_CONFIGURATION_TYPES "Release")
set (COTIRE_TARGET_CXX_COMPILER_LAUNCHER "COTIRE_TARGET_CXX_COMPILER_LAUNCHER-NOTFOUND")
set (COTIRE_TARGET_IGNORE_PATH "/home/adria/Projects/cotire")
set (COTIRE_TARGET_INCLUDE_DIRECTORIES_RELEASE "$<BUILD_INTERFACE:/home/adria/Projects/cotire/build/_deps/dlib-src/dlib/..>;$<INSTALL_INTERFACE:include>")
set (COTIRE_TARGET_INCLUDE_PRIORITY_PATH "")
set (COTIRE_TARGET_LANGUAGE "CXX")
set (COTIRE_TARGET_MAXIMUM_NUMBER_OF_INCLUDES "-j")
set (COTIRE_TARGET_POST_UNDEFS "")
set (COTIRE_TARGET_PRE_UNDEFS "")
set (COTIRE_TARGET_SOURCES "build/_deps/dlib-src/examples/dnn_introduction_ex.cpp")
set (COTIRE_UNITY_BUILD_ALL_TARGET_NAME "all_unity")
set (COTIRE_UNITY_BUILD_TARGET_SUFFIX "_unity")
set (COTIRE_UNITY_OUTPUT_DIRECTORY "unity")
set (COTIRE_UNITY_SOURCE_EXCLUDE_EXTENSIONS "m;mm")
set (COTIRE_UNITY_SOURCE_FILENAME_SUFFIX "_unity")
set (CMAKE_GENERATOR "Ninja")
set (CMAKE_BUILD_TYPE "Release")
set (CMAKE_CXX_COMPILER_ID "GNU")
set (CMAKE_CXX_COMPILER_VERSION "8.3.0")
set (CMAKE_CXX_COMPILER "/usr/bin/c++")
set (CMAKE_CXX_COMPILER_ARG1 "")
set (CMAKE_INCLUDE_FLAG_CXX "-I")
set (CMAKE_INCLUDE_SYSTEM_FLAG_CXX "-isystem ")
set (CMAKE_CXX_SOURCE_FILE_EXTENSIONS "C;M;c++;cc;cpp;cxx;mm;CPP")
-- mnist unity source max includes: 1
-- unity files: /home/adria/Projects/cotire/build/cotire/mnist_CXX_unity.cxx
-- add_custom_command: OUTPUT /home/adria/Projects/cotire/build/cotire/mnist_CXX_unity.cxx COMMAND /usr/bin/cmake;--warn-uninitialized;-DCOTIRE_BUILD_TYPE:STRING=$<CONFIGURATION>;-P;/home/adria/Projects/cotire/CMake/cotire.cmake;unity;/home/adria/Projects/cotire/build/mnist_CXX_$<$<CONFIG:>:None>$<$<NOT:$<CONFIG:>>:$<CONFIGURATION>>_cotire.cmake;/home/adria/Projects/cotire/build/cotire/mnist_CXX_unity.cxx DEPENDS /home/adria/Projects/cotire/build/mnist_CXX_$<$<CONFIG:>:None>$<$<NOT:$<CONFIG:>>:$<CONFIGURATION>>_cotire.cmake
-- add_custom_command: OUTPUT /home/adria/Projects/cotire/build/cotire/mnist_CXX_prefix.cxx COMMAND /usr/bin/cmake;--warn-uninitialized;-DCOTIRE_BUILD_TYPE:STRING=$<CONFIGURATION>;-P;/home/adria/Projects/cotire/CMake/cotire.cmake;prefix;/home/adria/Projects/cotire/build/mnist_CXX_$<$<CONFIG:>:None>$<$<NOT:$<CONFIG:>>:$<CONFIGURATION>>_cotire.cmake;/home/adria/Projects/cotire/build/cotire/mnist_CXX_prefix.cxx;/home/adria/Projects/cotire/build/cotire/mnist_CXX_unity.cxx DEPENDS /home/adria/Projects/cotire/build/cotire/mnist_CXX_unity.cxx /usr/bin/c++
-- add_custom_command: OUTPUT /home/adria/Projects/cotire/build/cotire/mnist_CXX_prefix.hxx COMMAND /usr/bin/cmake;--warn-uninitialized;-DCOTIRE_BUILD_TYPE:STRING=$<CONFIGURATION>;-P;/home/adria/Projects/cotire/CMake/cotire.cmake;combine;/home/adria/Projects/cotire/build/mnist_CXX_$<$<CONFIG:>:None>$<$<NOT:$<CONFIG:>>:$<CONFIGURATION>>_cotire.cmake;/home/adria/Projects/cotire/build/cotire/mnist_CXX_prefix.hxx;/home/adria/Projects/cotire/build/cotire/mnist_CXX_prefix.cxx DEPENDS /home/adria/Projects/cotire/build/cotire/mnist_CXX_prefix.cxx
-- CXX source file extensions: C;M;c++;cc;cpp;cxx;mm;CPP
-- CXX ignore extensions: inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC
-- CXX exclude extensions: m;mm
-- Filtered mnist CXX sources: build/_deps/dlib-src/examples/dnn_introduction_ex.cpp
-- add target EXECUTABLE mnist_unity EXCLUDE_FROM_ALL /home/adria/Projects/cotire/build/cotire/mnist_CXX_unity.cxx
-- unity target mnist_unity link strategy: COPY_UNITY
-- unity target mnist_unity link libraries: dlib::dlib
-- Configuring done
CMake Error in CMakeLists.txt:
Evaluation file to be written multiple times with different content. This
is generally caused by the content evaluating the configuration type,
language, or location of object files:
/home/adria/Projects/cotire/build/mnist_CXX_Release_cotire.cmake
Am I doing something wrong? Thanks in advance.