added win32 cross compile support

Originally committed as revision 107 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Fabrice Bellard 2001-08-15 22:29:44 +00:00
parent 1705679ee6
commit daf8e9557d
3 changed files with 36 additions and 17 deletions

View File

@ -10,7 +10,13 @@ CFLAGS+=-p
LDFLAGS+=-p LDFLAGS+=-p
endif endif
PROG= ffmpeg ffserver ifeq ($(CONFIG_WIN32),yes)
EXE=.exe
PROG=ffmpeg$(EXE)
else
EXT=
PROG=ffmpeg ffserver
endif
all: lib $(PROG) all: lib $(PROG)
@ -18,14 +24,14 @@ lib:
$(MAKE) -C libavcodec all $(MAKE) -C libavcodec all
$(MAKE) -C libav all $(MAKE) -C libav all
ffmpeg: ffmpeg.o libav/libav.a libavcodec/libavcodec.a ffmpeg$(EXE): ffmpeg.o libav/libav.a libavcodec/libavcodec.a
gcc $(LDFLAGS) -o $@ $^ -lm $(CC) $(LDFLAGS) -o $@ $^ -lm
ffserver: ffserver.o libav/libav.a libavcodec/libavcodec.a ffserver$(EXE): ffserver.o libav/libav.a libavcodec/libavcodec.a
gcc $(LDFLAGS) -o $@ $^ -lm $(CC) $(LDFLAGS) -o $@ $^ -lm
%.o: %.c %.o: %.c
gcc $(CFLAGS) -c -o $@ $< $(CC) $(CFLAGS) -c -o $@ $<
install: all install: all
install -s -m 755 $(PROG) $(prefix)/bin install -s -m 755 $(PROG) $(prefix)/bin

26
configure vendored
View File

@ -21,6 +21,7 @@ esac
gprof="no" gprof="no"
mp3lib="yes" mp3lib="yes"
grab="yes" grab="yes"
win32="no"
if [ "$1" = "-h" -o "$1" = "--help" ] ; then if [ "$1" = "-h" -o "$1" = "--help" ] ; then
cat << EOF cat << EOF
@ -37,6 +38,7 @@ echo " --disable-mmx disable mmx usage"
echo " --enable-gprof enable profiling with gprof [$gprof]" echo " --enable-gprof enable profiling with gprof [$gprof]"
echo " --disable-mp3lib disable mp3 lib compiling" echo " --disable-mp3lib disable mp3 lib compiling"
echo " --disable-grab disable audio/video grabbing code" echo " --disable-grab disable audio/video grabbing code"
echo " --enable-win32 enable win32 cross compile"
exit 1 exit 1
fi fi
@ -56,9 +58,23 @@ for opt do
;; ;;
--disable-grab) grab="no" --disable-grab) grab="no"
;; ;;
--enable-win32) win32="yes"
;;
esac esac
done 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 "Install prefix $prefix"
echo "C compiler $cc" echo "C compiler $cc"
echo "CPU $cpu" 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.mak
echo "/* Automatically generated by configure - do not modify */" > config.h 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 "prefix=$prefix" >> config.mak
echo "MAKE=make" >> config.mak echo "MAKE=make" >> config.mak
echo "CC=$cc" >> config.mak echo "CC=$cc" >> config.mak
@ -120,3 +131,8 @@ if [ "$grab" = "yes" ] ; then
echo "#define CONFIG_GRAB 1" >> config.h echo "#define CONFIG_GRAB 1" >> config.h
echo "CONFIG_GRAB=yes" >> config.mak echo "CONFIG_GRAB=yes" >> config.mak
fi fi
if [ "$win32" = "yes" ] ; then
echo "#define CONFIG_WIN32 1" >> config.h
echo "CONFIG_WIN32=yes" >> config.mak
fi

View File

@ -16,12 +16,10 @@
* along with this program; if not, write to the Free Software * along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/ */
#include <stdlib.h> #define HAVE_AV_CONFIG_H
#include <stdio.h> #include "avformat.h"
#include <string.h>
#include <errno.h>
#ifndef CONFIG_WIN32 #ifndef CONFIG_WIN32
#include "config.h"
#include <unistd.h> #include <unistd.h>
#include <fcntl.h> #include <fcntl.h>
#include <sys/ioctl.h> #include <sys/ioctl.h>
@ -33,7 +31,6 @@
#include <ctype.h> #include <ctype.h>
#endif #endif
#include "avformat.h"
#define MAXINT64 INT64_C(0x7fffffffffffffff) #define MAXINT64 INT64_C(0x7fffffffffffffff)