Subject: Re: down striped version of mplayer
To: None <pkgsrc-users@NetBSD.org>
From: Christian Biere <christianbiere@gmx.de>
List: pkgsrc-users
Date: 09/30/2006 12:15:25
Christian Biere wrote:
> ldecitre@web.de wrote:
> > Do you know a "clean" way to remove any dependency to faad ?
> 
> If there's no PKG_OPTION for that, you can also add flags
> like these:

Sorry, I read your last mail first. Out of curiosity I tried how
small you can get MPlayer without patching it. There are still
a few options that could be disabled, however configure --help
actually lies about some options because they are actually
not accepted e.g., --disable-zlib.

$ size work/MPlayer-1.0pre8/mplayer:
   text	   data	    bss	    dec	    hex	filename
1037020	 220964	  52312	1310296	 13fe58	work/MPlayer-1.0pre8/mplayer

$ ldd work/MPlayer-1.0pre8/mplayer:
work/MPlayer-1.0pre8/mplayer:
	 -lz.0 => /usr/lib/libz.so.0
	 -ltermcap.0 => /usr/lib/libtermcap.so.0
	 -lm.0 => /usr/lib/libm387.so.0
	 -lm.0 => /usr/lib/libm.so.0
	 -lX11.6 => /usr/X11R6/lib/libX11.so.6
	 -laa.1 => /usr/pkg/lib/libaa.so.1
	 -lposix.0 => /usr/lib/libposix.so.0
	 -lpthread.0 => /usr/lib/libpthread.so.0
	 -li386.1 => /usr/lib/libi386.so.1
	 -lc.12 => /usr/lib/libc.so.12

I modified the Makefiles as follows:

RCS file: /cvsroot/pkgsrc/multimedia/mplayer-share/Makefile.cflags,v
retrieving revision 1.3
diff -u -r1.3 Makefile.cflags
--- Makefile.cflags	27 Jun 2006 21:51:21 -0000	1.3
+++ Makefile.cflags	30 Sep 2006 10:06:59 -0000
@@ -22,5 +22,5 @@
 CFLAGS=		-O3 -ffast-math -fomit-frame-pointer
 .  endif
 .else
-CFLAGS=		# Let "configure" do its thing.
+#CFLAGS=
 .endif


RCS file: /cvsroot/pkgsrc/multimedia/mplayer/Makefile,v
retrieving revision 1.31
diff -u -r1.31 Makefile
--- Makefile	14 Jun 2006 10:30:06 -0000	1.31
+++ Makefile	30 Sep 2006 10:06:33 -0000
@@ -11,6 +11,29 @@
 CONFIGURE_ARGS+=	--disable-mencoder
 CONFIGURE_ARGS+=	--confdir=${PREFIX}/share/mplayer
 
+CONFIGURE_ARGS+=	--disable-x11
+CONFIGURE_ARGS+=	--disable-xv
+CONFIGURE_ARGS+=	--disable-iconv
+CONFIGURE_ARGS+=	--disable-tv
+CONFIGURE_ARGS+=	--disable-network
+CONFIGURE_ARGS+=	--disable-ftp
+CONFIGURE_ARGS+=	--disable-unrarlib
+CONFIGURE_ARGS+=	--disable-libmpeg2
+CONFIGURE_ARGS+=	--disable-mp3lib
+CONFIGURE_ARGS+=	--disable-vorbis
+CONFIGURE_ARGS+=	--disable-libavutil
+CONFIGURE_ARGS+=	--disable-libavcodec
+CONFIGURE_ARGS+=	--disable-libavformat
+CONFIGURE_ARGS+=	--disable-libpostproc
+CONFIGURE_ARGS+=	--disable-internal-vidix
+CONFIGURE_ARGS+=	--disable-liba52
+CONFIGURE_ARGS+=	--disable-mmx
+CONFIGURE_ARGS+=	--disable-mmxext
+CONFIGURE_ARGS+=	--disable-3dnow
+CONFIGURE_ARGS+=	--disable-3dnowext
+CONFIGURE_ARGS+=	--disable-sse
+CONFIGURE_ARGS+=	--disable-sse2
+
 INSTALLATION_DIRS+=	bin
 
 .include "../../fonts/fontconfig/buildlink3.mk"


I added the following options to /etc/mk.conf:

PKG_OPTIONS.mplayer += aalib
PKG_OPTIONS.mplayer += -arts
PKG_OPTIONS.mplayer += -cdparanoia
PKG_OPTIONS.mplayer += -dts
PKG_OPTIONS.mplayer += -dv
PKG_OPTIONS.mplayer += -dvdread
PKG_OPTIONS.mplayer += -esound
PKG_OPTIONS.mplayer += -faad
PKG_OPTIONS.mplayer += -ggi
PKG_OPTIONS.mplayer += -gif
PKG_OPTIONS.mplayer += -jpeg
PKG_OPTIONS.mplayer += -mad
PKG_OPTIONS.mplayer += -mplayer-internal-faad
PKG_OPTIONS.mplayer += -mplayer-menu
PKG_OPTIONS.mplayer += -mplayer-real
PKG_OPTIONS.mplayer += -mplayer-runtime-cpudetection
PKG_OPTIONS.mplayer += -mplayer-win32
PKG_OPTIONS.mplayer += -nas
PKG_OPTIONS.mplayer += -oss
PKG_OPTIONS.mplayer += -png
PKG_OPTIONS.mplayer += -sdl
PKG_OPTIONS.mplayer += -theora
PKG_OPTIONS.mplayer += -vorbis
PKG_OPTIONS.mplayer += -xvid

CFLAGS+=-Wall -Wformat=2 -Os -pipe -march=i486
CXXFLAGS+=-Wall -Wformat=2 -Os -pipe -march=i486

-- 
Christian