autoconf常用宏
AC_INIT?(unique-file-in-source-dir)
AC_PREREQ?(version)
確保使用的是足夠新的Autoconf版本。如果用于創建configure的Autoconf的版本比version?要早,就在標準錯誤輸出打印一條錯誤消息并不會創建configure。
例如:AC_PREREQ(1.8)
如果你的`configure.in'依賴于在不同Autoconf版本中改變了的、不明顯的行為,本宏就是有用的。如果它僅僅是需要近來增加的宏,那么AC_PREREQ就不太有用,這是因為程序autoconf已經告訴了用戶那些宏沒有被找到。如果`configure.in'是由一個在提供AC_PREREQ之前的更舊的 Autoconf版本處理的,也會發生同樣的事。
AC_CYGWIN
檢查Cygwin環境。如果存在,就把shell變量CYGWIN設置成`yes'。如果不存在,就把CYGWIN設置成空字符串。
檢查MingW32編譯環境。如果存在,就把shell變量MINGW32設置成`yes'。如果不存在,就把MINGW32設置成空。
AC_MSG_NOTICE
輸出提示信息
AC_CANONICAL_SYSTEM
在調用了AC_CANONICAL_SYSTEM之后,下列輸出變量包含了系統類型信息。在調用了之后,
系統類型變量
build,?host,?target
為方便而提供的規范名稱的獨立部分。
AC_CANONICAL_HOST?
只設置了上列host變量。
AC_CANONICAL_TARGET
只設置了上列target變量。
AC_ARG_ENABLE?(feature,?help-string?[,?action-if-given?[,?action-if-not-given]])
shell命令可以通過訪問shell變量enableval來得到選項的參數,該變量的值實際上就是把shell變量?enable_feature的值中所有的`-'字符替換成`_'而得到的。如果你愿意,可以使用變量enable_feature。help-string參數類似于?AC_ARG_WITH中相應的參數(參見與外部軟件一起工作)。
如果要使用GNU C編譯器,把shell變量GCC設置為`yes',否則就設置成空。如果還沒有設置輸出變量?CFLAGS,就為GNU C編譯器把CFLAGS設置成`-g -O2'(在GCC不接受`-g'?的系統中就設置成`-O2'),為其他編譯器把CFLAGS設置成`-g'。
如果被使用的C編譯器并不生成可以在configure運行的系統上運行的可執行文件,就把shell變量?cross_compiling設置成`yes',否則設置成`no'。換句話說,它檢查創建系統類型是否與主機系統類型不同(目標系統與本測試無關)。關于對交叉編譯的支持,參見手工配置。
類似于AC_CHECK_PROG,但在找到prog-to-check-for的時候,把variable設置成prog-to-check-for的完整路徑。
AC_CONFIG_HEADERS([config.h])
http://www.cnblogs.com/xialm/articles/188213.html
總結
以上是生活随笔為你收集整理的autoconf常用宏的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 业内首创WQHD LTPO+88°瀑布屏
- 下一篇: 基于SIP协议的视频通讯