added win32 cross compile support
authorFabrice Bellard <fabrice@bellard.org>
Wed, 15 Aug 2001 22:29:44 +0000 (22:29 +0000)
committerFabrice Bellard <fabrice@bellard.org>
Wed, 15 Aug 2001 22:29:44 +0000 (22:29 +0000)
Originally committed as revision 107 to svn://svn.ffmpeg.org/ffmpeg/trunk

Makefile
configure
ffmpeg.c

index d810a2c..e93365b 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -10,7 +10,13 @@ CFLAGS+=-p
 LDFLAGS+=-p
 endif
 
-PROG= ffmpeg ffserver
+ifeq ($(CONFIG_WIN32),yes)
+EXE=.exe
+PROG=ffmpeg$(EXE)
+else
+EXT=
+PROG=ffmpeg ffserver
+endif
 
 all: lib $(PROG)
 
@@ -18,14 +24,14 @@ lib:
        $(MAKE) -C libavcodec all
        $(MAKE) -C libav all
 
-ffmpeg: ffmpeg.o libav/libav.a libavcodec/libavcodec.a
-       gcc $(LDFLAGS) -o $@ $^ -lm
+ffmpeg$(EXE): ffmpeg.o libav/libav.a libavcodec/libavcodec.a
+       $(CC) $(LDFLAGS) -o $@ $^ -lm
 
-ffserver: ffserver.o libav/libav.a libavcodec/libavcodec.a
-       gcc $(LDFLAGS) -o $@ $^ -lm
+ffserver$(EXE): ffserver.o libav/libav.a libavcodec/libavcodec.a
+       $(CC) $(LDFLAGS) -o $@ $^ -lm
 
 %.o: %.c
-       gcc $(CFLAGS) -c -o $@ $< 
+       $(CC) $(CFLAGS) -c -o $@ $< 
 
 install: all
        install -s -m 755 $(PROG) $(prefix)/bin
index 54435a0..468774d 100755 (executable)
--- a/configure
+++ b/configure
@@ -21,6 +21,7 @@ esac
 gprof="no"
 mp3lib="yes"
 grab="yes"
+win32="no"
 
 if [ "$1" = "-h" -o "$1" = "--help" ] ; then
 cat << EOF
@@ -37,6 +38,7 @@ echo "  --disable-mmx           disable mmx usage"
 echo "  --enable-gprof          enable profiling with gprof [$gprof]"
 echo "  --disable-mp3lib        disable mp3 lib compiling"
 echo "  --disable-grab          disable audio/video grabbing code"
+echo "  --enable-win32          enable win32 cross compile"
 exit 1
 fi
 
@@ -56,9 +58,23 @@ for opt do
   ;;
   --disable-grab) grab="no"
   ;;
+  --enable-win32) win32="yes"
+  ;;
   esac
 done
 
+# Checking for CFLAGS
+if test -z "$CFLAGS"; then
+    CFLAGS="-O2"
+fi
+
+if [ "$win32" = "yes" ] ; then
+    cross_prefix="i386-mingw32msvc-"
+    cc="${cross_prefix}gcc"
+    ar="${cross_prefix}ar"
+    grab="no"
+fi
+
 echo "Install prefix   $prefix"
 echo "C compiler       $cc"
 echo "CPU              $cpu"
@@ -71,11 +87,6 @@ echo "Creating config.mak and config.h"
 echo "# Automatically generated by configure - do not modify" > config.mak
 echo "/* Automatically generated by configure - do not modify */" > config.h
 
-# Checking for CFLAGS
-if test -z "$CFLAGS"; then
- CFLAGS="-O2"
-fi
-
 echo "prefix=$prefix" >> config.mak
 echo "MAKE=make" >> config.mak
 echo "CC=$cc" >> config.mak
@@ -120,3 +131,8 @@ if [ "$grab" = "yes" ] ; then
   echo "#define CONFIG_GRAB 1" >> config.h
   echo "CONFIG_GRAB=yes" >> config.mak
 fi
+
+if [ "$win32" = "yes" ] ; then
+  echo "#define CONFIG_WIN32 1" >> config.h
+  echo "CONFIG_WIN32=yes" >> config.mak
+fi
index 9f97111..b9812b4 100644 (file)
--- a/ffmpeg.c
+++ b/ffmpeg.c
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <errno.h>
+#define HAVE_AV_CONFIG_H
+#include "avformat.h"
+
 #ifndef CONFIG_WIN32
-#include "config.h"
 #include <unistd.h>
 #include <fcntl.h>
 #include <sys/ioctl.h>
@@ -33,7 +31,6 @@
 #include <ctype.h>
 #endif
 
-#include "avformat.h"
 
 #define MAXINT64 INT64_C(0x7fffffffffffffff)