2011-08-26 64 views
3

我們希望使用scons來構建Windows,主要是因爲它的緩存設施(我們在Linux上使用ccache,並且其編譯速度相當快)。但是,我們所有的項目都是在qmake .pro文件中定義的。構建工作的方式是,我們稱之爲qmake來生成一個Makefile,然後我們使用它來使用jom進行構建。讓.pro文件處於高級別非常實用,因此我們希望保留該文件,而不是通過SConfigure文件替換.pro文件。所以理想情況下,我們可以讓qmake生成一個SConfigure文件,就像現在生成一個Makefile一樣,然後在該SConfigure文件上運行scons。有沒有可以做到這一點的東西,或許是qmake的一個發電機?或者是否有可能將由qmake創建的Makefile轉換爲SConfigure文件?我知道scons和qmake的功能重疊,例如依賴關係的生成,它可能會更好地使用scons自己,但是,qmake對於Qt項目來說工作得非常好,並且還可以生成視覺工作室文件,所以我們想保留它。)Qmake scons生成器

+0

除了使用scons,我們現在正在使用Qt自己的nmake克隆jom的定製版本,我擴展了其緩存編譯文件的能力(還包括緩存moc和qrc文件)。如果有人正在尋找類似的東西,可以在https://qt.gitorious.org/~jabernet/qt-labs/jomcache找到它。 –

回答

1

他們不是很滿意meta meta makes。但是,正如在拒絕的合併請求中所暗示的那樣,使用QMAKE_SUBSTITUTES可能是脫機的,但這是一個實際上沒有記錄的功能。

或者你可以按照我試圖直接修改代碼的方式去做。看看https://qt.gitorious.org/~phresnel/qt/add-some-qmake-to-autotools-glue,或更具體地說是https://qt.gitorious.org/qt/qt/merge_requests/1040的差異。文件qmake/generators/special/filelist.cpp完成了大部分工作。

Imho,真的很可惜qmake的擴展並不容易; CMake更大的靈活性也是我改用它的原因,完全放棄了我對qmake的使用。

+0

非常感謝鏈接,我會看看他們,希望我們能夠以某種方式利用scons的工作。 –