[英]Release management system for Linux
我們公司需要的是一種Linux / C ++版本管理工具。 我們的產品包含多個庫和配置文件。 在這里,我將列出我們希望這樣的系統具有的基本功能:
能夠跟蹤依賴關系,輕松增加依賴關系得到主要版本的庫的主要版本。 它應該在內部構建某種依賴圖,以便知道誰受到更新的影響。
知道如何構建它所處理的產品。 要么是特定的構建文件,要么更好 - 能夠閱讀和理解makefile。
使用SVN,以便從那里檢查新版本並進行構建。
生成一些安裝程序 - 以rpm或tar.gz格式。 為此,它應該能夠理解rpm spec文件格式。
目前我們正在研究這種已經很有用的工具。 但是我相信我們的任務並不是獨一無二的,應該有一些工具可以完成這項工作。
您應該考慮使用Hudson,Maven(用於構建管理),Ivy(用於依賴管理)和Archiva(用於工件存檔)之間的混合。
另外,如果您正在研究cross.compilation,請查看Make Project Creator(MPC)和Bakefile。
玩得開心!!
看看DDJ中的這篇文章,其中介紹並實現了一個更強大的構建系統概念(比make)。 不確定它是否符合您的要求,但它是我見過的最接近的。 幾個月前我一直在尋找同樣的東西,然后我發現了這篇文章。
在我正在開發的項目中,我們使用cmake和其他Kitware工具來處理本機代碼(C ++)的大部分問題。 逐點回答:
cmake腳本處理我們不同項目的依賴項。 我們有一個依賴圖,但我不知道它是否是一個自制腳本,或者它是cmake提供的功能。
好的cmake生成關於平台的makefile。 如果在開發的情況下被要求這樣做,我會為eclipse cdt和visual studio生成項目。
Cmake有幾個工具,ctest和cdash,我們用它來進行日常構建,看看測試是如何進行的。
為了創建安裝程序,cmake有cpack。 從一個腳本,它可以在Linux中生成tar.gz,deb或rpm文件或自動生成的NSIS腳本,以在Windows中生成安裝程序。
對於Java代碼,我們使用已在此處提到的maven和hudson。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.