0
我有一個數據庫集成測試,我正在運行使用增強構建。測試需要一些命令行參數(數據庫用戶名,密碼)。用戶可以通過Boost Build(通過環境變量,bjam命令行,user-config.jam)配置的方式來設置它的最佳方式是什麼?增強構建:使用功能或變量
我知道我可以用變量做到這一點:
import os ;
local DB_PASS = [ os.environ DB_PASS ] ;
run dbtest : test.cpp : --dbpass $(DB_PASS) ;
這可以通過一個命令行(bjam -s DB_PASS=pass
)或通過環境變量來設置。
另一方面,Boost Build傾向於通過功能機制來完成其大部分配置。我大概可以定義一個新功能,並以這種方式將配置數據發送到正確的位置。
每種方法的優缺點是什麼?我應該選哪一個?如果功能:我會怎麼做?
注意:實際測試是在Jamroot使用的Jamfile中,因此不直接在根文件中。
我同意邁克爾。當可能或合理地使用不同的值構建時,以及何時構建產品會不同,您會使用功能。調試或發佈,共享或靜態,gcc或clang,都是合理的功能。對於數據庫密碼,您可能不希望爲不同密碼設置不同的二進制文件集。 –