automake: fix repeated defines and libs for WASAPI and DSound.
authorStephen Sinclair <radarsat1@gmail.com>
Thu, 24 Jan 2019 11:42:57 +0000 (12:42 +0100)
committerStephen Sinclair <radarsat1@gmail.com>
Thu, 24 Jan 2019 11:42:57 +0000 (12:42 +0100)
configure.ac

index 266ff488fd4fd70c479a978fe055981f6369f261..9957abae19fed2ae8a7d41eb731c4c6be68f8883 100644 (file)
@@ -259,7 +259,15 @@ AS_CASE(["$systems"], [*" asio "*], [
 ])
 
 AS_CASE(["$systems"], [*" ds "*], [
-  AC_CHECK_HEADERS(mmsystem.h mmreg.h dsound.h,
+  AC_CHECK_HEADERS(windows.h)
+  AC_CHECK_HEADERS(mmsystem.h mmreg.h dsound.h, [], [],
+[#ifdef HAVE_WINDOWS_H
+# include <windows.h>
+#endif])
+  AS_IF([test "x$ac_cv_header_windows_h" = xyes \
+      && test "x$ac_cv_header_mmsystem_h" = xyes \
+      && test "x$ac_cv_header_mmreg_h" = xyes \
+      && test "x$ac_cv_header_dsound_h" = xyes],
     [api="$api -D__WINDOWS_DS__"
      need_ole32=yes
      found="$found DirectSound"
@@ -267,7 +275,15 @@ AS_CASE(["$systems"], [*" ds "*], [
 ])
 
 AS_CASE(["$systems"], [*" wasapi "*], [
-  AC_CHECK_HEADERS(windows.h audioclient.h avrt.h mmdeviceapi.h,
+  AC_CHECK_HEADERS(windows.h)
+  AC_CHECK_HEADERS(audioclient.h avrt.h mmdeviceapi.h, [], [],
+[#ifdef HAVE_WINDOWS_H
+# include <windows.h>
+#endif])
+  AS_IF([test "x$ac_cv_header_windows_h" = xyes \
+      && test "x$ac_cv_header_audioclient_h" = xyes \
+      && test "x$ac_cv_header_avrt_h" = xyes \
+      && test "x$ac_cv_header_mmdeviceapi_h" = xyes],
     [api="$api -D__WINDOWS_WASAPI__"
      CPPFLAGS="-I$srcdir/include $CPPFLAGS"
      need_ole32=yes