1 DESCRIPTION = "Open Source multimedia player."
4 HOMEPAGE = "http://www.mplayerhq.hu/"
5 DEPENDS = "virtual/libsdl zlib libpng jpeg freetype fontconfig alsa-lib lzo ncurses libxv virtual/libx11 \
6 ${@base_conditional('ENTERPRISE_DISTRO', '1', '', 'libmad liba52 lame', d)}"
7 RDEPENDS = "mplayer-common"
9 SRC_URI = "http://www1.mplayerhq.hu/MPlayer/releases/MPlayer-1.0rc1.tar.bz2 \
11 file://vo_w100_api.h \
15 file://Makefile.patch;patch=1 \
16 file://w100-configure.patch;patch=1 \
17 file://w100-Makefile.patch;patch=1 \
18 file://w100-video_out.patch;patch=1 \
19 file://w100-mplayer.patch;patch=1 \
20 file://pld-onlyarm5.patch;patch=1 \
21 file://makefile-nostrip.patch;patch=1 \
22 ${SOURCEFORGE_MIRROR}/libw100/mplayer-imageon.patch;patch=1 \
23 file://imageon-video_out.patch;patch=1 \
24 file://powerpc-is-ppc.diff;patch=1 \
25 file://pxa_configure.patch;patch=1 \
26 file://pxa-video_out.patch;patch=1 \
29 SRC_URI_append_avr32 = " file://mplayer-1.0rc1-atmel.2.patch;patch=1 \
32 # This is required for the collie machine only as all stacks in that
33 # machine seem to be set to executable by the toolchain. If someone
34 # discovers this is more general than please make this more general
35 # ie. for all armv4 machines.
36 SRC_URI_append_collie = "file://disable-executable-stack-test.patch;patch=1"
37 PACKAGE_ARCH_mplayer_collie = "collie"
38 PACKAGE_ARCH_mencoder_collie = "collie"
40 ARM_INSTRUCTION_SET = "ARM"
42 RCONFLICTS_${PN} = "mplayer-atty"
43 RREPLACES_${PN} = "mplayer-atty"
48 DEPENDS_append_c7x0 = " sharp-aticore-oss libw100 "
49 DEPENDS_append_hx4700 = " libw100 "
51 S = "${WORKDIR}/MPlayer-1.0rc1"
53 PACKAGES =+ "mencoder"
55 FILES_${PN} = "${bindir}/mplayer ${libdir}"
56 FILES_mencoder = "${bindir}/mencoder"
58 inherit autotools pkgconfig
60 FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O4 -ffast-math"
61 BUILD_OPTIMIZATION = "${FULL_OPTIMIZATION}"
66 --target=${TARGET_SYS} \
71 --disable-linux-devfs \
76 --disable-xf86keysym \
79 --disable-tv-bsdbt848 \
87 --disable-cdparanoia \
95 --disable-macosx-finder-support \
96 --disable-macosx-bundle \
112 --disable-libavutil_so \
113 --disable-libavcodec_so \
114 --disable-libavformat_so \
115 --disable-libpostproc_so \
118 --enable-tremor-low \
134 --disable-amr_nb-fixed \
181 --disable-win32waveout \
184 --disable-runtime-cpudetection \
187 EXTRA_OECONF_append_arm = " --disable-decoder=vorbis_decoder \
188 --disable-encoder=vorbis_encoder"
190 EXTRA_OECONF_append_progear = " --disable-sse --disable-3dnow --disable-mmxext --disable-sse2"
192 #enable support for the ati imageon series (w100 and w3220)
193 EXTRA_OECONF_append_c7x0 = " --enable-w100 "
194 EXTRA_OECONF_append_hx4700 = " --enable-imageon "
196 #enable pxa270 overlay support
197 EXTRA_OECONF_append_spitz = " --enable-pxa "
198 EXTRA_OECONF_append_akita = " --enable-pxa "
199 EXTRA_OECONF_append_a780 = " --enable-pxa "
200 EXTRA_OECONF_append_magician = " --enable-pxa "
201 EXTRA_OECONF_append_htcuniversal = " --enable-pxa "
202 EXTRA_OECONF_append_palmld = " --enable-pxa "
204 #build with support for the iwmmxt instruction support (pxa270 and up)
205 TARGET_CC_ARCH_spitz = "-march=iwmmxt -mtune=iwmmxt"
206 PACKAGE_ARCH_spitz = "iwmmxt"
207 TARGET_CC_ARCH_akita = "-march=iwmmxt -mtune=iwmmxt"
208 PACKAGE_ARCH_akita = "iwmmxt"
209 TARGET_CC_ARCH_a780 = "-march=iwmmxt -mtune=iwmmxt"
210 PACKAGE_ARCH_a780 = "iwmmxt"
211 TARGET_CC_ARCH_hx4700 = "-march=iwmmxt -mtune=iwmmxt"
212 PACKAGE_ARCH_hx4700 = "iwmmxt"
213 TARGET_CC_ARCH_magician = "-march=iwmmxt -mtune=iwmmxt"
214 PACKAGE_ARCH_magician = "iwmmxt"
215 TARGET_CC_ARCH_htcuniversal = "-march=iwmmxt -mtune=iwmmxt"
216 PACKAGE_ARCH_htcuniversal = "iwmmxt"
217 TARGET_CC_ARCH_palmld = "-march=iwmmxt -mtune=iwmmxt"
218 PACKAGE_ARCH_palmld = "iwmmxt"
221 cp ${WORKDIR}/vo_w100.c ${S}/libvo
222 cp ${WORKDIR}/vo_w100_api.h ${S}/libvo
223 cp ${WORKDIR}/vo_w100_fb.h ${S}/libvo
224 cp ${WORKDIR}/vo_pxa.c ${S}/libvo
225 cp ${WORKDIR}/vo_pxa.h ${S}/libvo
227 sed -i 's|/usr/include|${STAGING_INCDIR}|g' ${S}/configure
228 sed -i 's|/usr/lib|${STAGING_LIBDIR}|g' ${S}/configure
229 sed -i 's|/usr/\S*include[\w/]*||g' ${S}/configure
230 sed -i 's|/usr/\S*lib[\w/]*||g' ${S}/configure
232 ./configure ${EXTRA_OECONF}