From 932a7777be00484cae71e19748419ca0619d8184 Mon Sep 17 00:00:00 2001 From: Amar Takhar Date: Tue, 17 Nov 2009 04:46:46 +0000 Subject: [PATCH] Add two new macros (custom) to search for headers in different directories and libraries with different names. updates #989. Originally committed to SVN as r3801. --- aegisub/acinclude.m4 | 1 + aegisub/m4macros/agi_find_libheader.m4 | 58 ++++++++++++++++++++++++++ 2 files changed, 59 insertions(+) create mode 100644 aegisub/m4macros/agi_find_libheader.m4 diff --git a/aegisub/acinclude.m4 b/aegisub/acinclude.m4 index 9ffe0ce65..139f589b5 100644 --- a/aegisub/acinclude.m4 +++ b/aegisub/acinclude.m4 @@ -1,4 +1,5 @@ m4_include([m4macros/ac_agi.m4]) +m4_include([m4macros/agi_find_libheader.m4]) m4_include([m4macros/ac_agi_mdcpucfg.m4]) m4_include([m4macros/ac_flag.m4]) m4_include([m4macros/acx_pthread.m4]) diff --git a/aegisub/m4macros/agi_find_libheader.m4 b/aegisub/m4macros/agi_find_libheader.m4 new file mode 100644 index 000000000..46bf1d82e --- /dev/null +++ b/aegisub/m4macros/agi_find_libheader.m4 @@ -0,0 +1,58 @@ +AC_DEFUN([AGI_FIND_HEADER],[ + file=`echo $2 | $as_tr_sh` + + aegisub_save_CPPFLAGS="$CPPFLAGS" + + for dir in $3; do + vdir=`echo $dir | $as_tr_sh` + CPPFLAGS="-I$dir" + AC_CACHE_CHECK( + [for $2 in $dir], + [agi_cv_header_${vdir}_${file}], + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([#include <$2>])], + [eval agi_cv_header_${vdir}_${file}="yes"; found="${dir}"], + [eval agi_cv_header_${vdir}_${file}="no"; found=""]) + ]) + + if test -n "$found"; then + break; + fi + done + + if test -n "$found"; then + $1_CFLAGS="-I$found" + fi + CPPFLAGS="$aegisub_save_CPPFLAGS" +]) + + +AC_DEFUN([AGI_FIND_LIB],[ + aegisub_save_LDFLAGS="$LDFLAGS" + + if test -n $3; then + LDDIR="-L$3" + fi + + for lib in $2; do + vlib=`echo $lib | $as_tr_sh` + LDFLAGS="$LDDIR -l$lib" + AC_CACHE_CHECK( + [for -l${lib}], + [agi_cv_lib_${vlib}], + [AC_LINK_IFELSE( + [AC_LANG_PROGRAM()], + [eval agi_cv_lib_${vlib}="yes"; found="${lib}"], + [eval agi_cv_lib_${vlib}="no"; found=""]) + ]) + + if test -n "$found"; then + break; + fi + done + + if test -n "$found"; then + $1_LDFLAGS="$LDDIR -l$found" + fi + LDFLAGS="$aegisub_save_LDFLAGS" +])