AC_TRY_CPP(includes
[,action_if_true[,action_if_false]])
這個宏把includes文件名傳給預處理程序,如果預處理程序處理成功則執行shell命令action_if_true,反之執行action_if_false.
AC_EGREP_HEADER(pattern,header,action_if_found
\
[,action_if_not_found])
這個宏可以用來在頭文件header中查找egrep的表達式pattern,如果找到pattern,則執行shell命令action_if_found,反之執行action_if_not_found.
AC_EGREP_CPP(pattern,program,[action_if_found
\
[,action_if_not_found]])
用預處理程序對C源代碼program進行處理以查找egrep的表達式pattern,如果找到pattern,則執行shell命令action_if_found,反之執行action_if_not_found.
AC_TRY_COMPILE(includes,function_body,[action_if_found
\
[,action_if_not_found]])
這個宏查找C或C++編譯器的某個語法特性.編譯器將編譯包含includes中的頭文件并使用function_body中定義的函數的測試程序,如果
編譯成功,則執行shell命令action_if_found,反之執行action_if_not_found.這個宏不執行鏈接,可以用
AC_TRY_LINK來測試鏈接情況.
AC_TRY_LINK(includes,function_body,[,action_if_found
\
[,action_if_not_found]])
這個宏在AC_TRY_COMPILE之后增加鏈接測試.編譯器將編譯并鏈接其中包含includes中的頭文件并使用function_body中定義
的函數的測試程序,如果鏈接成功,則執行shell命令action_if_found,反之執行action_if_not_found.
AC_TRY_RUN(program,[action_if_true[,action_if_false
\
[,action_if_cross_compiling]]])
這個宏測試宿主系統的運行時行為.編譯,鏈接和執行C程序program,如果program,如果program返回0,則執行shell命令
action_if_true,否則執行action_if_false.如果程序要編譯為在另一類型的系統上運行,則用
action_if_cross_compiling代替action_if_found.
AC_CHECK_PROG
測試在當前路徑下是否在指定程序program.
AC_CHECK_FUNC
測試指定函數是否在C的鏈接函數庫中存在.
AC_CHECK_HEADER
測試指定頭文件是否存在
AC_CHECK_TYPE
如果指定的類型沒有被定義,設置一個默認值.