Well, let's see:
Here are the default CONFIGURE_ARGS for ffmpeg:
Code:
# cd /usr/ports/multimedia/ffmpeg
# make configure
*SNIP*
# less work/ffmpeg-2008-07-27/config.err
# ./configure --cc=cc --prefix=/usr/local --disable-debug
--enable-memalign-hack --enable-shared --enable-postproc
--extra-cflags=-I/usr/local/include/vorbis -msse -I/usr/local/include
--extra-ldflags=-L/usr/local/lib -la52 --extra-libs=-pthread --enable-gpl
--enable-pthreads --enable-swscale --mandir=/usr/local/man
--enable-liba52 --enable-liba52bin --disable-libfaac --enable-libfaad
--enable-libfaadbin --disable-libamr-nb --disable-libamr-wb --disable-libgsm
--disable-libmp3lame --disable-ffplay --enable-libtheora --enable-libvorbis
--enable-libx264 --disable-libxvid
* SNIP *
# make clean
If I add to /etc/make.conf:
Code:
.if ${.CURDIR:M*/multimedia/ffmpeg}
CONFIGURE_ARGS=--disable-swscale
.endif
Code:
# make configure
* SNIP *
# less work/ffmpeg-2008-07-27/config.err
# ./configure --disable-swscale --cc=cc --prefix=/usr/local --disable-debug
--enable-memalign-hack --enable-shared --enable-postproc
--extra-cflags=-I/usr/local/include/vorbis -msse -I/usr/local/include
--extra-ldflags=-L/usr/local/lib -la52 --extra-libs=-pthread --enable-gpl
--enable-pthreads --enable-swscale --mandir=/usr/local/man --enable-liba52
--enable-liba52bin --disable-libfaac --enable-libfaad --enable-libfaadbin
--disable-libamr-nb --disable-libamr-wb --disable-libgsm --disable-libmp3lame
--disable-ffplay --enable-libtheora --enable-libvorbis --enable-libx264
--disable-libxvid
# make clean
Here, --disable-swscale is
prepended to the CONFIGURE_ARGS. Since it comes before the --enable-swscale already defined, it will be ignored. I assumed this would behave like the commandline, so I was wrong about that.
Here they are with the commandline argument after removing the code from /etc/make.conf:
Code:
# make CONFIGURE_ARGS=--disable-swscale configure
*SNIP*
# less work/ffmpeg-2008-07-27/config.err
# ./configure --disable-swscale
*SNIP *
# make clean
All of the CONFIGURE_ARGS defined in the Makefile were overridden.
Now with Makefile.local:
Code:
# echo "CONFIGURE_ARGS+=--disable-swscale" > Makefile.local
# make configure
* SNIP *
# less work/ffmpeg-2008-07-27/config.err
# ./configure --disable-swscale --cc=cc --prefix=/usr/local --disable-debug
--enable-memalign-hack --enable-shared --enable-postproc
--extra-cflags=-I/usr/local/include/vorbis -msse -I/usr/local/include
--extra-ldflags=-L/usr/local/lib -la52 --extra-libs=-pthread --enable-gpl
--enable-pthreads --enable-swscale --mandir=/usr/local/man --enable-liba52
--enable-liba52bin --disable-libfaac --enable-libfaad --enable-libfaadbin
--disable-libamr-nb --disable-libamr-wb --disable-libgsm --disable-libmp3lame
--disable-ffplay --enable-libtheora --enable-libvorbis --enable-libx264
--disable-libxvid
*SNIP*
Again, --disable-swscale is
prepended to the CONFIGURE_ARGS and will be ignored.
Honestly, I think the best way to deal with this is submit a bug report and/or email the ffmpeg maintainer since this is apparently breaking another port.