我想以一種既可以包含在Makefile中也可以包含在shell腳本中的形式發佈一組構建變量(應該附加到LDFLAGS) 。定義用於Makefile和Shell腳本的變量
我現在有一個文件buildflags.conf:
LDFLAGS_EXTRA="-static -foo -bar"
我希望我的用戶能夠,當他們正在使用的makefile:
include buildflags.conf
LDFLAGS+=$LDFLAGS_EXTRA
或者,當他們」重新使用shell腳本,做這樣的事情:
. buildflags.conf
gcc myapp.o -o myapp $LDFLAGS_EXTRA
然而,這並不工作,因爲需要的bash在我LDFLAGS_E報價XTRA定義,而make不需要它們。
任何人都有解決方案嗎?我不想維護多個獨立的buildflags文件,儘管一組腳本從單個定義文件開始,並使其適合包含在不同的上下文中會很好。
謝謝,這看起來是個好主意。我懷疑大多數用戶會使用makefile,所以我寧願在shell腳本上增加額外的負擔。有沒有任何方法將其變量導出到shell腳本中? – Wim 2010-08-06 10:14:57
使用讀取配置的其他shell腳本可以接受嗎?如果是這樣,只需要做一些類似於'eval \'awk -F ='{printf「%s = \」%s \「\ n」,$ 1,$ 2}'
Ivo
2010-08-06 13:17:23
完美!在此期間,我通過在包裝腳本中構建單獨的版本,使用類似於您的'awk'命令解決了這個問題。 – Wim 2010-08-06 13:51:02