summaryrefslogtreecommitdiff
path: root/m4/directx.m4
diff options
context:
space:
mode:
Diffstat (limited to 'm4/directx.m4')
-rw-r--r--m4/directx.m472
1 files changed, 72 insertions, 0 deletions
diff --git a/m4/directx.m4 b/m4/directx.m4
new file mode 100644
index 000000000..11725123f
--- /dev/null
+++ b/m4/directx.m4
@@ -0,0 +1,72 @@
+dnl
+dnl autoconf script for DirectX
+dnl
+dnl written by Frantisek Dvorak <valtri@users.sourceforge.net>
+dnl
+dnl
+dnl AM_PATH_DIRECTX([ACTION IF FOUND [, ACTION IF NOT FOUND]]))
+dnl
+dnl It looks for DirectX, defines DIRECTX_CPPFLAGS, DIRECTX_AUDIO_LIBS and
+dnl DIRECTX_VIDEO_LIBS.
+dnl
+AC_DEFUN([AM_PATH_DIRECTX], [
+
+AC_ARG_WITH(dxheaders, AC_HELP_STRING([--with-dxheaders], [specify location of DirectX headers]),
+ [dxheaders_prefix="$withval"],
+ [dxheaders_prefix="no"]
+)
+
+if test x"$dxheaders_prefix" != "xno"; then
+ DIRECTX_CPPFLAGS="-I${dxheaders_prefix} ${DIRECTX_CPPFLAGS}"
+fi
+
+AC_MSG_CHECKING(for DirectX)
+DIRECTX_VIDEO_LIBS="$DIRECTX_LIBS -lgdi32 -lddraw"
+DIRECTX_AUDIO_LIBS="$DIRECTX_LIBS -ldsound"
+AC_LANG_SAVE()
+AC_LANG_C()
+ac_save_CPPFLAGS="$CPPFLAGS"
+ac_save_LIBS="$LIBS"
+CPPFLAGS="$CPPFLAGS $DIRECTX_CPPFLAGS"
+LIBS="$LIBS $DIRECTX_VIDEO_LIBS $DIRECTX_AUDIO_LIBS"
+AC_COMPILE_IFELSE(
+ [
+#include <stddef.h>
+
+#include <windows.h>
+#include <ddraw.h>
+#include <dsound.h>
+
+int main() {
+ DirectDrawCreate(0, NULL, 0);
+ DirectsoundCreate(0, NULL, 0);
+
+ return 0;
+}
+ ],
+ [have_directx=yes
+ AC_DEFINE(HAVE_DIRECTX,1,[Define this if you have DirectX])],,)
+CPPFLAGS=$ac_save_CPPFLAGS
+LIBS=$ac_save_LIBS
+AC_LANG_RESTORE()
+
+if test x$have_directx = xyes ; then
+ AC_MSG_RESULT(yes)
+else
+ AC_MSG_RESULT(no)
+ AC_MSG_RESULT(*** All DirectX dependent parts will be disabled ***)
+fi
+
+AC_SUBST(DIRECTX_CPPFLAGS)
+AC_SUBST(DIRECTX_AUDIO_LIBS)
+AC_SUBST(DIRECTX_VIDEO_LIBS)
+AM_CONDITIONAL(HAVE_DIRECTX, test x$have_directx = "xyes")
+
+dnl result
+if test x"$have_directx" = "xyes"; then
+ ifelse([$1], , :, [$1])
+else
+ ifelse([$2], , :, [$2])
+fi
+
+])