我有qmake項目與生成文檔的目標。遠在純慶典QMAKE的我會寫這樣的:qmake語法和從sed重定向標準輸出到其他sed
PWDMOD=$(echo $PWD | sed -e 's/\//\\\//g') ;
sed -i 's/INPUT = /INPUT = $PWDMOD\/src\/fileset/g' $PWD/Doxyfile
是的,我需要同時make doc
執行修正到的Doxyfile輸入變量。但在我的情況 - 在qmake環境中,我寫了這樣的:
doc.commands = \
(PWDMOD=$(echo $$PWD | sed -e 's/\//\\\//g') ; \
sed -i 's/INPUT = /INPUT = $$PWDMOD\/src\/fileset/g' $$PWD/Doxyfile ; \
...
和qmake分析器發給我關於第一行的錯誤消息。像「使用圓括號不正確的方式,像這樣$(...)」。
那麼我該如何寫這樣的qmake代碼?或者我如何將stdout從第一個sed命令重定向到第二個以避免這種情況?謝謝。
不熟悉qmake,但一般會期望雙美元符號是必要的。但整個問題都是過度工程化的;只需在'sed'中使用不同的分隔符。就像'doc.commands = sed -i's%INPUT =%INPUT = $$ PWD/src/fileset /%g「$$ PWD/Doxyfile' – tripleee 2015-03-19 09:05:38
非常感謝您的提示@tripleee關於」%「。它使qmake代碼看起來很清楚。 – drewpts 2015-03-19 12:53:37