[cmake-developers] [CMake 0015801]: FindCUDA.cmake incorrectly includes cu file dependencies

Mantis Bug Tracker mantis at public.kitware.com
Mon Oct 19 09:54:54 EDT 2015


The following issue has been SUBMITTED. 
====================================================================== 
https://cmake.org/Bug/view.php?id=15801 
====================================================================== 
Reported By:                tomwar
Assigned To:                
====================================================================== 
Project:                    CMake
Issue ID:                   15801
Category:                   Modules
Reproducibility:            always
Severity:                   crash
Priority:                   normal
Status:                     new
====================================================================== 
Date Submitted:             2015-10-19 09:54 EDT
Last Modified:              2015-10-19 09:54 EDT
====================================================================== 
Summary:                    FindCUDA.cmake incorrectly includes cu file
dependencies
Description: 
FindCuda.cmake line 399 include(${dependency_file}). Includes file that is
changed everytime during build process. Everytime when NVCC compiles some cu
file it generates new depends file (*_generated_*.cu.obj.depend) for it that
contains cu file dependencies (eg h files or other #included files). As I
checked in other cmake projects dependencies files (generate.stamp.depend)
contain only reference to other cmake fiels that it depends. I couldn't find
reference to source code files in generate.stamp.depend which makes sense. As
FindCuda adds such source code file dependency that is changed on compilation
time, it coused that after every build ZERO_CHECK triggers reconfiguration of
whole project which if you have enabled parallel build might coused crash of
MSBuild application or crash of build process b/c one thread is configuring
whole project and another is still compiling or linking different one. If in
other generate.stamp.depend files that were generated by cmake I couldn't find
any #included .h file dependency i would suggest to remove whole this
functionality from FindCUDA.cmake.
====================================================================== 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2015-10-19 09:54 tomwar         New Issue                                    
======================================================================



More information about the cmake-developers mailing list