Newer
Older
Fabrice Bellard
committed
#
# ffmpeg configure script (c) 2000, 2001, 2002 Fabrice Bellard
Fabrice Bellard
committed
#
# make sure we are running under a compatible shell
unset foo
(: ${foo%%bar}) 2>/dev/null && ! (: ${foo?}) 2>/dev/null
if test "$?" != 0; then
if test "x$FFMPEG_CONFIGURE_EXEC" = x; then
FFMPEG_CONFIGURE_EXEC=1
export FFMPEG_CONFIGURE_EXEC
exec bash "$0" "$@"
exec ksh "$0" "$@"
exec /usr/xpg4/bin/sh "$0" "$@"
fi
echo "No compatible shell script interpreter found."
exit 1
fi
show_help(){
echo "Usage: configure [options]"
echo "Options: [defaults in brackets after descriptions]"
echo
echo "Standard options:"
echo " --help print this message"
echo " --log[=FILE|yes|no] log tests and output to FILE [config.err]"
echo " --prefix=PREFIX install in PREFIX [$PREFIX]"
echo " --libdir=DIR install libs in DIR [PREFIX/lib]"
Diego Biurrun
committed
echo " --shlibdir=DIR install shared libs in DIR [PREFIX/lib]"
echo " --incdir=DIR install includes in DIR [PREFIX/include/ffmpeg]"
echo " --mandir=DIR install man page in DIR [PREFIX/man]"
echo " --enable-mp3lame enable MP3 encoding via libmp3lame [default=no]"
Oded Shimon
committed
echo " --enable-libnut enable NUT support via libnut [default=no]"
echo " --enable-libogg enable Ogg support via libogg [default=no]"
echo " --enable-vorbis enable Vorbis support via libvorbis [default=no]"
echo " --enable-faad enable FAAD support via libfaad [default=no]"
echo " --enable-faadbin build FAAD support with runtime linking [default=no]"
echo " --enable-faac enable FAAC support via libfaac [default=no]"
echo " --enable-libgsm enable GSM support via libgsm [default=no]"
echo " --enable-xvid enable XviD support via xvidcore [default=no]"
echo " --enable-x264 enable H.264 encoding via x264 [default=no]"
echo " --enable-mingw32 enable MinGW native/cross Windows compile"
echo " --enable-mingwce enable MinGW native/cross WinCE compile"
echo " --enable-a52 enable GPLed A52 support [default=no]"
echo " --enable-a52bin open liba52.so.0 at runtime [default=no]"
echo " --enable-dts enable GPLed DTS support [default=no]"
echo " --enable-pp enable GPLed postprocessing support [default=no]"
echo " --enable-static build static libraries [default=yes]"
echo " --disable-static do not build static libraries [default=no]"
echo " --enable-shared build shared libraries [default=no]"
echo " --disable-shared do not build shared libraries [default=yes]"
echo " --enable-amr_nb enable amr_nb float audio codec"
echo " --enable-amr_nb-fixed use fixed point for amr-nb codec"
echo " --enable-amr_wb enable amr_wb float audio codec"
echo " --enable-amr_if2 enable amr_wb IF2 audio codec"
echo " --enable-sunmlib use Sun medialib [default=no]"
echo " --enable-pthreads use pthreads [default=no]"
echo " --enable-dc1394 enable IIDC-1394 grabbing using libdc1394"
echo " and libraw1394 [default=no]"
echo " --enable-swscaler software scaler support [default=no]"
echo " --enable-avisynth allow reading AVISynth script files [default=no]"
echo " --enable-gpl allow use of GPL code, the resulting libav*"
echo " and ffmpeg will be under GPL [default=no]"
echo ""
echo "Advanced options (experts only):"
echo " --source-path=PATH path to source code [$source_path]"
echo " --cross-prefix=PREFIX use PREFIX for compilation tools [$cross_prefix]"
echo " --cross-compile assume a cross-compiler is used"
echo " --cc=CC use C compiler CC [$cc]"
echo " --make=MAKE use specified make [$make]"
echo " --extra-cflags=ECFLAGS add ECFLAGS to CFLAGS [$CFLAGS]"
echo " --extra-ldflags=ELDFLAGS add ELDFLAGS to LDFLAGS [$LDFLAGS]"
echo " --extra-libs=ELIBS add ELIBS [$ELIBS]"
echo " --build-suffix=SUFFIX suffix for application specific build []"
echo " --arch=ARCH select architecture [$arch]"
Guillaume Poirier
committed
echo " --cpu=CPU selects the minimum cpu required (affects
instruction selection, may crash on older CPUs)"
echo " --powerpc-perf-enable enable performance report on PPC"
echo " (requires enabling PMC)"
echo " --disable-mmx disable MMX usage"
echo " --disable-armv5te disable armv5te usage"
echo " --disable-iwmmxt disable iwmmxt usage"
echo " --disable-altivec disable AltiVec usage"
echo " --disable-audio-oss disable OSS audio support [default=no]"
echo " --disable-audio-beos disable BeOS audio support [default=no]"
echo " --disable-v4l disable video4linux grabbing [default=no]"
echo " --disable-v4l2 disable video4linux2 grabbing [default=no]"
echo " --disable-bktr disable bktr video grabbing [default=no]"
echo " --disable-dv1394 disable DV1394 grabbing [default=no]"
echo " --disable-network disable network support [default=no]"
echo " --disable-ipv6 disable ipv6 support [default=no]"
echo " --disable-zlib disable zlib [default=no]"
echo " --disable-vhook disable video hooking support"
echo " --enable-gprof enable profiling with gprof [$gprof]"
echo " --disable-debug disable debugging symbols"
echo " --disable-opts disable compiler optimizations"
echo " --enable-extra-warnings enable more compiler warnings"
echo " --disable-mpegaudio-hp faster (but less accurate)"
echo " MPEG audio decoding [default=no]"
echo " --disable-protocols disable I/O protocols support [default=no]"
echo " --disable-ffmpeg disable ffmpeg build"
echo " --disable-ffserver disable ffserver build"
echo " --disable-ffplay disable ffplay build"
echo " --enable-small optimize for size instead of speed"
echo " --enable-memalign-hack emulate memalign, interferes with memory debuggers"
echo " --disable-strip disable stripping of executables and shared libraries"
echo " --disable-encoder=NAME disables encoder NAME"
echo " --enable-encoder=NAME enables encoder NAME"
echo " --disable-decoder=NAME disables decoder NAME"
echo " --enable-decoder=NAME enables decoder NAME"
echo " --disable-encoders disables all encoders"
echo " --disable-decoders disables all decoders"
echo " --disable-muxer=NAME disables muxer NAME"
echo " --enable-muxer=NAME enables muxer NAME"
echo " --disable-muxers disables all muxers"
echo " --disable-demuxer=NAME disables demuxer NAME"
echo " --enable-demuxer=NAME enables demuxer NAME"
echo " --disable-demuxers disables all demuxers"
echo " --enable-parser=NAME enables parser NAME"
echo " --disable-parser=NAME disables parser NAME"
echo " --disable-parsers disables all parsers"
echo ""
echo "NOTE: Object files are built at the place where configure is launched."
exit 1
}
log(){
echo "$@" >>$logfile
}
log_file(){
log BEGIN $1
cat -n $1 >>$logfile
log END $1
}
echolog(){
echo "$@"
}
die(){
echolog "$@"
cat <<EOF
If you think configure made a mistake, make sure you are using the latest
version from SVN. If the latest version fails, report the problem to the
ffmpeg-devel@mplayerhq.hu mailing list or IRC #ffmpeg on irc.freenode.net.
EOF
if enabled logging; then
cat <<EOF
Include the log file "$logfile" produced by configure as this will help
solving the problem.
EOF
else
cat <<EOF
Rerun configure with logging enabled (do not use --log=no), and include the
log this produces with your report.
EOF
fi
rm -f $TMPC $TMPO $TMPE $TMPS $TMPH
exit 1
}
toupper(){
echo "$@" | tr '[a-z]' '[A-Z]'
}
set_all(){
value=$1
shift
for var in $*; do
eval $var=$value
done
}
enable(){
set_all yes $*
}
disable(){
set_all no $*
}
enabled(){
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
eval test "x\$$1" = "xyes"
}
enabled_all(){
for opt; do
enabled $opt || return 1
done
}
enabled_any(){
for opt; do
enabled $opt && return 0
done
}
print_config(){
pfx=$1
header=$2
makefile=$3
shift 3
for cfg; do
if enabled $cfg; then
ucname="${pfx}`toupper $cfg`"
echo "#define ${ucname} 1" >> $header
echo "${ucname}=yes" >> $makefile
fi
done
}
flags_saved(){
(: ${SAVE_CFLAGS?}) 2>/dev/null
}
flags_saved && return
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
SAVE_CFLAGS="$CFLAGS"
SAVE_LDFLAGS="$LDFLAGS"
SAVE_extralibs="$extralibs"
}
restore_flags(){
CFLAGS="$SAVE_CFLAGS"
LDFLAGS="$SAVE_LDFLAGS"
extralibs="$SAVE_extralibs"
unset SAVE_CFLAGS
unset SAVE_LDFLAGS
unset SAVE_extralibs
}
temp_cflags(){
save_flags
CFLAGS="$CFLAGS $*"
}
temp_ldflags(){
save_flags
LDFLAGS="$LDFLAGS $*"
}
temp_extralibs(){
save_flags
extralibs="$extralibs $*"
}
append(){
var=$1
shift
flags_saved && eval "SAVE_$var=\"\$SAVE_$var $*\""
eval "$var=\"\$$var $*\""
}
add_cflags(){
append CFLAGS "$@"
}
add_ldflags(){
append LDFLAGS "$@"
}
add_extralibs(){
append extralibs "$@"
}
check_cmd(){
"$@" >>$logfile 2>&1
log check_cc "$@"
cat >$TMPC
log_file $TMPC
check_cmd $cc $CFLAGS "$@" -c -o $TMPO $TMPC
}
check_cpp(){
log check_cpp "$@"
log_file $TMPC
check_cmd $cc $CFLAGS "$@" -E -o $TMPO $TMPC
log check_ld "$@"
check_cmd $cc $LDFLAGS "$@" -o $TMPE $TMPO $extralibs
log check_cflags "$@"
check_cc "$@" <<EOF && add_cflags "$@"
int x;
EOF
}
check_ldflags(){
log check_ldflags "$@"
check_ld "$@" <<EOF && add_ldflags "$@"
int main(){
return 0;
}
EOF
}
check_header(){
log check_header "$@"
check_cpp "$@" <<EOF
#include <$header>
int x;
EOF
}
check_func(){
log check_func "$@"
func=$1
shift
check_ld "$@" <<EOF
extern int $func();
int main(){
$func();
}
EOF
}
check_lib(){
log check_lib "$@"
header="$1"
func="$2"
shift 2
temp_extralibs "$@"
check_header $header && check_func $func && add_extralibs "$@"
err=$?
restore_flags
return $err
}
check_ld "$@" && { test "$cross_compile" = yes || $TMPE >>$logfile 2>&1; }
}
require(){
name="$1"
header="$2"
func="$3"
shift 3
check_lib $header $func "$@" || die "ERROR: $name not found"
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
CONFIG_LIST='
encoders
decoders
parsers
muxers
demuxers
a52
a52bin
amr
amr_nb
amr_nb_fixed
amr_wb
audio_beos
audio_oss
avisynth
beos_netserver
bktr
dc1394
dts
dv1394
faac
faad
faadbin
ffmpeg
ffplay
ffserver
gpl
ipv6
libgsm
libnut
libogg
libvorbis
memalign_hack
mp3lame
mpegaudio_hp
network
pp
protocols
swscaler
vhook
video4linux
video4linux2
x264
xvid
zlib
'
HAVE_LIST='
altivec_h
byteswap_h
dcbzl
dlfcn
dlopen
freetype2
gprof
imlib2
localtime_r
lrintf
malloc_h
memalign
mlib
sdl
sdl_video_size
Fabrice Bellard
committed
# set temporary file name
Fabrice Bellard
committed
TMPDIR1="${TMPDIR}"
Fabrice Bellard
committed
TMPDIR1="${TEMPDIR}"
Fabrice Bellard
committed
TMPDIR1="/tmp"
Fabrice Bellard
committed
TMPC="${TMPDIR1}/ffmpeg-conf-${RANDOM}-$$-${RANDOM}.c"
TMPO="${TMPDIR1}/ffmpeg-conf-${RANDOM}-$$-${RANDOM}.o"
TMPE="${TMPDIR1}/ffmpeg-conf-${RANDOM}-$$-${RANDOM}"
Fabrice Bellard
committed
TMPS="${TMPDIR1}/ffmpeg-conf-${RANDOM}-$$-${RANDOM}.S"
TMPH="${TMPDIR1}/ffmpeg-conf-${RANDOM}-$$-${RANDOM}.h"
logging="yes"
logfile="config.err"
PREFIX="/usr/local"
libdir='${PREFIX}/lib'
Diego Biurrun
committed
shlibdir="$libdir"
incdir='${PREFIX}/include/ffmpeg'
mandir='${PREFIX}/man'
bindir='${PREFIX}/bin'
Fabrice Bellard
committed
cross_prefix=""
cross_compile="no"
Fabrice Bellard
committed
strip="strip"
arch=`uname -m`
Guillaume Poirier
committed
cpu="generic"
powerpc_perf="no"
Fabrice Bellard
committed
mmx="default"
Guillaume Poirier
committed
cmov="no"
cmov_is_fast="no"
Gildas Bazin
committed
iwmmxt="default"
Brian Foley
committed
altivec="default"
mmi="default"
case "$arch" in
i386|i486|i586|i686|i86pc|BePC)
arch="x86_32"
x86_64|amd64)
Reimar Döffinger
committed
canon_arch="`$cc -dumpmachine | sed -e 's,\([^-]*\)-.*,\1,'`"
if [ x"$canon_arch" = x"x86_64" -o x"$canon_arch" = x"amd64" ]; then
if [ -z "`echo $CFLAGS | grep -- -m32`" ]; then
arch="x86_64"
fi
Aurelien Jacobs
committed
fi
;;
# armv4l is a subset of armv[567]*l
arm|armv[4567]*l)
arch="armv4l"
Nick Kurshev
committed
alpha)
arch="alpha"
Nick Kurshev
committed
;;
"Power Macintosh"|ppc|ppc64|powerpc)
arch="powerpc"
;;
arch="mips"
;;
James Morrison
committed
sun4u|sparc64)
arch="sparc64"
;;
James Morrison
committed
sparc)
arch="sparc"
James Morrison
committed
;;
arch="sh4"
parisc|parisc64)
arch="parisc"
;;
s390|s390x)
arch="s390"
;;
m68k)
arch="m68k"
;;
ia64)
arch="ia64"
arch="bfin"
arch="unknown"
video4linux="yes"
video4linux2="yes"
bktr="no"
audio_beos="no"
zlib="yes"
mp3lame="no"
Oded Shimon
committed
libnut="no"
libogg="no"
Zdenek Kabelac
committed
faad="no"
faadbin="no"
Michael Niedermayer
committed
faac="no"
xvid="no"
x264="no"
dts="no"
mingw32="no"
os2="no"
lstatic="yes"
optimize="yes"
debug="yes"
extrawarnings="no"
Michel Bardiaux
committed
dostrip="yes"
installstrip="-s"
Fabrice Bellard
committed
bigendian="no"
Chris Flerackers
committed
inttypes="yes"
emu_fast_int="no"
avisynth="no"
dlfcn="no"
dlopen="no"
Fabrice Bellard
committed
mpegaudio_hp="yes"
SHFLAGS='-shared -Wl,-soname,$@'
VHOOKSHFLAGS='$(SHFLAGS)'
beos_netserver="no"
need_inet_aton="no"
protocols="yes"
LIBOBJFLAGS=""
LDLATEFLAGS='-Wl,-rpath-link,\$(BUILD_ROOT)/libavcodec -Wl,-rpath-link,\$(BUILD_ROOT)/libavformat -Wl,-rpath-link,\$(BUILD_ROOT)/libavutil'
FFSERVERLDFLAGS=-Wl,-E
Jacob Meuser
committed
LDCONFIG="ldconfig"
LIBPREF="lib"
LIBSUF=".a"
Diego Biurrun
committed
LIB='$(LIBPREF)$(NAME)$(LIBSUF)'
SLIBPREF="lib"
SLIBSUF=".so"
Diego Biurrun
committed
SLIBNAME='$(SLIBPREF)$(NAME)$(SLIBSUF)'
SLIBNAME_WITH_VERSION='$(SLIBNAME).$(LIBVERSION)'
SLIBNAME_WITH_MAJOR='$(SLIBNAME).$(LIBMAJOR)'
BUILDSUF=""
amr_wb="no"
Torsten Martinsen
committed
amr_if2="no"
mlib="no"
Michael Niedermayer
committed
gpl="no"
memalign_hack="no"
asmalign_pot="unknown"
LIB_INSTALL_EXTRA_CMD='$(RANLIB) "$(libdir)/$(LIB)"'
# OS specific
targetos=`uname -s`
case $targetos in
BeOS)
PREFIX="/boot/home/config"
# helps building libavcodec
add_cflags "-DPIC -fomit-frame-pointer"
# 3 gcc releases known for BeOS, each with ugly bugs
gcc_version="`$cc -v 2>&1 | grep version | cut -d ' ' -f3-`"
case "$gcc_version" in
2.9-beos-991026*|2.9-beos-000224*) echo "R5/GG gcc"
mmx="no"
;;
*20010315*) echo "BeBits gcc"
add_cflags "-fno-expensive-optimizations"
;;
esac
SHFLAGS=-nostart
video4linux="no"
video4linux2="no"
audio_beos="yes"
# no need for libm, but the inet stuff
# Check for BONE
if (echo $BEINCLUDES|grep 'headers/be/bone' >/dev/null); then
extralibs="-lbind -lsocket"
else
beos_netserver="yes"
need_inet_aton="yes"
extralibs="-lnet"
video4linux="no"
video4linux2="no"
FFSERVERLDFLAGS=""
SHFLAGS="-shared -Wl,-h,\$@"
need_inet_aton="yes"
add_extralibs "-lsocket -lnsl"
video4linux="no"
video4linux2="no"
bktr="yes"
audio_oss="yes"
dv1394="no"
make="gmake"
add_extralibs "-lossaudio"
video4linux="no"
video4linux2="no"
bktr="yes"
audio_oss="yes"
dv1394="no"
make="gmake"
LIBOBJFLAGS="\$(PIC)"
LDCONFIG="ldconfig -m \$(shlibdir)"
add_extralibs "-lossaudio"
video4linux="no"
video4linux2="no"
bktr="yes"
add_cflags "-pthread"
video4linux="no"
video4linux2="no"
bktr="yes"
audio_oss="yes"
dv1394="no"
add_cflags "-pthread"
video4linux="no"
video4linux2="no"
bktr="yes"
extralibs="-lpoll -lgnugetopt -lm"
make="gmake"
Steven M. Schultz
committed
strip="strip -d"
installstrip=""
Darwin)
video4linux="no"
video4linux2="no"
audio_oss="no"
SHFLAGS="-dynamiclib -Wl,-single_module -Wl,-install_name,\$(shlibdir)/\$(SLIBNAME),-current_version,\$(SPPVERSION),-compatibility_version,\$(SPPVERSION)"
VHOOKSHFLAGS='-dynamiclib -Wl,-single_module -flat_namespace -undefined suppress -Wl,-install_name,$(shlibdir)/vhook/$@'
extralibs=""
installstrip=""
FFLDFLAGS="-Wl,-dynamic,-search_paths_first"
SLIBNAME_WITH_FULLVERSION='$(SLIBPREF)$(NAME).$(LIBVERSION)$(SLIBSUF)'
SLIBNAME_WITH_MAJOR='$(SLIBPREF)$(NAME).$(LIBMAJOR)$(SLIBSUF)'
FFSERVERLDFLAGS=-Wl,-bind_at_load
LIB_INSTALL_EXTRA_CMD='$(RANLIB) "$(libdir)/$(LIB)"'
;;
MINGW32*)
# Note: the rest of the mingw32 config is done afterwards as mingw32
# can be forced on the command line for Linux cross compilation.
mingw32="yes"
;;
Felix Bünemann
committed
CYGWIN*)
Víctor Paesa
committed
shlibdir='${PREFIX}/bin'
video4linux="no"
video4linux2="no"
Felix Bünemann
committed
audio_oss="yes"
VHOOKSHFLAGS='-shared -L$(BUILD_ROOT)/libavformat -L$(BUILD_ROOT)/libavcodec -L$(BUILD_ROOT)/libavutil'
VHOOKLIBS='-lavformat$(BUILDSUF) -lavcodec$(BUILDSUF) -lavutil$(BUILDSUF) $(EXTRALIBS)'
Felix Bünemann
committed
extralibs=""
EXESUF=".exe"
Víctor Paesa
committed
SLIBPREF="cyg"
SLIBSUF=".dll"
SLIBNAME_WITH_VERSION='$(SLIBPREF)$(NAME)-$(LIBVERSION)$(SLIBSUF)'
SLIBNAME_WITH_MAJOR='$(SLIBPREF)$(NAME)-$(LIBMAJOR)$(SLIBSUF)'
SHFLAGS='-shared -Wl,--out-implib=lib$(NAME).dll.a'
Felix Bünemann
committed
;;
Linux)
LDLATEFLAGS="-Wl,--as-needed $LDLATEFLAGS"
Michel Bardiaux
committed
IRIX*)
Michel Bardiaux
committed
ranlib="echo ignoring ranlib"
video4linux="no"
video4linux2="no"
Michel Bardiaux
committed
audio_oss="no"
make="gmake"
;;
OS/2)
TMPE=$TMPE".exe"
ar="emxomfar -p128"
Slavik Gnatenko
committed
ranlib="echo ignoring ranlib"
strip="echo ignoring strip"
add_cflags "-Zomf"
FFLDFLAGS="-Zomf -Zstack 16384 -s"
SHFLAGS="-Zdll -Zomf"
FFSERVERLDFLAGS=""
LIBPREF=""
LIBSUF=".lib"
SLIBPREF=""
SLIBSUF=".dll"
extralibs=""
pkg_requires=""
video4linux="no"
video4linux2="no"
audio_oss="no"
ffserver="no"
os2="yes"
;;
*)
targetos="${targetos}-UNKNOWN"
;;
Fabrice Bellard
committed
# find source path
source_path="`dirname \"$0\"`"
Fabrice Bellard
committed
source_path_used="yes"
if test -z "$source_path" -o "$source_path" = "." ; then
Fabrice Bellard
committed
source_path_used="no"
else
source_path="`cd \"$source_path\"; pwd`"
echo "$source_path" | grep -q '[[:blank:]]' &&
die "Out of tree builds are impossible with whitespace in source path."
if test x"$1" = x"-h" -o x"$1" = x"--help" ; then
show_help
fi
Michel Bardiaux
committed
FFMPEG_CONFIGURATION=" "
for opt do
FFMPEG_CONFIGURATION="$FFMPEG_CONFIGURATION""$opt "
done
ENCODER_LIST=`grep 'register_avcodec(&[a-z0-9_]*_encoder)' "$source_path/libavcodec/allcodecs.c" | sed 's/.*&\(.*\)).*/\1/'`
DECODER_LIST=`grep 'register_avcodec(&[a-z0-9_]*_decoder)' "$source_path/libavcodec/allcodecs.c" | sed 's/.*&\(.*\)).*/\1/'`
PARSER_LIST=`grep 'av_register_codec_parser(&[a-z]' "$source_path/libavcodec/allcodecs.c" | sed 's/.*&\(.*\)).*/\1/'`
MUXER_LIST=`grep 'av_register_output_format(&[a-z]' "$source_path/libavformat/allformats.c" | sed 's/.*&\(.*\)).*/\1/'`
DEMUXER_LIST=`grep 'av_register_input_format(&[a-z]' "$source_path/libavformat/allformats.c" | sed 's/.*&\(.*\)).*/\1/'`
Michael Niedermayer
committed
enable $ENCODER_LIST $DECODER_LIST $PARSER_LIST $MUXER_LIST $DEMUXER_LIST
--log)
;;
;;
--prefix=*) PREFIX="$optval"; force_prefix=yes
;;
Diego Biurrun
committed
--shlibdir=*) shlibdir="$optval"
;;
Fabrice Bellard
committed
;;
Fabrice Bellard
committed
;;
--cross-compile) cross_compile=yes
;;
--extra-cflags=*) add_cflags "$optval"
Fabrice Bellard
committed
;;
--extra-ldflags=*) add_ldflags "$optval"
Fabrice Bellard
committed
;;
--extra-libs=*) add_extralibs "$optval"
Fabrice Bellard
committed
;;
--arch=*) arch="$optval"
Guillaume Poirier
committed
--cpu=*) cpu="$optval"
Michael Niedermayer
committed
;;
--powerpc-perf-enable) powerpc_perf="yes"
;;
--disable-armv5te) armv5te="no"
;;
Gildas Bazin
committed
--disable-iwmmxt) iwmmxt="no"
;;
Brian Foley
committed
--disable-altivec) altivec="no"
;;
--disable-v4l) video4linux="no"
--disable-v4l2) video4linux2="no"
--disable-bktr) bktr="no"
;;
--disable-audio-beos) audio_beos="no"
;;
--disable-dv1394) dv1394="no"
;;
Luca Abeni
committed
--disable-network) network="no"; ffserver="no"
--disable-zlib) zlib="no"
;;
--enable-dts) dts="yes"
--enable-libgsm) libgsm="yes"
;;
--enable-mp3lame) mp3lame="yes"
Oded Shimon
committed
--enable-libnut) libnut="yes"
;;
--enable-libogg) libogg="yes"
pkg_requires="$pkg_requires ogg >= 1.1"
--enable-vorbis) libvorbis="yes"
pkg_requires="$pkg_requires vorbis vorbisenc"
--enable-faad) faad="yes"
;;
--enable-faadbin) faadbin="yes"
;;
--enable-faac) faac="yes"
Michael Niedermayer
committed
;;
--enable-xvid) xvid="yes"
;;
--enable-x264) x264="yes"
;;
--enable-avisynth) avisynth="yes";
;;
--enable-dc1394) dc1394="yes"
pkg_requires="$pkg_requires libraw1394"
Philip Gladstone
committed
--disable-vhook) vhook="no"
;;
--enable-mingw32) mingw32="yes"
;;
--enable-static) lstatic="yes"
;;
--disable-static) lstatic="no"
;;
--disable-shared) lshared="no"
;;
--disable-debug) debug="no"
;;
--disable-opts) optimize="no"
;;
--enable-extra-warnings) extrawarnings="yes"
;;
Fabrice Bellard
committed
--disable-mpegaudio-hp) mpegaudio_hp="no"
;;
--disable-protocols) protocols="no"; network="no"; ffserver="no"
;;
--disable-ffmpeg) ffmpeg="no"
;;
--disable-ffserver) ffserver="no"
;;
--enable-small) optimize="small"
Michael Niedermayer
committed
;;
--enable-amr_nb) amr="yes"; amr_nb="yes"; amr_nb_fixed="no"
--enable-amr_nb-fixed) amr="yes"; amr_nb_fixed="yes"; amr_nb="no"
Torsten Martinsen
committed
;;
--enable-sunmlib) mlib="yes"
--enable-pthreads) pthreads="yes"
;;
Michael Niedermayer
committed
--enable-gpl) gpl="yes"
;;
--enable-memalign-hack) memalign_hack="yes"
Michael Niedermayer
committed
;;
Michel Bardiaux
committed
--disable-strip) dostrip="no"
;;
--enable-encoder=*) enable ${optval}_encoder
Michael Niedermayer
committed
;;
--enable-decoder=*) enable ${optval}_decoder
--disable-encoder=*) disable ${optval}_encoder
--disable-decoder=*) disable ${optval}_decoder
Michael Niedermayer
committed
;;
--disable-encoders) disable $ENCODER_LIST
Michael Niedermayer
committed
;;
--disable-decoders) disable $DECODER_LIST
Emiliano Parasassi
committed
;;
--enable-muxer=*) enable ${optval}_muxer
;;
--disable-muxer=*) disable ${optval}_muxer
--disable-muxers) disable $MUXER_LIST; ffserver="no"
--enable-demuxer=*) enable ${optval}_demuxer
--disable-demuxer=*) disable ${optval}_demuxer
--disable-demuxers) disable $DEMUXER_LIST
;;
--enable-parser=*) enable ${optval}_parser
--disable-parser=*) disable ${optval}_parser
--disable-parsers) disable $PARSER_LIST
--help) show_help
;;
*)
echo "Unknown option \"$opt\"."
echo "See $0 --help for available options."
exit 1
;;