bugfixes
[swftools.git] / m4 / avi2swf.m4
index 9339f7d..7ba5532 100644 (file)
@@ -1,15 +1,45 @@
 AC_DEFUN(RFX_CHECK_AVI2SWF,
 [
+
 AC_CHECK_PROGS(AVIFILE_CONFIG, avifile-config)
+
+if test "x$AVIFILE_CONFIG" '!=' "x";then
+    OLDCPPFLAGS="$CPPFLAGS"
+    # temporarily add avifile paths to CPPFLAGS...
+    CPPFLAGS="$CPPFLAGS $CXXFLAGS "`$AVIFILE_CONFIG --cflags`
+    AC_CHECK_HEADERS(avifile/version.h version.h)
+    # ... and reset
+    CPPFLAGS="$OLDCPPFLAGS"
+fi
+
 AC_MSG_CHECKING([whether we can compile the avifile test program])
 
+if test "x${ac_cv_header_version_h}" '=' "xyes";then
+    HAVE_VERSION_H_DEFINE='#define HAVE_VERSION_H'
+fi
+if test "x${ac_cv_header_avifile_version_h}" '=' "xyes";then
+    HAVE_AVIFILE_VERSION_H_DEFINE='#define HAVE_AVIFILE_VERSION_H'
+fi
+
 cat > conftest.cpp << EOF
-#include <avifile/version.h>
+
+// hack- we can't yet access the variables in config.h (because it hasn't been generated yet),
+// so we have to introduce them this way
+$HAVE_VERSION_H_DEFINE
+$HAVE_AVIFILE_VERSION_H_DEFINE
+
+#ifdef HAVE_VERSION_H
+  #include <version.h>
+#endif
+#ifdef HAVE_AVIFILE_VERSION_H
+  #include <avifile/version.h>
+#endif
+
 #if (AVIFILE_MAJOR_VERSION == 0) && (AVIFILE_MINOR_VERSION>=6) 
    #include <avifile.h>
    #include <aviplay.h>
-   #include <fourcc.h>
-   #include <creators.h>
+   #include <avm_fourcc.h>
+   #include <avm_creators.h>
    #include <StreamInfo.h>
    #define VERSION6
 #else
@@ -22,7 +52,7 @@ cat > conftest.cpp << EOF
    #define Bpp bpp
 #endif
 
-int test()
+void test()
 {
   IAviReadFile* player;
   IAviReadStream* astream;
@@ -72,8 +102,10 @@ int main (int argc, char*argv[])
 EOF
 
 if test "x$AVIFILE_CONFIG" '!=' "x";then
-    ac_link='$CXX $CPPFLAGS $CXXFLAGS `$AVIFILE_CONFIG --cflags` `$AVIFILE_CONFIG --libs` conftest.cpp -o conftest${ac_exeext}'
-    if { (eval echo avi2swf.m4:71: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && ./conftest${ac_exeext}; then
+    AVIFILE_LIBS=`$AVIFILE_CONFIG --libs`
+    AVIFILE_CFLAGS=`$AVIFILE_CONFIG --cflags`
+    avifile_link='$CXX $CPPFLAGS $CXXFLAGS $AVIFILE_CFLAGS conftest.cpp $AVIFILE_LIBS -o conftest${ac_exeext}'
+    if { (eval echo avi2swf.m4:71: \"$avifile_link\") 1>&5; (eval $avifile_link) 2>&5; } && test -s conftest${ac_exeext} && ./conftest${ac_exeext}; then
       AC_MSG_RESULT(yes)
       AVIFILE=true
       export AVIFILE