2017-03-29 49 views
4

我想更改autoconf的默認configure --help輸出的內容,特別是中HELP_BEGIN轉換的文本。如何更改默認的autoconf配置--help輸出

我意識到這將是一個在autoconf原則下不完全「猶太教」的破解,但我願意忍受可攜帶性等方面的任何後果。但是,我不想直接編輯autoconf實現,或者需要生成的配置腳本的後處理步驟。

似乎m4的力量應該讓我這樣做,但我已經嘗試了許多不同的東西,但都沒有工作。其中大多數導致m4崩潰,例如:

$ cat configure.ac 
AC_PREREQ(2.69) 
m4_define([_AC_INIT_HELP],patsubst(m4_defn([_AC_INIT_HELP]),[Fine],[Foo])) 
AC_INIT(foo,1.0) 
AC_OUTPUT() 
$ autoreconf 
/usr/local/pkg/autotools-201608/bin/m4: memory exhausted 
autom4te: /usr/local/pkg/autotools-201608/bin/m4 failed with exit status: 1 
aclocal: error: echo failed with exit status: 1 
autoreconf: aclocal failed with exit status: 1 

我該如何做這項工作?

回答

3

終於自己找到了答案。

的關鍵是利用m4_copy

AC_PREREQ(2.69) 
m4_copy([_AC_INIT_HELP],[_MY_INIT_HELP]) 
m4_define([_AC_INIT_HELP],[patsubst(m4_defn([_MY_INIT_HELP]),[Fine],[Foo])]) 
AC_INIT(foo,1.0) 
AC_OUTPUT() 
相關問題