我正在開發一個使用大量第三方庫(目前有22個,並計數的跨平臺項目,我預計這個數量會顯着增加)。我的項目是基於CMake的,並保持像這樣組織的第三方/目錄:構建和管理第三方庫的框架
第三方/ $ LIBNAME /包括/
第三方/ $ LIBNAME/lib中/ $平臺/ $ buildtype/
我CMakeLists。 txt具有確定$ platform(mac-i386,mac-ia64,win32-i386等)和$ buildtype(debug/release)的適當值的邏輯。
保持這些庫在每個平臺上都是最新的困難就出現了。目前我正在手動執行此操作 - 當我更新一個庫時,我會爲每個平臺重新構建它。但這是一場噩夢,而增加一個新平臺則是兩天的事情。
如果第三方庫本身是基於CMake的,這將很容易實現自動化,但它們使用從CMake到autoconf的所有功能,以及自定義解決方案以實現手動生成的Makefiles。它們之間沒有一致性,所有這些都需要跳過構建平臺(尤其是關於32位和64位版本)。
是否有任何工具(或CMake擴展),這將使這更容易管理?例如,是否有任何可以在CMake和autoconf之間達成的共同理由?
理想的解決方案會給我一個命令來構建需要爲給定平臺重建的所有東西(不需要交叉編譯,因爲我可以訪問所有必需的平臺),但是任何增量使我的生活更輕鬆的東西不勝感激。
哇。這看起來像我正在尋找的。謝謝! – Xtapolapocetl 2010-08-07 21:22:27