Currently, sac.h
is being generated within the cmake
call. The generation
process simply takes all the runtime or libsac headers and
puts #include <file>
in sac.h
.
The resulting file consists of ~100 includes which are
traversed by a preprocessor every time we compile a sac program.
Even thought this takes little time in the overall sac
compilation, it becomes noticeable when using sac2c
from jupyter
notebooks, where we quickly compile small programs.
Therefore when compilation speed is important, it is better no to traverse all these files, so we include the headers conditionally.