Mercurial > hg > xmms-sid
diff acsidplay.m4 @ 1:183e7cbc1036
Initial revision
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Tue, 03 Jun 2003 10:23:04 +0000 |
parents | |
children | e5c49367b899 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/acsidplay.m4 Tue Jun 03 10:23:04 2003 +0000 @@ -0,0 +1,142 @@ +# sidplay.m4 sidplay checks + +AC_DEFUN(AC_FIND_FILE, + [ + $3=NO + for i in $2; + do + for j in $1; + do + if test -r "$i/$j"; then + $3=$i + break 2 + fi + done + done + ] +) + +AC_DEFUN(AC_PATH_LIBSIDPLAY, +[ +AC_MSG_CHECKING([for SIDPLAY includes and library]) +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_sidplay_cflags=NO +ac_sidplay_library=NO +sidplay_cflags="" +sidplay_library="" + +AC_ARG_WITH(sidplay-prefix, + [ --with-sidplay-prefix=DIR + where the sidplay includes and library are located], + [ac_sidplay_cflags="${withval}/include" + ac_sidplay_library="${withval}/lib" + ]) + +AC_ARG_WITH(sidplay-includes, + [ --with-sidplay-includes=DIR + where the sidplay includes are located], + [ac_sidplay_cflags="$withval" + ]) + +AC_ARG_WITH(sidplay-library, + [ --with-sidplay-library=DIR + where the sidplay library is installed], + [ac_sidplay_library="$withval" + ]) + +if test "$ac_sidplay_cflags" = NO || test "$ac_sidplay_library" = NO; then +#search common locations + +AC_CACHE_VAL(ac_cv_have_sidplay, +[ +sidplay_incdirs="$ac_sidplay_cflags /usr/include /usr/local/include /usr/lib/sidplay/include /usr/local/lib/sidplay/include" +AC_FIND_FILE(sidplay/sidtune.h,$sidplay_incdirs,sidplay_foundincdir) +ac_sidplay_cflags=$sidplay_foundincdir + +sidplay_libdirs="$ac_sidplay_library /usr/lib /usr/local/lib /usr/lib/sidplay /usr/local/lib/sidplay" +AC_FIND_FILE(libsidplay.so libsidplay.so.1 libsidplay.so.1.36 libsidplay.so.1.37,$sidplay_libdirs,sidplay_foundlibdir) +ac_sidplay_library=$sidplay_foundlibdir + +if test "$ac_sidplay_cflags" = NO || test "$ac_sidplay_library" = NO; then + ac_cv_have_sidplay="have_sidplay=no" + ac_sidplay_notfound="" + if test "$ac_sidplay_cflags" = NO; then + if test "$ac_sidplay_library" = NO; then + ac_sidplay_notfound="(headers and library)"; + else + ac_sidplay_notfound="(headers)"; + fi + else + ac_sidplay_notfound="(library)"; + fi + eval "$ac_cv_have_sidplay" + AC_MSG_RESULT([$have_sidplay]) +else + have_sidplay=yes +fi + +]) dnl AC_CACHE_VAL(ac_cv_have_sidplay, +else + have_sidplay=yes +fi dnl if (have_to_search) + +eval "$ac_cv_have_sidplay" + +if test "$have_sidplay" != yes; then + AC_MSG_RESULT([$have_sidplay]); +else + ac_cv_have_sidplay="have_sidplay=yes \ + ac_sidplay_cflags=$ac_sidplay_cflags ac_sidplay_library=$ac_sidplay_library" + AC_MSG_RESULT([library $ac_sidplay_library, headers $ac_sidplay_cflags]) + + sidplay_library=$ac_sidplay_library + sidplay_cflags=$ac_sidplay_cflags + + SIDPLAY_LIBS="-L$sidplay_library -lsidplay" + all_libraries="$SIDPLAY_LIBS $all_libraries" + SIDPLAY_CFLAGS="-I$sidplay_cflags" + all_includes="$SIDPLAY_CFLAGS $all_includes" +fi + +dnl Test compilation. + +AC_MSG_CHECKING([whether -lsidplay works]) +ac_cxxflags_safe=$CXXFLAGS +ac_ldflags_safe=$LDFLAGS +ac_libs_safe=$LIBS + +CXXFLAGS="$CXXFLAGS -I$sidplay_cflags" +LDFLAGS="$LDFLAGS -L$sidplay_library" +LIBS="-lsidplay" + +AC_CACHE_VAL(ac_cv_sidplay_works, +[ + AC_TRY_LINK( + [#include <sidplay/sidtune.h>], + [sidTune* myTest;], + [ac_cv_sidplay_works=yes], + [ac_cv_sidplay_works=no] + ) +]) + +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +AC_MSG_RESULT([$ac_cv_sidplay_works]) +if test "$ac_cv_sidplay_works" != yes; then + have_sidplay=no +fi + +dnl + +AC_SUBST(SIDPLAY_CFLAGS) +AC_SUBST(SIDPLAY_LIBS) + +AC_SUBST(sidplay_library) +AC_SUBST(sidplay_cflags) + +AC_LANG_RESTORE + +])