2012-06-18 35 views
0

我試圖到的CMake構建系統添加到散落着預處理每個源文件與使用cmake

!DEC$ 

風格預處理命令的舊Fortran代碼的腳本。舊的構建系統生成了一個awk腳本,將其轉換爲傳統的C風格預處理器。 makefile然後將輸出直接傳送給編譯器。我知道cmake可以生成一箇中間文件,但是我想避免這種情況,因爲我想在每個文件上運行它。

在cmake中是否有一種方法將命令的輸出直接傳遞給編譯器?基本上是在那裏做相當於

awk -f script.awk source.f | gfortran -x f95 -cpp -c - 

在cmake。

回答

1

您可以添加一個cmake add_custom_command以運行awk並將輸出保存到另一個文件,在這種情況下,將不需要管道。有管道,我認爲可以編寫一個bash腳本,其中包括管道聲明。該腳本可以被定義爲cmake編譯器(Using a different compiler)。