Root/mplayer/Makefile

1#
2# OpenWrt
3#
4# This is free software, licensed under the GNU General Public License v2.
5#
6
7include $(TOPDIR)/rules.mk
8
9PKG_NAME:=MPlayer
10PKG_REV:=33341
11FFMPEG_REV:=3b6bbfa0631d237f2bbc85a7b43907733bea1e82
12PKG_VERSION:=r$(PKG_REV)
13PKG_RELEASE:=5
14
15PKG_SOURCE=$(PKG_NAME)-$(PKG_VERSION).tar.gz
16FFMPEG_SOURCE_URL:=git://git.videolan.org/ffmpeg.git
17PKG_SOURCE_URL:=svn://svn.mplayerhq.hu/mplayer/trunk
18PKG_SOURCE_PROTO:=svn_plus_ffmpeg_git
19PKG_SOURCE_VERSION=$(PKG_REV)
20PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
21
22include $(INCLUDE_DIR)/package.mk
23include $(INCLUDE_DIR)/nls.mk
24
25define DownloadMethod/svn_plus_ffmpeg_git
26    $(call wrap_mirror, \
27        echo "Checking out files from the svn repository..."; \
28        mkdir -p $(TMP_DIR)/dl && \
29        cd $(TMP_DIR)/dl && \
30        rm -rf $(SUBDIR) && \
31        [ \! -d $(SUBDIR) ] && \
32        ( svn help export | grep -q trust-server-cert && \
33        svn export --non-interactive --trust-server-cert -r$(VERSION) $(URL) $(SUBDIR) || \
34        svn export --non-interactive -r$(VERSION) $(URL) $(SUBDIR) ) && \
35        git clone $(FFMPEG_SOURCE_URL) $(SUBDIR)/ffmpeg && \
36        (cd $(SUBDIR)/ffmpeg && git checkout $(FFMPEG_REV)) && \
37        echo "Packing checkout..." && \
38        rm -rf $(SUBDIR)/ffmpeg/.git && \
39        $(call dl_pack,$(TMP_DIR)/dl/$(FILE),$(SUBDIR)) && \
40        mv $(TMP_DIR)/dl/$(FILE) $(DL_DIR)/ && \
41        rm -rf $(SUBDIR); \
42    )
43endef
44
45
46define Package/MPlayer
47  SECTION:=multimedia
48  CATEGORY:=Multimedia
49  TITLE:=MPlayer, the movie player
50  URL:=http://www.mplayerhq.hu
51  DEPENDS:=+libjpeg +libpng +directfb +zlib +libsdl +libfreetype +fontconfig $(ICONV_DEPENDS) +BUILD_PATENTED:libmad +libaa +giflib +fribidi +libtheora +libggi
52endef
53
54define Package/MPlayer/description
55  MPlayer is a movie player which runs on many systems.
56endef
57
58# --enable-system-ffmpeg
59# --extra-libs="-lavformat -lavcodec -lavutil -lpostproc -lswscale" \
60
61CONFIGURE_ARGS := --target=mips \
62          --disable-pulse \
63          --disable-mencoder \
64          --disable-pthreads \
65          --enable-cross-compile \
66          --prefix=/usr \
67          --with-sdl-config=$(STAGING_DIR)/usr/bin/sdl-config \
68          --with-freetype-config=$(STAGING_DIR)/host/bin/freetype-config \
69          --enable-rpath \
70          --extra-cflags="-I$(STAGING_DIR)/usr/include/directfb \
71          $(ICONV_CPPFLAGS)" \
72          --extra-ldflags="$(ICONV_LDFLAGS)" \
73          --host-cc=gcc \
74          --enable-fbdev \
75          --confdir=/etc/mplayer \
76          --enable-menu \
77          --disable-x11 \
78          --disable-xmga \
79          --disable-xshape \
80          --disable-xinerama \
81          --disable-gif \
82          --disable-xv \
83          --disable-vm \
84          --disable-vdpau \
85          --disable-gl \
86          --disable-xf86keysym \
87          --disable-ossaudio \
88          --enable-alsa \
89          --enable-vidix \
90          --disable-vidix-pcidb \
91          --with-vidix-drivers="no" \
92              --enable-tremor-internal \
93              --enable-tremor-low \
94          --enable-decoder=RAWVIDEO_DECODER \
95          --enable-decoder=THEORA_DECODER \
96          --enable-decoder=VP3_DECODER \
97          --enable-decoder=VP8_DECODER \
98          --enable-decoder=MP2_DECODER \
99          --enable-decoder=FLAC_DECODER \
100          --enable-decoder=PCM_U8_DECODER \
101          --enable-decoder=PCM_U16BE_DECODER \
102          --enable-decoder=PCM_U16LE_DECODER \
103          --enable-decoder=PCM_S8_DECODER \
104          --enable-decoder=PCM_S16BE_DECODER \
105          --enable-decoder=PCM_S16LE_DECODER \
106          --enable-decoder=PCM_MULAW_DECODER \
107          --enable-decoder=PCM_ALAW_DECODER \
108          --enable-demuxer=RAWVIDEO_DEMUXER \
109          --enable-demuxer=AVI_DEMUXER \
110          --enable-demuxer=FLAC_DEMUXER \
111          --enable-demuxer=MATROSKA_DEMUXER \
112          --enable-demuxer=MATROSKA_AUDIO_DEMUXER \
113          --enable-demuxer=SRT_DEMUXER \
114          --enable-demuxer=WAV_DEMUXER \
115          --enable-demuxer=YUV4MPEGPIPE_DEMUXER \
116          --enable-parser=VP3_PARSER \
117          --enable-parser=VP8_PARSER \
118          --enable-parser=PNM_PARSER \
119          --enable-parser=DIRAC_PARSER \
120          --enable-parser=FLAC_PARSER \
121          --enable-protocol=HTTP_PROTOCOL \
122          --enable-protocol=CONCAT_PROTOCOL \
123          --enable-protocol=FILE_PROTOCOL \
124          --enable-protocol=PIPE_PROTOCOL \
125          --enable-protocol=TCP_PROTOCOL \
126          --enable-protocol=UDP_PROTOCOL
127
128# cannot enable, pulls in mpegts, and realmedia stuff (?):
129# --enable-protocol=RTP_PROTOCOL
130
131# not compiling working with libspeex version from openwrt:
132# --enable-decoder=LIBSPEEX_DECODER
133
134# ffmpeg ogg demuxer disabled for now (leaks memory, use mplayer's native ogg
135# support instead) --enable-demuxer=OGG_DEMUXER
136
137# ffmpeg vorbis is float-based and slow, using mplayer's internal tremor
138#instead --enable-decoder=VORBIS_DECODER
139
140ifdef CONFIG_BUILD_PATENTED
141CONFIGURE_ARGS+= --enable-mad \
142         --enable-mp3lib
143else
144CONFIGURE_ARGS+= --disable-mad \
145         --disable-mp3lib \
146         --disable-libmpeg2 \
147         --disable-libmpeg2-internal \
148         --disable-faad
149endif
150
151# mplayer makefile is soooo broken. have to specify libs by hand, if
152# compileing with --enable-system-ffmpeg
153TARGET_CFLAGS+= -std=c99 -DPATH_MAX=512 -D_GNU_SOURCE
154# -lavcore
155
156# todo: remove once building correctly
157MAKE_FLAGS = -j4
158
159define Build/Configure
160    $(call Build/Configure/Default,)
161endef
162
163define Package/MPlayer/install
164    $(INSTALL_DIR) \
165        $(1)/usr/bin \
166        $(1)/etc/mplayer
167
168    $(INSTALL_BIN) \
169        $(PKG_BUILD_DIR)/mplayer \
170        $(1)/usr/bin/mplayer
171    $(INSTALL_DATA) \
172        $(FILES_DIR)/input.conf \
173        $(FILES_DIR)/mplayer.conf \
174        $(1)/etc/mplayer/
175
176endef
177
178$(eval $(call BuildPackage,MPlayer))
179
180
181# The following comments configure the Emacs editor. Just ignore them.
182# Local Variables:
183# compile-command: "make -C ~/h/src/qi/openwrt-xburst package/mplayer/compile -j4 V=99"
184# End:
185

Archive Download this file



interactive