私のプロジェクトには、C/C++ バイナリと共にインストール ルートにコピーされる一連の bash スクリプトがあります。
問題は、これらの BASH スクリプトをインストールする前に、それぞれに対してコマンドを実行する必要があることです。より具体的には、変数を autoconf 出力変数に置き換える必要があります。
anyfile sed 's/ECLIPSE_PATH/@prefix@/g'
Makefile.am でスクリプトが定義されている場所は次のとおりです。
bin_SCRIPTS = file1.sh file2.sh
これに対処する標準的な方法があるかどうか疑問に思います。そうでない場合は、それに対処するためのハックを用意したいと思います。ありがとう!
アップデート
私はそれを解決するためのハックを思いつきました.Automakeのレシピは次のとおりです:
install-data-hook:
input_path="@prefix@"; \
path=$${input_path//\//\\/}; \
for i in @bindir@/*; do \
if [[ ! `file $${i}` =~ "ELF" ]]; then \
sed -i "s/\$$ECLIPSE_PATH/$${path}/g" $$i; \
fi \
done
しかし、それを行う標準的な方法があるかどうかはまだ疑問です