You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There is a strange defect with nvcc when calling through Ninja as generated by CMake described in trilinos/Trilinos#2359 that causes nvcc to spit out incorrect dependencies for all line in source files of the form #line 1 <some-file>. This results in unnecessary rebuilds of a bunch of files when ever ninja is called to build. A defect report has been filed with NVIDA but the workaround is to just remove the lines #line 1 <some-file> from all of the flex generated SEACAS source files. In particular, with the patch:
This remove the line starting wtih '#line 1' which causes nvcc to create a
wrong dependency on apr_scanner.o based on the non-existant file
/scratch/gdsjaar/seacas/packages/seacas/libraries/aprepro_lib/aprepro.ll. See
trilinos/Trilinos#2359.
This is the same patch as the Trilinos patch in PR trilinos/Trilinos#2360. By
making this patch here as well, the next time SEACAS is snapshotted into
Trilinos, it will not overwrite the patch in trilinos/Trilinos#2360 being
committed to Trilinos.
But the right solution will be to avoid lines starting with '#line 1' in the
future when generating these files.
I created the PR #98 for a short-term fix for this. But the long term fix (other than getting an updated CUDA with a fixed nvcc) is to avoid having these generated files have #line 1 <some-file>.
What is the best long-term solution for avoiding #line 1 lines?
There is a strange defect with
nvcc
when calling through Ninja as generated by CMake described in trilinos/Trilinos#2359 that causesnvcc
to spit out incorrect dependencies for all line in source files of the form#line 1 <some-file>
. This results in unnecessary rebuilds of a bunch of files when everninja
is called to build. A defect report has been filed with NVIDA but the workaround is to just remove the lines#line 1 <some-file>
from all of theflex
generated SEACAS source files. In particular, with the patch:or the patch
both solve the problem.
I can change this in the snapshot of this file in Trilinos but it would just get overwritten the next time that SEACAS was snapshotted into Trilinos.
Is there any way to avoid this
#line 1
from getting into these generated files?The text was updated successfully, but these errors were encountered: