2 # Copyright (C) 2006-2008 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
9 include $(TOPDIR
)/rules.mk
15 PKG_SOURCE
:=$(PKG_NAME
)-export-snapshot-
$(PKG_VERSION
).
tar.bz2
16 PKG_SOURCE_URL
:=http
://downloads.openwrt.org
/sources
/
17 PKG_MD5SUM
:=63aeb859941b96ed3ef7b0c7a643bf4d
19 PKG_BUILD_DIR
:=$(BUILD_DIR
)/$(PKG_NAME
)-export-2008-04-19
21 include $(INCLUDE_DIR
)/package.mk
23 define Package
/ffmpeg
/Default
25 URL
:=http
://ffmpeg.mplayerhq.hu
/
28 define Package
/ffmpeg
/Default
/description
29 FFmpeg is a a software package that can record
, convert and stream digital
30 audio and video in numerous formats.
34 $(call Package
/ffmpeg
/Default
)
38 DEPENDS
+= +libpthread
+libffmpeg
41 define Package
/ffmpeg
/description
42 $(call Package
/ffmpeg
/Default
/description
)
44 This package contains the FFmpeg command line tool.
47 define Package
/ffserver
48 $(call Package
/ffserver
/Default
)
51 TITLE
+= streaming server
52 DEPENDS
+= +libpthread
+libffmpeg
55 define Package
/ffserver
/description
56 $(call Package
/ffmpeg
/Default
/description
)
58 This package contains the FFmpeg streaming server.
61 define Package
/libffmpeg
62 $(call Package
/ffmpeg
/Default
)
66 DEPENDS
+= +libpthread
+libfaad2
+zlib
70 define Package
/libffmpeg
/config
72 depends on PACKAGE_libffmpeg
73 source
"$(SOURCE)/Config.in"
77 define Package
/libffmeg
/description
78 $(call Package
/ffmpeg
/Default
/description
)
80 This package contains FFmpeg shared libraries.
83 define Package
/libpostproc
87 URL
:=http
://ffmpeg.mplayerhq.hu
/
148 file http pipe rtp tcp udp \
150 FFMPEG_CONFIGURE_ENCODERS
:= \
151 $(foreach c
, $(FFMPEG_ENCODERS
), \
152 $(if
$(CONFIG_FFMPEG_ENCODER_
$(c
)),--enable-encoder
="$(c)") \
155 FFMPEG_CONFIGURE_DECODERS
:= \
156 $(foreach c
, $(FFMPEG_DECODERS
), \
157 $(if
$(CONFIG_FFMPEG_DECODER_
$(c
)),--enable-decoder
="$(c)") \
160 FFMPEG_CONFIGURE_MUXERS
:= \
161 $(foreach c
, $(FFMPEG_MUXERS
), \
162 $(if
$(CONFIG_FFMPEG_MUXER_
$(c
)),--enable-muxer
="$(c)") \
165 FFMPEG_CONFIGURE_DEMUXERS
:= \
166 $(foreach c
, $(FFMPEG_DEMUXERS
), \
167 $(if
$(CONFIG_FFMPEG_DEMUXER_
$(c
)),--enable-demuxer
="$(c)") \
170 FFMPEG_CONFIGURE_PARSERS
:= \
171 $(foreach c
, $(FFMPEG_PARSERS
), \
172 $(if
$(CONFIG_FFMPEG_PARSER_
$(c
)),--enable-parser
="$(c)") \
175 FFMPEG_CONFIGURE_PROTOCOLS
:= \
176 $(foreach c
, $(FFMPEG_PROTOCOLS
), \
177 $(if
$(CONFIG_FFMPEG_PROTOCOL_
$(c
)),--enable-protocol
="$(c)") \
180 ifneq ($(CONFIG_FFMPEG_PROTOCOL_IPv6
),)
181 FFMPEG_CONFIGURE_IPv6
:= --enable-ipv6
183 FFMPEG_CONFIGURE_IPv6
:= --disable-ipv6
187 define Build
/Configure
188 # this is *NOT* GNU configure
189 ( cd
$(PKG_BUILD_DIR
); \
190 CFLAGS
="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include" \
191 LDFLAGS
="-L$(STAGING_DIR)/usr/lib" \
193 --enable-cross-compile \
194 --cross-prefix
="$(TARGET_CROSS)" \
205 --disable-optimizations \
207 --disable-stripping \
213 $(FFMPEG_CONFIGURE_ENCODERS
) \
215 $(FFMPEG_CONFIGURE_DECODERS
) \
217 $(FFMPEG_CONFIGURE_MUXERS
) \
219 $(FFMPEG_CONFIGURE_DEMUXERS
) \
221 $(FFMPEG_CONFIGURE_PARSERS
) \
223 --disable-protocols \
224 $(FFMPEG_CONFIGURE_PROTOCOLS
) \
225 $(FFMPEG_CONFIGURE_IPv6
) \
230 $(MAKE
) -C
$(PKG_BUILD_DIR
) \
231 DESTDIR
="$(PKG_INSTALL_DIR)" \
235 define Build
/InstallDev
236 $(INSTALL_DIR
) $(1)/usr
/include
237 $(CP
) $(PKG_INSTALL_DIR
)/usr
/include/libav
{codec
,device
,format
,util
} $(1)/usr
/include/
238 $(CP
) $(PKG_INSTALL_DIR
)/usr
/include/libpostproc
$(1)/usr
/include/
239 $(INSTALL_DIR
) $(1)/usr
/lib
240 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libav
{codec
,device
,format
,util
}.
{a
,so
*} $(1)/usr
/lib
/
241 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libpostproc.
{a
,so
*} $(1)/usr
/lib
/
242 $(INSTALL_DIR
) $(1)/usr
/lib
/pkgconfig
243 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/pkgconfig
/libav
{codec
,device
,format
,util
}.
pc $(1)/usr
/lib
/pkgconfig
/
244 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/pkgconfig
/libpostproc.
pc $(1)/usr
/lib
/pkgconfig
/
247 define Package
/ffmpeg
/install
248 $(INSTALL_DIR
) $(1)/usr
/bin
249 $(CP
) $(PKG_INSTALL_DIR
)/usr
/bin
/ffmpeg
$(1)/usr
/bin
/
252 define Package
/ffserver
/install
253 $(INSTALL_DIR
) $(1)/usr
/bin
254 $(CP
) $(PKG_INSTALL_DIR
)/usr
/bin
/ffserver
$(1)/usr
/bin
/
257 define Package
/libffmpeg
/install
258 $(INSTALL_DIR
) $(1)/usr
/lib
259 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libav
{codec
,device
,format
,util
}.so.
* $(1)/usr
/lib
/
262 define Package
/libpostproc
/install
263 $(INSTALL_DIR
) $(1)/usr
/lib
264 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libpostproc.so.
* $(1)/usr
/lib
/
267 $(eval
$(call BuildPackage
,ffmpeg
))
268 $(eval
$(call BuildPackage
,ffserver
))
269 $(eval
$(call BuildPackage
,libffmpeg
))
270 $(eval
$(call BuildPackage
,libpostproc
))