Add MPD and related dependencies and services (re-submit)lilik-openwrt-22.03
@ -0,0 +1,313 @@ | |||
# | |||
# Copyright (C) 2007-2014 OpenWrt.org | |||
# | |||
# This is free software, licensed under the GNU General Public License v2. | |||
# See /LICENSE for more information. | |||
# | |||
include $(TOPDIR)/rules.mk | |||
ifeq ($(BUILD_VARIANT),dbus) | |||
PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)/dbus/$(PKG_NAME)-$(PKG_VERSION) | |||
PKG_ALT_DIR=$(BUILD_DIR)/$(PKG_NAME)/nodbus/$(PKG_NAME)-$(PKG_VERSION) | |||
else | |||
PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)/nodbus/$(PKG_NAME)-$(PKG_VERSION) | |||
PKG_ALT_DIR=$(BUILD_DIR)/$(PKG_NAME)/dbus/$(PKG_NAME)-$(PKG_VERSION) | |||
endif | |||
PKG_NAME:=avahi | |||
PKG_VERSION:=0.6.31 | |||
PKG_RELEASE:=6 | |||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz | |||
PKG_SOURCE_URL:=http://avahi.org/download/ | |||
PKG_MD5SUM:=2f22745b8f7368ad5a0a3fddac343f2d | |||
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> | |||
PKG_BUILD_DEPENDS:=libexpat libdaemon libgdbm intltool/host libpthread dbus | |||
PKG_FIXUP:=autoreconf | |||
PKG_REMOVE_FILES:=autogen.sh | |||
PKG_INSTALL:=1 | |||
PKG_BUILD_PARALLEL:=1 | |||
include $(INCLUDE_DIR)/package.mk | |||
define Package/avahi/Default | |||
SECTION:=net | |||
CATEGORY:=Network | |||
TITLE:=An mDNS/DNS-SD implementation | |||
URL:=http://www.avahi.org/ | |||
endef | |||
define Package/avahi/Default/description | |||
Avahi is an mDNS/DNS-SD (aka RendezVous/Bonjour/ZeroConf) | |||
implementation (library). It facilitates | |||
service discovery on a local network -- this means that | |||
you can plug your laptop or computer into a network and | |||
instantly be able to view other people who you can chat with, | |||
find printers to print to or find files being shared. | |||
This kind of technology is already found in MacOS X | |||
(branded 'Rendezvous', 'Bonjour' and sometimes 'ZeroConf') | |||
and is very convenient. | |||
endef | |||
define Package/libavahi | |||
$(call Package/avahi/Default) | |||
SECTION:=libs | |||
CATEGORY:=Libraries | |||
DEPENDS:=+libpthread +SSP_SUPPORT:libssp | |||
TITLE+= (library) | |||
endef | |||
define Package/libavahi/description | |||
$(call Package/avahi/Default/description) | |||
. | |||
The libavahi package contains the mDNS/DNS-SD shared libraries, | |||
used by other programs. Specifically, it provides | |||
libavahi-core and libavahi-common libraries. | |||
By default, it is built without D-Bus support, | |||
i.e. the --disable-dbus configuration flag is set. | |||
To enable D-Bus support, select the package | |||
libavahi-dbus-support. | |||
endef | |||
define Package/avahi-autoipd | |||
$(call Package/avahi/Default) | |||
SUBMENU:=IP Addresses and Names | |||
DEPENDS:=+libdaemon | |||
TITLE:=IPv4LL network address configuration daemon | |||
endef | |||
define Package/avahi-autoipd/description | |||
$(call Package/avahi/Default/description) | |||
. | |||
This package implements IPv4LL, "Dynamic Configuration of IPv4 Link-Local | |||
Addresses" (IETF RFC3927), a protocol for automatic IP address configuration | |||
from the link-local 169.254.0.0/16 range without the need for a central | |||
server. It is primarily intended to be used in ad-hoc networks which lack a | |||
DHCP server. | |||
endef | |||
define Package/avahi-daemon | |||
$(call Package/avahi/Default) | |||
SUBMENU:=IP Addresses and Names | |||
ifeq ($(BUILD_VARIANT),dbus) | |||
DEPENDS:=+libavahi +libexpat +librt +libdaemon +libdbus | |||
else | |||
DEPENDS:=+libavahi +libexpat +librt +libdaemon | |||
endif | |||
TITLE+= (daemon) | |||
endef | |||
define Package/avahi-daemon/description | |||
$(call Package/avahi/Default/description) | |||
. | |||
This package contains an mDNS/DNS-SD daemon. | |||
endef | |||
define Package/avahi-daemon/conffiles | |||
/etc/avahi/avahi-daemon.conf | |||
/etc/avahi/services/http.service | |||
/etc/avahi/services/ssh.service | |||
endef | |||
define Package/avahi-dnsconfd | |||
$(call Package/avahi/Default) | |||
SUBMENU:=IP Addresses and Names | |||
DEPENDS:=+libavahi +libdaemon | |||
TITLE:=A Unicast DNS server from mDNS/DNS-SD configuration daemon | |||
endef | |||
define Package/avahi-dnsconfd/description | |||
$(call Package/avahi/Default/description) | |||
. | |||
This package contains a Unicast DNS server from mDNS/DNS-SD configuration | |||
daemon, which may be used to configure conventional DNS servers using mDNS | |||
in a DHCP-like fashion. Especially useful on IPv6. | |||
endef | |||
define Package/libavahi-dbus-support | |||
$(call Package/avahi/Default) | |||
SECTION:=libs | |||
CATEGORY:=Libraries | |||
VARIANT:=dbus | |||
DEPENDS:=+dbus +libavahi | |||
TITLE+= (D-Bus support) | |||
endef | |||
define Package/libavahi-dbus-support/description | |||
$(call Package/libavahi/description) | |||
. | |||
The libavahi-dbus-support package enables | |||
D-Bus support in avahi, needed to support | |||
the libavahi-client library and avahi-utils. | |||
Selecting this package modifies the build configuration | |||
so that avahi packages are built with support for D-BUS enabled; | |||
it does not generate a separate binary of its own. | |||
It also automatically adds the D-Bus package to the build. | |||
libavahi-dbus-support is selected automatically if you select | |||
libavahi-client or avahi-utils. | |||
endef | |||
define Package/libavahi-client | |||
$(call Package/avahi/Default) | |||
SECTION:=libs | |||
CATEGORY:=Libraries | |||
DEPENDS:=+libavahi-dbus-support +avahi-daemon | |||
TITLE+= (libavahi-client library) | |||
endef | |||
define Package/libavahi-client/description | |||
$(call Package/avahi/Default/description) | |||
. | |||
This packages adds the libavahi-client library. | |||
It also automatically adds the required | |||
libavahi-dbus-support and the avahi-daemon packages. | |||
For more information please see the avahi documentation. | |||
endef | |||
define Package/avahi-utils | |||
$(call Package/avahi/Default) | |||
SUBMENU:=IP Addresses and Names | |||
DEPENDS:=+libavahi-client +libgdbm | |||
TITLE+= (utilities) | |||
endef | |||
define Package/avahi-utils/description | |||
$(call Package/avahi/Default/description) | |||
. | |||
This packages installs the following avahi utility programs: | |||
avahi-browse, avahi-publish, avahi-resolve, avahi-set-host-name. | |||
It also automatically adds the required libavahi-client package. | |||
For more information please see the avahi documentation. | |||
endef | |||
TARGET_CFLAGS += $(FPIC) -DGETTEXT_PACKAGE | |||
CONFIGURE_ARGS+= \ | |||
--enable-shared \ | |||
--enable-static \ | |||
--disable-glib \ | |||
--disable-gobject \ | |||
--disable-qt3 \ | |||
--disable-qt4 \ | |||
--disable-gtk \ | |||
--disable-gtk3 \ | |||
--with-xml=expat \ | |||
--disable-dbm \ | |||
--enable-gdbm \ | |||
--enable-libdaemon \ | |||
--disable-python \ | |||
--disable-pygtk \ | |||
--disable-python-dbus \ | |||
--disable-mono \ | |||
--disable-monodoc \ | |||
--disable-doxygen-doc \ | |||
--disable-doxygen-dot \ | |||
--disable-doxygen-man \ | |||
--disable-doxygen-rtf \ | |||
--disable-doxygen-xml \ | |||
--disable-doxygen-chm \ | |||
--disable-doxygen-chi \ | |||
--disable-doxygen-html \ | |||
--disable-doxygen-ps \ | |||
--disable-doxygen-pdf \ | |||
--disable-xmltoman \ | |||
--with-distro=none \ | |||
--with-avahi-user=nobody \ | |||
--with-avahi-group=nogroup \ | |||
--with-autoipd-user=nobody \ | |||
--with-autoipd-group=nogroup | |||
ifneq ($(CONFIG_SSP_SUPPORT),y) | |||
CONFIGURE_ARGS+= \ | |||
--disable-stack-protector | |||
endif | |||
ifeq ($(BUILD_VARIANT),dbus) | |||
CONFIGURE_ARGS += \ | |||
--enable-dbus | |||
else | |||
CONFIGURE_ARGS += \ | |||
--disable-dbus | |||
endif | |||
CONFIGURE_VARS+= \ | |||
CFLAGS="$$$$CFLAGS -DNDEBUG -DDISABLE_SYSTEMD" \ | |||
ac_cv_header_sys_capability_h=no \ | |||
define Build/InstallDev | |||
$(INSTALL_DIR) $(1)/usr/include | |||
$(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/ | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libavahi-* $(1)/usr/lib/ | |||
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/* $(1)/usr/lib/pkgconfig/ | |||
endef | |||
define Package/libavahi-dbus-support/install | |||
$(INSTALL_DIR) $(1)/etc/dbus-1/system.d | |||
$(CP) $(PKG_INSTALL_DIR)/etc/dbus-1/system.d/* $(1)/etc/dbus-1/system.d | |||
endef | |||
define Package/libavahi/install | |||
# The next line removes the ".build" file from the "other" build. | |||
# The effect is that, if the other build is re-selected in the future, | |||
# the build system will be forced to replace all the code in the | |||
# installer packages, removing anything from the current build. | |||
# "Other" means this: if the current build is "dbus", the other is "nodebus", | |||
# and if the current build is "nodbus", the other is "dbus". | |||
$(RM) -f $(PKG_ALT_DIR)/.built | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libavahi-{common,core}.so.* $(1)/usr/lib/ | |||
endef | |||
define Package/libavahi-client/install | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libavahi-client.so.* $(1)/usr/lib/ | |||
endef | |||
define Package/avahi-utils/install | |||
$(INSTALL_DIR) $(1)/usr/bin | |||
$(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/ | |||
endef | |||
define Package/avahi-autoipd/install | |||
$(INSTALL_DIR) $(1)/etc/avahi | |||
$(CP) $(PKG_INSTALL_DIR)/etc/avahi/avahi-autoipd.action $(1)/etc/avahi/ | |||
$(INSTALL_DIR) $(1)/usr/sbin | |||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/avahi-autoipd $(1)/usr/sbin/ | |||
endef | |||
define Package/avahi-daemon/install | |||
$(INSTALL_DIR) $(1)/usr/sbin | |||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/avahi-daemon $(1)/usr/sbin/ | |||
$(INSTALL_DIR) $(1)/etc/avahi | |||
$(INSTALL_DATA) ./files/avahi-daemon.conf $(1)/etc/avahi/ | |||
$(INSTALL_DIR) $(1)/etc/avahi/services | |||
$(INSTALL_DATA) ./files/service-http $(1)/etc/avahi/services/http.service | |||
$(INSTALL_DATA) ./files/service-ssh $(1)/etc/avahi/services/ssh.service | |||
$(INSTALL_DIR) $(1)/etc/init.d | |||
$(INSTALL_BIN) ./files/avahi-daemon.init $(1)/etc/init.d/avahi-daemon | |||
endef | |||
define Package/avahi-dnsconfd/install | |||
$(INSTALL_DIR) $(1)/etc/avahi | |||
$(CP) $(PKG_INSTALL_DIR)/etc/avahi/avahi-dnsconfd.action $(1)/etc/avahi/ | |||
$(INSTALL_DIR) $(1)/usr/sbin | |||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/avahi-dnsconfd $(1)/usr/sbin/ | |||
endef | |||
$(eval $(call BuildPackage,libavahi-client)) | |||
$(eval $(call BuildPackage,avahi-utils)) | |||
$(eval $(call BuildPackage,libavahi-dbus-support)) | |||
$(eval $(call BuildPackage,libavahi)) | |||
$(eval $(call BuildPackage,avahi-autoipd)) | |||
$(eval $(call BuildPackage,avahi-daemon)) | |||
$(eval $(call BuildPackage,avahi-dnsconfd)) |
@ -0,0 +1,28 @@ | |||
[server] | |||
#host-name=foo | |||
#domain-name=local | |||
use-ipv4=yes | |||
use-ipv6=no | |||
check-response-ttl=no | |||
use-iff-running=no | |||
[publish] | |||
publish-addresses=yes | |||
publish-hinfo=yes | |||
publish-workstation=no | |||
publish-domain=yes | |||
#publish-dns-servers=192.168.1.1 | |||
#publish-resolv-conf-dns-servers=yes | |||
[reflector] | |||
enable-reflector=no | |||
reflect-ipv=no | |||
[rlimits] | |||
#rlimit-as= | |||
rlimit-core=0 | |||
rlimit-data=4194304 | |||
rlimit-fsize=0 | |||
rlimit-nofile=30 | |||
rlimit-stack=4194304 | |||
rlimit-nproc=3 |
@ -0,0 +1,23 @@ | |||
#!/bin/sh /etc/rc.common | |||
# Copyright (C) 2006 OpenWrt.org | |||
START=61 | |||
BIN=avahi-daemon | |||
DEFAULT=/etc/default/$BIN | |||
OPTIONS="-D" | |||
RUN_D=/var/run/$BIN | |||
start() { | |||
[ -f $DEFAULT ] && . $DEFAULT | |||
mkdir -p $RUN_D | |||
$BIN $OPTIONS | |||
} | |||
stop() { | |||
$BIN -k | |||
} | |||
reload() { | |||
$BIN -r | |||
} | |||
@ -0,0 +1,10 @@ | |||
<?xml version="1.0" standalone='no'?><!--*-nxml-*--> | |||
<!DOCTYPE service-group SYSTEM "avahi-service.dtd"> | |||
<service-group> | |||
<name replace-wildcards="yes">Web Server on %h</name> | |||
<service> | |||
<type>_http._tcp</type> | |||
<port>80</port> | |||
<txt-record>path=/</txt-record> | |||
</service> | |||
</service-group> |
@ -0,0 +1,9 @@ | |||
<?xml version="1.0" standalone='no'?><!--*-nxml-*--> | |||
<!DOCTYPE service-group SYSTEM "avahi-service.dtd"> | |||
<service-group> | |||
<name replace-wildcards="yes">Secure Shell on %h</name> | |||
<service> | |||
<type>_ssh._tcp</type> | |||
<port>22</port> | |||
</service> | |||
</service-group> |
@ -0,0 +1,80 @@ | |||
--- a/Makefile.am | |||
+++ b/Makefile.am | |||
@@ -75,8 +75,7 @@ SUBDIRS = \ | |||
avahi-compat-howl \ | |||
avahi-autoipd \ | |||
avahi-ui \ | |||
- avahi-ui-sharp \ | |||
- po | |||
+ avahi-ui-sharp | |||
DX_INPUT = \ | |||
$(srcdir)/avahi-common/address.h \ | |||
--- a/avahi-python/avahi-discover/Makefile.am | |||
+++ b/avahi-python/avahi-discover/Makefile.am | |||
@@ -38,7 +38,6 @@ if HAVE_GDBM | |||
pythonscripts += \ | |||
avahi-discover | |||
desktop_DATA += avahi-discover.desktop | |||
-@INTLTOOL_DESKTOP_RULE@ | |||
avahi_discover_PYTHON += __init__.py | |||
endif | |||
@@ -46,7 +45,6 @@ if HAVE_DBM | |||
pythonscripts += \ | |||
avahi-discover | |||
desktop_DATA += avahi-discover.desktop | |||
-@INTLTOOL_DESKTOP_RULE@ | |||
avahi_discover_PYTHON += __init__.py | |||
endif | |||
--- a/avahi-ui/Makefile.am | |||
+++ b/avahi-ui/Makefile.am | |||
@@ -78,7 +78,6 @@ endif | |||
bin_PROGRAMS = bssh | |||
desktop_DATA += bssh.desktop bvnc.desktop | |||
-@INTLTOOL_DESKTOP_RULE@ | |||
bssh_SOURCES = bssh.c | |||
@@ -106,6 +105,4 @@ endif # HAVE_GLIB | |||
endif | |||
endif | |||
-@INTLTOOL_DESKTOP_RULE@ | |||
- | |||
CLEANFILES = $(desktop_DATA) $(desktop_DATA_in) | |||
--- a/configure.ac | |||
+++ b/configure.ac | |||
@@ -23,7 +23,7 @@ AC_INIT([avahi],[0.6.29],[avahi (at) lis | |||
AC_CONFIG_SRCDIR([avahi-core/server.c]) | |||
AC_CONFIG_MACRO_DIR([common]) | |||
AC_CONFIG_HEADERS([config.h]) | |||
-AM_INIT_AUTOMAKE([foreign 1.11 -Wall -Wno-portability silent-rules tar-pax]) | |||
+AM_INIT_AUTOMAKE([foreign 1.11 -Wall -Wno-portability tar-pax]) | |||
AC_SUBST(PACKAGE_URL, [http://avahi.org/]) | |||
@@ -43,8 +43,6 @@ AC_SUBST(HOWL_COMPAT_VERSION, [0.9.8]) | |||
AC_CANONICAL_HOST | |||
-AM_SILENT_RULES([yes]) | |||
- | |||
AC_CHECK_PROG([STOW], [stow], [yes], [no]) | |||
AS_IF([test "x$STOW" = "xyes" && test -d /usr/local/stow], [ | |||
@@ -412,12 +410,6 @@ if test "x$have_kqueue" = "xyes" ; then | |||
AC_DEFINE([HAVE_KQUEUE], 1, [Enable BSD kqueue() usage]) | |||
fi | |||
-IT_PROG_INTLTOOL([0.35.0]) | |||
-GETTEXT_PACKAGE=avahi | |||
-AC_SUBST([GETTEXT_PACKAGE]) | |||
-AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[Gettext package]) | |||
-AM_GLIB_GNU_GETTEXT | |||
- | |||
avahilocaledir='${prefix}/${DATADIRNAME}/locale' | |||
AC_SUBST(avahilocaledir) | |||
@ -0,0 +1,12 @@ | |||
config FAAD2_ALWAYS_USE_FLOATING_POINT | |||
depends on PACKAGE_libfaad2 | |||
bool "Build FAAD2 to use floating-point math even if using soft floats." | |||
default n | |||
help | |||
By default, libfaad2 will be built to use fixed point rather | |||
than floating point math if emulated floating point operations | |||
are being used. (See the CONFIG_SOFT_FLOAT option.) Set this | |||
option if you would like to use floating point math regardless | |||
of whether floating point emulation is in use. | |||
For the best real-time decoding ability, leave this option off. |
@ -0,0 +1,114 @@ | |||
# | |||
# Copyright (C) 2008-2014 OpenWrt.org | |||
# | |||
# This is free software, licensed under the GNU General Public License v2. | |||
# See /LICENSE for more information. | |||
# | |||
include $(TOPDIR)/rules.mk | |||
PKG_NAME:=faad2 | |||
PKG_VERSION:=2.7 | |||
PKG_RELEASE:=3 | |||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 | |||
PKG_SOURCE_URL:=@SF/faac | |||
PKG_MD5SUM:=4c332fa23febc0e4648064685a3d4332 | |||
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> | |||
PKG_CONFIG_DEPENDS := \ | |||
CONFIG_SOFT_FLOAT \ | |||
CONFIG_FAAD2_ALWAYS_USE_FLOATING_POINT | |||
PKG_FIXUP:=autoreconf | |||
PKG_INSTALL:=1 | |||
include $(INCLUDE_DIR)/package.mk | |||
TARGET_CFLAGS += $(FPIC) | |||
# Use fixed point math, if we're using soft floats, and the user didn't | |||
# specifically ask to use floats anyways. | |||
ifeq ($(CONFIG_SOFT_FLOAT)-$(CONFIG_FAAD2_ALWAYS_USE_FLOATING_POINT),y-) | |||
TARGET_CFLAGS+= -DFIXED_POINT | |||
FAAD2_CONFIG_OPTS= --without-fp -nfp | |||
endif | |||
define Package/faad2/Default | |||
URL:=http://www.audiocoding.com/faad2.html | |||
TITLE:=Freeware Advanced Audio Decoder | |||
endef | |||
define Package/faad2/Default/description | |||
FAAD2 is the fastest ISO AAC audio decoder available. | |||
FAAD2 correctly decodes all MPEG-4 and MPEG-2 MAIN, | |||
LOW, LTP, LD and ER object type AAC files. | |||
endef | |||
define Package/faad2 | |||
$(call Package/faad2/Default) | |||
SECTION:=sound | |||
CATEGORY:=Sound | |||
TITLE+=player | |||
DEPENDS:=+libfaad2 | |||
endef | |||
define Package/faad2/description | |||
$(call Package/faad2/Default/description) | |||
This package contains a binary to play AAC or MP4 files. | |||
endef | |||
define Package/libfaad2 | |||
$(call Package/faad2/Default) | |||
SECTION:=libs | |||
CATEGORY:=Libraries | |||
TITLE+=library | |||
DEPENDS:=@BUILD_PATENTED | |||
MENU:=1 | |||
endef | |||
define Package/libfaad2/config | |||
source "$(SOURCE)/Config.in" | |||
endef | |||
define Package/libfaad2/description | |||
$(call Package/faad2/Default/description) | |||
This package contains the library. | |||
endef | |||
define Build/Configure | |||
# This replacement were do according to many comments on the web because of gcc 3.4.5 version (.6 included).- | |||
# wich doesn't recognices the -iquote parameter to AM_CFLAGS | |||
($(SED) 's,-iquote $$$$(top_srcdir),-I$$$$(top_srcdir),g' $(PKG_BUILD_DIR)/libfaad/Makefile.am; \ | |||
$(SED) 's,-iquote $$$$(top_srcdir),-I$$$$(top_srcdir),g' $(PKG_BUILD_DIR)/libfaad/Makefile.in); | |||
(cd $(PKG_BUILD_DIR); rm -rf config.{cache,status}; \ | |||
autoreconf -vif \ | |||
); | |||
$(call Build/Configure/Default, \ | |||
--with-mp4v2 \ | |||
$(FAAD2_CONFIG_OPTS) \ | |||
--without-xmms \ | |||
, \ | |||
FAAD2_CPPFLAGS="-fno-builtin-cos -fno-builtin-sin -fno-builtin-log" \ | |||
) | |||
endef | |||
define Build/InstallDev | |||
$(INSTALL_DIR) $(1)/usr/include | |||
$(CP) $(PKG_INSTALL_DIR)/usr/include/*.h $(1)/usr/include | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libfaad.{a,so*} $(1)/usr/lib/ | |||
endef | |||
define Package/faad2/install | |||
$(INSTALL_DIR) $(1)/usr/bin | |||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/faad $(1)/usr/bin/ | |||
endef | |||
define Package/libfaad2/install | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libfaad.so.* $(1)/usr/lib/ | |||
endef | |||
$(eval $(call BuildPackage,faad2)) | |||
$(eval $(call BuildPackage,libfaad2)) |
@ -0,0 +1,77 @@ | |||
# | |||
# Copyright (C) 2006-2014 OpenWrt.org | |||
# | |||
# This is free software, licensed under the GNU General Public License v2. | |||
# See /LICENSE for more information. | |||
# | |||
include $(TOPDIR)/rules.mk | |||
PKG_NAME:=flac | |||
PKG_VERSION:=1.2.1 | |||
PKG_RELEASE:=1 | |||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz | |||
PKG_SOURCE_URL:=@SF/flac | |||
PKG_MD5SUM:= | |||
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> | |||
PKG_INSTALL:=1 | |||
PKG_LICENSE:=GFDLv1.2 GPLv2 LGPLv2.1 BSD-3c | |||
PKG_LICENSE_FILES:=README COPYING.FDL COPYING.GPL COPYING.LGPL COPYING.Xiph | |||
PKG_FIXUP:=autoreconf | |||
PKG_REMOVE_FILES:=autogen.sh aclocal.m4 | |||
include $(INCLUDE_DIR)/package.mk | |||
define Package/libflac | |||
SECTION:=libs | |||
CATEGORY:=Libraries | |||
TITLE:=Free Lossless Audio Codec library | |||
URL:=http://flac.sourceforge.net/ | |||
endef | |||
define Build/Configure | |||
$(call Build/Configure/Default, \ | |||
--disable-cpplibs \ | |||
--disable-sse \ | |||
--disable-3dnow \ | |||
--disable-altivec \ | |||
--disable-doxgen-docs \ | |||
--disable-local-xmms-plugin \ | |||
--disable-xmms-plugin \ | |||
--disable-ogg \ | |||
--disable-oggtest \ | |||
--disable-debug \ | |||
) | |||
endef | |||
TARGET_CFLAGS += $(FPIC) | |||
define Build/InstallDev | |||
$(INSTALL_DIR) $(1)/usr/include | |||
$(CP) \ | |||
$(PKG_INSTALL_DIR)/usr/include/FLAC \ | |||
$(1)/usr/include/ | |||
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig | |||
$(CP) \ | |||
$(PKG_INSTALL_DIR)/usr/lib/libFLAC.{a,so*,la} \ | |||
$(1)/usr/lib/ | |||
$(INSTALL_DATA) \ | |||
$(PKG_INSTALL_DIR)/usr/lib/pkgconfig/* \ | |||
$(1)/usr/lib/pkgconfig/ | |||
$(INSTALL_DIR) $(1)/usr/share/aclocal/ | |||
$(INSTALL_DATA) \ | |||
$(PKG_INSTALL_DIR)/usr/share/aclocal/* \ | |||
$(1)/usr/share/aclocal/ | |||
endef | |||
define Package/libflac/install | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libFLAC.so* $(1)/usr/lib/ | |||
endef | |||
$(eval $(call BuildPackage,libflac)) |
@ -0,0 +1,73 @@ | |||
--- a/Makefile.am | |||
+++ b/Makefile.am | |||
@@ -30,7 +30,7 @@ | |||
AUTOMAKE_OPTIONS = foreign 1.7 | |||
-SUBDIRS = doc include m4 man src examples test build obj | |||
+SUBDIRS = include m4 src build obj | |||
DISTCLEANFILES = libtool-disable-static | |||
--- a/Makefile.in | |||
+++ b/Makefile.in | |||
@@ -234,7 +234,7 @@ target_alias = @target_alias@ | |||
AUTOMAKE_OPTIONS = foreign 1.7 | |||
-SUBDIRS = doc include m4 man src examples test build obj | |||
+SUBDIRS = include m4 src build obj | |||
DISTCLEANFILES = libtool-disable-static | |||
--- a/src/Makefile.am | |||
+++ b/src/Makefile.am | |||
@@ -30,12 +30,6 @@ SUBDIRS = \ | |||
metaflac \ | |||
monkeys_audio_utilities \ | |||
$(XMMS_DIRS) \ | |||
- plugin_winamp2 \ | |||
- test_grabbag \ | |||
- test_libs_common \ | |||
- test_libFLAC \ | |||
- test_seeking \ | |||
- test_streams \ | |||
$(CPPLIBS_DIRS) | |||
EXTRA_DIST = \ | |||
--- a/src/Makefile.in | |||
+++ b/src/Makefile.in | |||
@@ -221,7 +221,7 @@ target_alias = @target_alias@ | |||
@FLaC__HAS_XMMS_TRUE@XMMS_DIRS = plugin_common plugin_xmms | |||
-@FLaC__WITH_CPPLIBS_TRUE@CPPLIBS_DIRS = libFLAC++ test_libFLAC++ | |||
+@FLaC__WITH_CPPLIBS_TRUE@CPPLIBS_DIRS = libFLAC++ | |||
SUBDIRS = \ | |||
libFLAC \ | |||
@@ -230,12 +230,6 @@ SUBDIRS = \ | |||
metaflac \ | |||
monkeys_audio_utilities \ | |||
$(XMMS_DIRS) \ | |||
- plugin_winamp2 \ | |||
- test_grabbag \ | |||
- test_libs_common \ | |||
- test_libFLAC \ | |||
- test_seeking \ | |||
- test_streams \ | |||
$(CPPLIBS_DIRS) | |||
@@ -256,9 +250,8 @@ RECURSIVE_TARGETS = info-recursive dvi-r | |||
check-recursive installcheck-recursive | |||
DIST_COMMON = $(srcdir)/Makefile.in Makefile.am | |||
DIST_SUBDIRS = libFLAC share flac metaflac monkeys_audio_utilities \ | |||
- plugin_common plugin_xmms plugin_winamp2 test_grabbag \ | |||
- test_libs_common test_libFLAC test_seeking test_streams \ | |||
- libFLAC++ test_libFLAC++ | |||
+ plugin_common plugin_xmms plugin_winamp2 \ | |||
+ libFLAC++ | |||
all: all-recursive | |||
.SUFFIXES: |
@ -0,0 +1,24 @@ | |||
--- a/src/Makefile.am | |||
+++ b/src/Makefile.am | |||
@@ -26,9 +26,6 @@ endif | |||
SUBDIRS = \ | |||
libFLAC \ | |||
share \ | |||
- flac \ | |||
- metaflac \ | |||
- monkeys_audio_utilities \ | |||
$(XMMS_DIRS) \ | |||
$(CPPLIBS_DIRS) | |||
--- a/src/Makefile.in | |||
+++ b/src/Makefile.in | |||
@@ -226,9 +226,6 @@ target_alias = @target_alias@ | |||
SUBDIRS = \ | |||
libFLAC \ | |||
share \ | |||
- flac \ | |||
- metaflac \ | |||
- monkeys_audio_utilities \ | |||
$(XMMS_DIRS) \ | |||
$(CPPLIBS_DIRS) | |||
@ -0,0 +1,11 @@ | |||
--- a/Makefile.am | |||
+++ b/Makefile.am | |||
@@ -34,6 +34,8 @@ SUBDIRS = include m4 src build obj | |||
DISTCLEANFILES = libtool-disable-static | |||
+ACLOCAL_AMFLAGS = -I m4 | |||
+ | |||
EXTRA_DIST = \ | |||
COPYING.FDL \ | |||
COPYING.GPL \ |
@ -0,0 +1,62 @@ | |||
--- a/src/libFLAC/Makefile.in | |||
+++ b/src/libFLAC/Makefile.in | |||
@@ -66,6 +66,7 @@ NORMAL_UNINSTALL = : | |||
PRE_UNINSTALL = : | |||
POST_UNINSTALL = : | |||
host_triplet = @host@ | |||
+@FLaC__CPU_PPC_TRUE@@FLaC__SYS_DARWIN_FALSE@@FLaC__USE_ALTIVEC_TRUE@am__append_1 = -maltivec -mabi=altivec | |||
ACLOCAL = @ACLOCAL@ | |||
ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ | |||
AMDEP_FALSE = @AMDEP_FALSE@ | |||
@@ -234,13 +235,21 @@ target_alias = @target_alias@ | |||
lib_LTLIBRARIES = libFLAC.la | |||
@DEBUG_TRUE@DEBUGCFLAGS = -DFLAC__OVERFLOW_DETECT | |||
+# Linux-gcc for PPC does not have -force_cpusubtype_ALL, it is Darwin-specific | |||
+#@@@ PPC optimizations temporarily disabled | |||
+@FLaC__CPU_PPC_TRUE@@FLaC__SYS_DARWIN_FALSE@CPUCFLAGS = \ | |||
+@FLaC__CPU_PPC_TRUE@@FLaC__SYS_DARWIN_FALSE@ $(am__append_1) \ | |||
+@FLaC__CPU_PPC_TRUE@@FLaC__SYS_DARWIN_FALSE@ -DFLAC__NO_ASM | |||
+ | |||
+# FIXME: The following logic should be part of configure, not of Makefile.am | |||
+ | |||
# The -force_cpusubtype_ALL is needed to insert a ppc64 instruction | |||
# into cpu.c with an asm(). | |||
#@@@ PPC optimizations temporarily disabled | |||
-@FLaC__CPU_PPC_TRUE@@FLaC__SYS_DARWIN_TRUE@CPUCFLAGS = -faltivec -force_cpusubtype_ALL -DFLAC__NO_ASM | |||
-# Linux-gcc for PPC does not have -force_cpusubtype_ALL, it is Darwin-specific | |||
-#@@@ PPC optimizations temporarily disabled | |||
-@FLaC__CPU_PPC_TRUE@@FLaC__SYS_DARWIN_FALSE@CPUCFLAGS = -maltivec -mabi=altivec -DFLAC__NO_ASM | |||
+@FLaC__CPU_PPC_TRUE@@FLaC__SYS_DARWIN_TRUE@CPUCFLAGS = -faltivec \ | |||
+@FLaC__CPU_PPC_TRUE@@FLaC__SYS_DARWIN_TRUE@ -force_cpusubtype_ALL \ | |||
+@FLaC__CPU_PPC_TRUE@@FLaC__SYS_DARWIN_TRUE@ -DFLAC__NO_ASM \ | |||
+@FLaC__CPU_PPC_TRUE@@FLaC__SYS_DARWIN_TRUE@ $(am__append_1) | |||
AM_CFLAGS = $(DEBUGCFLAGS) $(CPUCFLAGS) @OGG_CFLAGS@ | |||
@FLaC__CPU_PPC_TRUE@@FLaC__NO_ASM_FALSE@ARCH_SUBDIRS = ppc | |||
--- a/src/libFLAC/Makefile.am | |||
+++ b/src/libFLAC/Makefile.am | |||
@@ -32,6 +32,9 @@ lib_LTLIBRARIES = libFLAC.la | |||
if DEBUG | |||
DEBUGCFLAGS = -DFLAC__OVERFLOW_DETECT | |||
endif | |||
+ | |||
+# FIXME: The following logic should be part of configure, not of Makefile.am | |||
+ | |||
if FLaC__CPU_PPC | |||
# The -force_cpusubtype_ALL is needed to insert a ppc64 instruction | |||
# into cpu.c with an asm(). | |||
@@ -40,8 +43,12 @@ if FLaC__SYS_DARWIN | |||
CPUCFLAGS = -faltivec -force_cpusubtype_ALL -DFLAC__NO_ASM | |||
else | |||
# Linux-gcc for PPC does not have -force_cpusubtype_ALL, it is Darwin-specific | |||
+CPUCFLAGS = | |||
+if FLaC__USE_ALTIVEC | |||
+CPUCFLAGS += -maltivec -mabi=altivec | |||
+endif | |||
#@@@ PPC optimizations temporarily disabled | |||
-CPUCFLAGS = -maltivec -mabi=altivec -DFLAC__NO_ASM | |||
+CPUCFLAGS += -DFLAC__NO_ASM | |||
endif | |||
endif | |||
@ -0,0 +1,47 @@ | |||
# | |||
# Copyright (C) 2009-2014 OpenWrt.org | |||
# | |||
# This is free software, licensed under the GNU General Public License v2. | |||
# See /LICENSE for more information. | |||
# | |||
include $(TOPDIR)/rules.mk | |||
PKG_NAME:=intltool | |||
PKG_LIBVER:=0.40 | |||
PKG_VERSION:=$(PKG_LIBVER).6 | |||
PKG_RELEASE:=2 | |||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 | |||
PKG_SOURCE_URL:=@GNOME/intltool/$(PKG_LIBVER) | |||
PKG_MD5SUM:=69bc0353323112f42ad4f9cf351bc3e5 | |||
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> | |||
PKG_HOST_ONLY:=1 | |||
include $(INCLUDE_DIR)/host-build.mk | |||
include $(INCLUDE_DIR)/package.mk | |||
define Package/intltool | |||
SECTION:=libs | |||
CATEGORY:=Libraries | |||
TITLE:=set of tools to centralize translation using GNU gettext | |||
URL:=http://www.freedesktop.org/wiki/Software/intltool | |||
BUILDONLY:=1 | |||
endef | |||
define Package/intltool/description | |||
intltool is a set of tools to centralize translation of many different | |||
file formats using GNU gettext-compatible PO files. | |||
endef | |||
define Require/perl-xml-parser | |||
perl -e 'use XML::Parser;' | |||
endef | |||
$(eval $(call Require,perl-xml-parser, \ | |||
Please install Perl XML::Parser \ | |||
)) | |||
$(eval $(call BuildPackage,intltool)) | |||
$(eval $(call HostBuild)) |
@ -0,0 +1,71 @@ | |||
# | |||
# Copyright (C) 2006-2014 OpenWrt.org | |||
# | |||
# This is free software, licensed under the GNU General Public License v2. | |||
# See /LICENSE for more information. | |||
# | |||
include $(TOPDIR)/rules.mk | |||
PKG_NAME:=audiofile | |||
PKG_VERSION:=0.3.6 | |||
PKG_RELEASE:=2 | |||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz | |||
PKG_SOURCE_URL:= \ | |||
http://github.com/downloads/mpruett/audiofile/ \ | |||
http://www.68k.org/~michael/audiofile/ | |||
PKG_MD5SUM:=2731d79bec0acef3d30d2fc86b0b72fd | |||
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> | |||
PKG_FIXUP:=autoreconf | |||
PKG_INSTALL=1 | |||
include $(INCLUDE_DIR)/package.mk | |||
define Package/libaudiofile | |||
SECTION:=libs | |||
CATEGORY:=Libraries | |||
TITLE:=Audio File library | |||
URL:=http://www.68k.org/~michael/audiofile/ | |||
DEPENDS:=+libflac +libstdcpp | |||
endef | |||
define Package/libaudiofile/description | |||
The audiofile library allows the processing of audio data to and from audio | |||
files of many common formats (currently AIFF, AIFF-C, WAVE, NeXT/Sun, BICS, | |||
FLAC, ALAC, and raw data). | |||
endef | |||
CONFIGURE_ARGS+= \ | |||
--enable-shared \ | |||
--enable-static \ | |||
--with-build-cc="$(HOSTCC)" \ | |||
TARGET_CFLAGS+= $(FPIC) | |||
define Build/InstallDev | |||
$(INSTALL_DIR) $(1)/usr/include | |||
$(CP) \ | |||
$(PKG_INSTALL_DIR)/usr/include/{af_vfs,audiofile,aupvlist}.h \ | |||
$(1)/usr/include/ | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) \ | |||
$(PKG_INSTALL_DIR)/usr/lib/libaudiofile.{la,a,so*} \ | |||
$(1)/usr/lib/ | |||
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig | |||
$(CP) \ | |||
$(PKG_INSTALL_DIR)/usr/lib/pkgconfig/audiofile.pc \ | |||
$(1)/usr/lib/pkgconfig/ | |||
endef | |||
define Package/libaudiofile/install | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) \ | |||
$(PKG_INSTALL_DIR)/usr/lib/libaudiofile.so.* \ | |||
$(1)/usr/lib/ | |||
endef | |||
$(eval $(call BuildPackage,libaudiofile)) |
@ -0,0 +1,71 @@ | |||
# | |||
# Copyright (C) 2006-2014 OpenWrt.org | |||
# | |||
# This is free software, licensed under the GNU General Public License v2. | |||
# See /LICENSE for more information. | |||
# | |||
include $(TOPDIR)/rules.mk | |||
PKG_NAME:=libdaemon | |||
PKG_VERSION:=0.14 | |||
PKG_RELEASE:=4 | |||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz | |||
PKG_SOURCE_URL:=http://0pointer.de/lennart/projects/libdaemon/ | |||
PKG_MD5SUM:=509dc27107c21bcd9fbf2f95f5669563 | |||
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> | |||
PKG_FIXUP:=autoreconf | |||
PKG_INSTALL:=1 | |||
include $(INCLUDE_DIR)/package.mk | |||
define Package/libdaemon | |||
SECTION:=libs | |||
CATEGORY:=Libraries | |||
TITLE:=A lightweight C library that eases the writing of UNIX daemons | |||
URL:=http://0pointer.de/lennart/projects/libdaemon/ | |||
endef | |||
define Package/libdaemon/description | |||
libdaemon is a lightweight C library that eases the writing of UNIX daemons. | |||
It consists of the following parts: | |||
- A wrapper around fork() which does the correct daemonization procedure of a process | |||
- A wrapper around syslog() for simpler and compatible log output to Syslog or STDERR | |||
- An API for writing PID files | |||
- An API for serializing UNIX signals into a pipe for usage with select() or poll() | |||
- An API for running subprocesses with STDOUT and STDERR redirected to syslog | |||
APIs like these are used in most daemon software available. It is not that | |||
simple to get it done right and code duplication is not a goal. | |||
endef | |||
define Build/Configure | |||
$(call Build/Configure/Default, \ | |||
--enable-shared \ | |||
--enable-static \ | |||
--disable-lynx \ | |||
, \ | |||
ac_cv_func_setpgrp_void=yes \ | |||
) | |||
endef | |||
TARGET_CFLAGS += $(FPIC) | |||
define Build/InstallDev | |||
$(INSTALL_DIR) $(1)/usr/include | |||
$(CP) $(PKG_INSTALL_DIR)/usr/include/libdaemon $(1)/usr/include/ | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libdaemon.a $(1)/usr/lib/ | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libdaemon.so* $(1)/usr/lib/ | |||
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libdaemon.pc $(1)/usr/lib/pkgconfig/ | |||
endef | |||
define Package/libdaemon/install | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libdaemon.so.* $(1)/usr/lib/ | |||
endef | |||
$(eval $(call BuildPackage,libdaemon)) |
@ -0,0 +1,30 @@ | |||
From 013963ba35e8fe8897211c0acf5ee98f9a871fc1 Mon Sep 17 00:00:00 2001 | |||
From: Michael Heimpold <mhei@heimpold.de> | |||
Date: Fri, 10 Jan 2014 19:38:51 +0100 | |||
Subject: [PATCH] daemon_set_verbosity: fix erroneous error message | |||
When calling this function with a value other than LOG_DEBUG | |||
the error message was triggered erroneously. | |||
Signed-off-by: Michael Heimpold <mhei@heimpold.de> | |||
--- | |||
libdaemon/dlog.c | 2 +- | |||
1 file changed, 1 insertion(+), 1 deletion(-) | |||
diff --git a/libdaemon/dlog.c b/libdaemon/dlog.c | |||
index 1cc0566..cc2b918 100644 | |||
--- a/libdaemon/dlog.c | |||
+++ b/libdaemon/dlog.c | |||
@@ -42,7 +42,7 @@ static int daemon_verbosity_level = LOG_INFO; | |||
void daemon_set_verbosity(int verbosity_prio) { | |||
/* Allow using negative verbosity levels to hide _all_ messages */ | |||
- if (verbosity_prio > 0 && (verbosity_prio & LOG_PRIMASK) != LOG_PRIMASK) | |||
+ if (verbosity_prio > 0 && (verbosity_prio & LOG_PRIMASK) != verbosity_prio) | |||
daemon_log(LOG_ERR, "The value %d is not a valid priority value", verbosity_prio); | |||
daemon_verbosity_level = verbosity_prio & LOG_PRIMASK; | |||
-- | |||
1.7.10.4 | |||
@ -0,0 +1,65 @@ | |||
# | |||
# Copyright (C) 2006-2014 OpenWrt.org | |||
# | |||
# This is free software, licensed under the GNU General Public License v2. | |||
# See /LICENSE for more information. | |||
# | |||
include $(TOPDIR)/rules.mk | |||
PKG_NAME:=libid3tag | |||
PKG_VERSION:=0.15.1b | |||
PKG_RELEASE:=4 | |||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz | |||
PKG_SOURCE_URL:=@SF/mad | |||
PKG_MD5SUM:=e5808ad997ba32c498803822078748c3 | |||
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> | |||
PKG_LICENSE:=GPLv2 | |||
PKG_LICENSE_FILES:=COPYING | |||
PKG_FIXUP:=autoreconf | |||
PKG_INSTALL:=1 | |||
include $(INCLUDE_DIR)/package.mk | |||
define Package/libid3tag | |||
SECTION:=libs | |||
CATEGORY:=Libraries | |||
DEPENDS:=+zlib | |||
TITLE:=An ID3 tag manipulation library | |||
URL:=http://mad.sourceforge.net/ | |||
endef | |||
define Package/libid3tag/description | |||
libid3tag is a library for reading and (eventually) writing ID3 tags, both | |||
ID3v1 and the various versions of ID3v2. | |||
endef | |||
TARGET_CFLAGS += $(FPIC) | |||
CONFIGURE_VARS += CC="$(TARGET_CC) $(TARGET_CFLAGS)" | |||
define Build/Configure | |||
$(call Build/Configure/Default, \ | |||
--enable-shared \ | |||
--enable-static \ | |||
--disable-debugging \ | |||
--disable-profiling \ | |||
) | |||
endef | |||
define Build/InstallDev | |||
$(INSTALL_DIR) $(1)/usr/include | |||
$(CP) $(PKG_INSTALL_DIR)/usr/include/id3tag.h $(1)/usr/include/ | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libid3tag.so* $(1)/usr/lib/ | |||
endef | |||
define Package/libid3tag/install | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libid3tag.so.* $(1)/usr/lib/ | |||
endef | |||
$(eval $(call BuildPackage,libid3tag)) |
@ -0,0 +1,79 @@ | |||
# | |||
# Copyright (C) 2006-2014 OpenWrt.org | |||
# | |||
# This is free software, licensed under the GNU General Public License v2. | |||
# See /LICENSE for more information. | |||
# | |||
include $(TOPDIR)/rules.mk | |||
PKG_NAME:=libmad | |||
PKG_VERSION:=0.15.1b | |||
PKG_RELEASE:=3 | |||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz | |||
PKG_SOURCE_URL:=@SF/mad \ | |||
ftp://ftp.mars.org/pub/mpeg/ | |||
PKG_MD5SUM:=1be543bc30c56fb6bea1d7bf6a64e66c | |||
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> | |||
PKG_LICENSE:=GPLv2 | |||
PKG_LICENSE_FILES:=COPYING | |||
PKG_FIXUP:=autoreconf | |||
PKG_INSTALL:=1 | |||
include $(INCLUDE_DIR)/package.mk | |||
FPM:=default | |||
ifeq ($(ARCH),armeb) | |||
FPM:=arm | |||
endif | |||
ifeq ($(ARCH),i386) | |||
FPM:=intel | |||
endif | |||
ifeq ($(ARCH),mipsel) | |||
FPM:=mips | |||
endif | |||
define Package/libmad | |||
SECTION:=libs | |||
CATEGORY:=Libraries | |||
TITLE:=An high-quality MPEG audio decoding library | |||
URL:=http://www.underbit.com/products/mad/ | |||
DEPENDS:=@BUILD_PATENTED | |||
endef | |||
define Package/libmad/description | |||
MAD is a high-quality MPEG audio decoder. It currently supports | |||
MPEG-1 and the MPEG-2 extension to lower sampling frequencies, | |||
as well as the de facto MPEG 2.5 format. All three audio layers - | |||
Layer I, Layer II, and Layer III (i.e. MP3) - are fully implemented. | |||
endef | |||
TARGET_CFLAGS += $(FPIC) | |||
CONFIGURE_ARGS+= \ | |||
--enable-shared \ | |||
--enable-static \ | |||
--enable-fpm="$(FPM)" \ | |||
--disable-debugging \ | |||
--enable-speed \ | |||
MAKE_FLAGS+= \ | |||
CFLAGS="$(TARGET_CFLAGS)" \ | |||
define Build/InstallDev | |||
$(INSTALL_DIR) $(1)/usr/include | |||
$(CP) $(PKG_INSTALL_DIR)/usr/include/mad.h $(1)/usr/include/ | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libmad.{a,so*} $(1)/usr/lib/ | |||
endef | |||
define Package/libmad/install | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libmad.so.* $(1)/usr/lib/ | |||
endef | |||
$(eval $(call BuildPackage,libmad)) |
@ -0,0 +1,70 @@ | |||
diff -ur libmad-0.15.1b-orig/fixed.h libmad-0.15.1b/fixed.h | |||
--- libmad-0.15.1b-orig/fixed.h 2004-02-17 12:32:03.000000000 +1030 | |||
+++ libmad-0.15.1b/fixed.h 2009-08-05 10:46:30.000000000 +0930 | |||
@@ -299,6 +299,23 @@ | |||
# elif defined(FPM_MIPS) | |||
+/* Test for gcc >= maj.min, as per __GNUC_PREREQ in glibc */ | |||
+#if defined (__GNUC__) && defined (__GNUC_MINOR__) | |||
+#define __GNUC_PREREQ(maj, min) \ | |||
+ ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min)) | |||
+#else | |||
+#define __GNUC_PREREQ(maj, min) 0 | |||
+#endif | |||
+ | |||
+#if __GNUC_PREREQ(4,4) | |||
+ typedef unsigned int u64_di_t __attribute__ ((mode (DI))); | |||
+# define MAD_F_MLX(hi, lo, x, y) \ | |||
+ do { \ | |||
+ u64_di_t __ll = (u64_di_t) (x) * (y); \ | |||
+ hi = __ll >> 32; \ | |||
+ lo = __ll; \ | |||
+ } while (0) | |||
+#else | |||
/* | |||
* This MIPS version is fast and accurate; the disposition of the least | |||
* significant bit depends on OPT_ACCURACY via mad_f_scale64(). | |||
@@ -328,6 +345,7 @@ | |||
: "%r" ((x) >> 12), "r" ((y) >> 16)) | |||
# define MAD_F_MLZ(hi, lo) ((mad_fixed_t) (lo)) | |||
# endif | |||
+#endif /* __GNU_PREREQ(4,4) */ | |||
# if defined(OPT_SPEED) | |||
# define mad_f_scale64(hi, lo) \ | |||
diff -ur libmad-0.15.1b-orig/mad.h libmad-0.15.1b/mad.h | |||
--- libmad-0.15.1b-orig/mad.h 2004-02-17 13:25:44.000000000 +1030 | |||
+++ libmad-0.15.1b/mad.h 2009-08-05 10:42:40.000000000 +0930 | |||
@@ -344,6 +344,23 @@ | |||
# elif defined(FPM_MIPS) | |||
+/* Test for gcc >= maj.min, as per __GNUC_PREREQ in glibc */ | |||
+#if defined (__GNUC__) && defined (__GNUC_MINOR__) | |||
+#define __GNUC_PREREQ(maj, min) \ | |||
+ ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min)) | |||
+#else | |||
+#define __GNUC_PREREQ(maj, min) 0 | |||
+#endif | |||
+ | |||
+#if __GNUC_PREREQ(4,4) | |||
+ typedef unsigned int u64_di_t __attribute__ ((mode (DI))); | |||
+# define MAD_F_MLX(hi, lo, x, y) \ | |||
+ do { \ | |||
+ u64_di_t __ll = (u64_di_t) (x) * (y); \ | |||
+ hi = __ll >> 32; \ | |||
+ lo = __ll; \ | |||
+ } while (0) | |||
+#else | |||
/* | |||
* This MIPS version is fast and accurate; the disposition of the least | |||
* significant bit depends on OPT_ACCURACY via mad_f_scale64(). | |||
@@ -373,6 +390,7 @@ | |||
: "%r" ((x) >> 12), "r" ((y) >> 16)) | |||
# define MAD_F_MLZ(hi, lo) ((mad_fixed_t) (lo)) | |||
# endif | |||
+#endif /* __GNU_PREREQ(4,4) */ | |||
# if defined(OPT_SPEED) | |||
# define mad_f_scale64(hi, lo) \ |
@ -0,0 +1,68 @@ | |||
# | |||
# Copyright (C) 2010-2014 OpenWrt.org | |||
# | |||
# This is free software, licensed under the GNU General Public License v2. | |||
# See /LICENSE for more information. | |||
# | |||
include $(TOPDIR)/rules.mk | |||
PKG_NAME:=libmms | |||
PKG_VERSION:=0.6.4 | |||
PKG_RELEASE:=2 | |||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz | |||
PKG_SOURCE_URL:=@SF/libmms | |||
PKG_MD5SUM:=d6b665b335a6360e000976e770da7691 | |||
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> | |||
PKG_LICENSE:=LGPLv2.1 | |||
PKG_LICENSE_FILES:=COPYING.LIB | |||
PKG_FIXUP:=autoreconf | |||
PKG_INSTALL:=1 | |||
include $(INCLUDE_DIR)/package.mk | |||
include $(INCLUDE_DIR)/nls.mk | |||
define Package/libmms | |||
SECTION:=libs | |||
CATEGORY:=Libraries | |||
DEPENDS:=+glib2 | |||
TITLE:=MMS stream protocol library | |||
URL:=http://libmms.sourceforge.net | |||
DEPENDS:=$(ICONV_DEPENDS) | |||
endef | |||
define Package/libmms/description | |||
LibMMS is a common library for parsing mms:// and mmsh:// type network streams. | |||
These are commonly used to stream Windows Media Video content over the web. | |||
LibMMS itself is only for receiving MMS stream, | |||
it doesn't handle sending at all. | |||
endef | |||
TARGET_CFLAGS += $(FPIC) | |||
TARGET_LDFLAGS += $(if $(ICONV_FULL),-liconv) | |||
define Build/Configure | |||
(cd $(PKG_BUILD_DIR); ./autogen.sh ); | |||
$(call Build/Configure/Default) | |||
endef | |||
define Build/InstallDev | |||
$(INSTALL_DIR) $(1)/usr/include | |||
$(CP) $(PKG_INSTALL_DIR)/usr/include/libmms $(1)/usr/include/ | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libmms.{a,so*} $(1)/usr/lib/ | |||
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig | |||
$(INSTALL_DATA) \ | |||
$(PKG_INSTALL_DIR)/usr/lib/pkgconfig/*.pc \ | |||
$(1)/usr/lib/pkgconfig | |||
endef | |||
define Package/libmms/install | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libmms.so.* $(1)/usr/lib/ | |||
endef | |||
$(eval $(call BuildPackage,libmms)) |
@ -0,0 +1,67 @@ | |||
# | |||
# Copyright (C) 2011-2014 OpenWrt.org | |||
# | |||
# This is free software, licensed under the GNU General Public License v2. | |||
# See /LICENSE for more information. | |||
# | |||
include $(TOPDIR)/rules.mk | |||
PKG_NAME:=libmpdclient | |||
PKG_VERSION:=2.7 | |||
PKG_RELEASE:=2 | |||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 | |||
PKG_SOURCE_URL:=http://www.musicpd.org/download/libmpdclient/2/ | |||
PKG_MD5SUM:=053a97f1b045646d2d01a68fb2ddb5ef | |||
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> | |||
PKG_INSTALL:=1 | |||
include $(INCLUDE_DIR)/package.mk | |||
define Package/libmpdclient | |||
TITLE:=libmpdclient | |||
SECTION:=libs | |||
CATEGORY:=Libraries | |||
URL:=http://mpd.wikia.com/wiki/ClientLib:libmpdclient | |||
DEPENDS:= | |||
endef | |||
define Package/libmpdclient/description | |||
A stable, documented, asynchronous API library for interfacing MPD in the C, C++ & Objective C languages. | |||
endef | |||
TARGET_CFLAGS+="-std=gnu99" | |||
#TARGET_LDFLAGS+=-lpthread | |||
define Build/Configure | |||
$(call Build/Configure/Default) | |||
endef | |||
define Build/InstallDev | |||
$(INSTALL_DIR) \ | |||
$(1)/usr/include \ | |||
$(1)/usr/lib \ | |||
$(1)/usr/lib/pkgconfig | |||
$(CP) \ | |||
$(PKG_INSTALL_DIR)/usr/lib/* \ | |||
$(1)/usr/lib/ | |||
$(CP) \ | |||
$(PKG_INSTALL_DIR)/usr/include/* \ | |||
$(1)/usr/include/ | |||
$(CP) \ | |||
$(PKG_INSTALL_DIR)/usr/lib/pkgconfig \ | |||
$(1)/usr/lib/ | |||
endef | |||
define Package/libmpdclient/install | |||
$(INSTALL_DIR) \ | |||
$(1)/usr/lib | |||
$(CP) \ | |||
$(PKG_INSTALL_DIR)/usr/lib/libmpdclient.so* \ | |||
$(1)/usr/lib/ | |||
endef | |||
$(eval $(call BuildPackage,libmpdclient)) |
@ -0,0 +1,59 @@ | |||
# | |||
# Copyright (C) 2008-2014 OpenWrt.org | |||
# | |||
# This is free software, licensed under the GNU General Public License v2. | |||
# See /LICENSE for more information. | |||
# | |||
include $(TOPDIR)/rules.mk | |||
PKG_NAME:=libogg | |||
PKG_VERSION:=1.3.2 | |||
PKG_RELEASE:=2 | |||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz | |||
PKG_SOURCE_URL:=http://downloads.xiph.org/releases/ogg/ | |||
PKG_MD5SUM:=5c3a34309d8b98640827e5d0991a4015 | |||
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> | |||
PKG_LICENSE:=BSD-3c | |||
PKG_LICENSE_FILES:=COPYING | |||
PKG_FIXUP:=autoreconf | |||
PKG_INSTALL:=1 | |||
include $(INCLUDE_DIR)/package.mk | |||
define Package/libogg | |||
SECTION:=libs | |||
CATEGORY:=Libraries | |||
TITLE:=libogg | |||
URL:=http://xiph.org/ogg/ | |||
endef | |||
define Package/libogg/description | |||
Ogg project codecs use the Ogg bitstream format to arrange the raw, | |||
compressed bitstream into a more robust, useful form. For example, | |||
the Ogg bitstream makes seeking, time stamping and error recovery | |||
possible, as well as mixing several sepearate, concurrent media | |||
streams into a single physical bitstream. | |||
endef | |||
define Build/InstallDev | |||
$(INSTALL_DIR) $(1)/usr/include/ogg/ | |||
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/ogg/* $(1)/usr/include/ogg/ | |||
$(INSTALL_DIR) $(1)/usr/lib/ | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/*.{so*,a,la} $(1)/usr/lib/ | |||
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig/ | |||
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/* $(1)/usr/lib/pkgconfig/ | |||
$(INSTALL_DIR) $(1)/usr/share/aclocal/ | |||
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/aclocal/* $(1)/usr/share/aclocal/ | |||
endef | |||
define Package/libogg/install | |||
$(INSTALL_DIR) $(1)/usr/lib/ | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so.* $(1)/usr/lib/ | |||
endef | |||
$(eval $(call BuildPackage,libogg)) |
@ -0,0 +1,76 @@ | |||
# | |||
# Copyright (C) 2006-2014 OpenWrt.org | |||
# | |||
# This is free software, licensed under the GNU General Public License v2. | |||
# See /LICENSE for more information. | |||
# | |||
include $(TOPDIR)/rules.mk | |||
PKG_NAME:=libupnp | |||
PKG_VERSION:=1.6.19 | |||
PKG_RELEASE:=2 | |||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 | |||
PKG_SOURCE_URL:=@SF/pupnp | |||
PKG_MD5SUM:=ee16e5d33a3ea7506f38d71facc057dd | |||
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> | |||
PKG_FIXUP:=autoreconf | |||
PKG_INSTALL:=1 | |||
include $(INCLUDE_DIR)/package.mk | |||
define Package/libupnp/Default | |||
SECTION:=libs | |||
CATEGORY:=Libraries | |||
URL:=http://pupnp.sourceforge.net/ | |||
endef | |||
define Package/libupnp | |||
$(call Package/libupnp/Default) | |||
DEPENDS:=+libpthread | |||
TITLE:=UPnP SDK library | |||
MENU:=1 | |||
endef | |||
define Package/libupnp/description | |||
The portable SDK for UPnP Devices (libupnp) provides developers with an API and | |||
open source code for building control points, devices, and bridges that are | |||
compliant with Version 1.0 of the Universal Plug and Play Device Architecture | |||
Specification. | |||
endef | |||
define Package/libupnp-sample | |||
$(call Package/libupnp/Default) | |||
DEPENDS:=libupnp | |||
TITLE:=UPnP sample applications | |||
endef | |||
define Package/libupnp-sample/description | |||
TVcontrolpoint & tvdevice sample applications run inside /etc/upnp-tvdevice/ | |||
endef | |||
define Build/InstallDev | |||
$(INSTALL_DIR) $(1)/usr/include | |||
$(CP) $(PKG_INSTALL_DIR)/usr/include/upnp $(1)/usr/include/ | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{ixml,threadutil,upnp}.{a,so*,la} $(1)/usr/lib/ | |||
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libupnp.pc $(1)/usr/lib/pkgconfig/ | |||
endef | |||
define Package/libupnp/install | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{ixml,threadutil,upnp}.so.* $(1)/usr/lib/ | |||
endef | |||
define Package/libupnp-sample/install | |||
$(INSTALL_DIR) $(1)/usr/bin | |||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/upnp/sample/.libs/* $(1)/usr/bin | |||
$(INSTALL_DIR) $(1)/etc/upnp-tvdevice/web | |||
$(INSTALL_DATA) $(PKG_BUILD_DIR)/upnp/sample/web/* $(1)/etc/upnp-tvdevice | |||
endef | |||
$(eval $(call BuildPackage,libupnp)) | |||
$(eval $(call BuildPackage,libupnp-sample)) |
@ -0,0 +1,65 @@ | |||
# | |||
# Copyright (C) 2008-2014 OpenWrt.org | |||
# | |||
# This is free software, licensed under the GNU General Public License v2. | |||
# See /LICENSE for more information. | |||
# | |||
include $(TOPDIR)/rules.mk | |||
PKG_NAME:=libvorbis | |||
PKG_VERSION:=1.3.4 | |||
PKG_RELEASE:=2 | |||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz | |||
PKG_SOURCE_URL:=http://downloads.xiph.org/releases/vorbis/ | |||
PKG_MD5SUM:=55f2288055e44754275a17c9a2497391 | |||
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> | |||
PKG_LICENSE:=BSD-3c | |||
PKG_LICENSE_FILES:=COPYING | |||
PKG_FIXUP:=autoreconf | |||
PKG_INSTALL:=1 | |||
include $(INCLUDE_DIR)/package.mk | |||
define Package/libvorbis | |||
SECTION:=libs | |||
CATEGORY:=Libraries | |||
TITLE:=libvorbis | |||
URL:=http://xiph.org/vorbis/ | |||
DEPENDS:=+libogg | |||
endef | |||
define Package/libvorbis/description | |||
Vorbis is a general purpose audio and music encoding format | |||
contemporary to MPEG-4's AAC and TwinVQ, the next generation beyond | |||
MPEG audio layer 3. Unlike the MPEG sponsored formats (and other | |||
proprietary formats such as RealAudio G2 and Windows' flavor of the | |||
month), the Vorbis CODEC specification belongs to the public domain. | |||
All the technical details are published and documented, and any | |||
software entity may make full use of the format without license | |||
fee, royalty or patent concerns. | |||
endef | |||
CONFIGURE_ARGS+= \ | |||
--disable-oggtest \ | |||
define Build/InstallDev | |||
$(INSTALL_DIR) $(1)/usr/include/vorbis/ | |||
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/vorbis/* $(1)/usr/include/vorbis/ | |||
$(INSTALL_DIR) $(1)/usr/lib/ | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/*.{so*,a,la} $(1)/usr/lib/ | |||
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig/ | |||
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/* $(1)/usr/lib/pkgconfig/ | |||
$(INSTALL_DIR) $(1)/usr/share/aclocal/ | |||
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/aclocal/* $(1)/usr/share/aclocal/ | |||
endef | |||
define Package/libvorbis/install | |||
$(INSTALL_DIR) $(1)/usr/lib/ | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so.* $(1)/usr/lib/ | |||
endef | |||
$(eval $(call BuildPackage,libvorbis)) |
@ -0,0 +1,57 @@ | |||
# | |||
# Copyright (C) 2006-2014 OpenWrt.org | |||
# | |||
# This is free software, licensed under the GNU General Public License v2. | |||
# See /LICENSE for more information. | |||
# | |||
include $(TOPDIR)/rules.mk | |||
PKG_NAME:=libvorbisidec | |||
PKG_VERSION:=1.0.2+svn18153 | |||
PKG_RELEASE:=2 | |||
PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).orig.tar.gz | |||
PKG_SOURCE_URL:=http://ftp.de.debian.org/debian/pool/main/libv/libvorbisidec/ | |||
PKG_MD5SUM:=4190859414c5d6760e316b5cf00fe7c5 | |||
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> | |||
PKG_LICENSE:=BSD-3c | |||
PKG_LICENSE_FILES:=COPYING | |||
PKG_FIXUP:=autoreconf | |||
PKG_INSTALL:=1 | |||
include $(INCLUDE_DIR)/package.mk | |||
define Package/libvorbisidec | |||
SECTION:=libs | |||
CATEGORY:=Libraries | |||
TITLE:=A fixed-point Ogg/Vorbis decoder library | |||
DEPENDS:= +libogg | |||
URL:=http://wiki.xiph.org/index.php/Tremor | |||
endef | |||
define Package/libvorbisidec/description | |||
libvorbisidec is "tremor", a fixed-point implementation of libvorbis. | |||
It also has libogg built-in. It is suitable as a replacement for | |||
libvorbis and libogg in tremor-aware applications. | |||
Tremor is a decoder only. | |||
endef | |||
TARGET_CFLAGS += $(FPIC) | |||
CONFIGURE_ARGS += --enable-shared --enable-static | |||
define Build/InstallDev | |||
$(INSTALL_DIR) $(1)/usr/include | |||
$(CP) $(PKG_INSTALL_DIR)/usr/include/tremor $(1)/usr/include/ | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libvorbisidec.{a,so*} $(1)/usr/lib/ | |||
endef | |||
define Package/libvorbisidec/install | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libvorbisidec.so.* $(1)/usr/lib/ | |||
endef | |||
$(eval $(call BuildPackage,libvorbisidec)) |
@ -0,0 +1,371 @@ | |||
menu "Configuration" | |||
depends on PACKAGE_libffmpeg-custom | |||
config FFMPEG_CUSTOM_PATENTED | |||
bool "Include patented codecs and technologies" | |||
default BUILD_PATENTED | |||
comment "Profiles ---" | |||
config FFMPEG_CUSTOM_FFSERVER_SUPPORT | |||
bool "Include support for ffserver (FFmpeg streaming server)" | |||
select FFMPEG_CUSTOM_MUXER_ffm | |||
select FFMPEG_CUSTOM_DEMUXER_ffm | |||
select FFMPEG_CUSTOM_DEMUXER_rtsp | |||
select FFMPEG_CUSTOM_PROTOCOL_rtp | |||
config FFMPEG_CUSTOM_LIBDLNA_SUPPORT | |||
bool "Include support for libdlna/ushare" | |||
depends on FFMPEG_CUSTOM_PATENTED | |||
select FFMPEG_CUSTOM_DECODER_ac3 | |||
select FFMPEG_CUSTOM_DECODER_atrac3 | |||
select FFMPEG_CUSTOM_DECODER_h264 | |||
select FFMPEG_CUSTOM_DECODER_jpegls | |||
select FFMPEG_CUSTOM_DECODER_mp3 | |||
select FFMPEG_CUSTOM_DECODER_mpeg1video | |||
select FFMPEG_CUSTOM_DECODER_mpeg2video | |||
select FFMPEG_CUSTOM_DECODER_mpeg4 | |||
select FFMPEG_CUSTOM_DECODER_mpegvideo | |||
select FFMPEG_CUSTOM_DECODER_wmav1 | |||
select FFMPEG_CUSTOM_DECODER_wmav2 | |||
select FFMPEG_CUSTOM_DECODER_png | |||
select FFMPEG_CUSTOM_DEMUXER_ac3 | |||
select FFMPEG_CUSTOM_DEMUXER_h264 | |||
select FFMPEG_CUSTOM_DEMUXER_mp3 | |||
select FFMPEG_CUSTOM_DEMUXER_mpegvideo | |||
config FFMPEG_CUSTOM_MINIDLNA_SUPPORT | |||
bool "Include support for minidlna" | |||
depends on FFMPEG_CUSTOM_PATENTED | |||
select FFMPEG_CUSTOM_DECODER_aac | |||
select FFMPEG_CUSTOM_DECODER_ac3 | |||
select FFMPEG_CUSTOM_DECODER_flac | |||
select FFMPEG_CUSTOM_DECODER_h264 | |||
select FFMPEG_CUSTOM_DECODER_jpegls | |||
select FFMPEG_CUSTOM_DECODER_mp3 | |||
select FFMPEG_CUSTOM_DECODER_mpeg1video | |||
select FFMPEG_CUSTOM_DECODER_mpeg2video | |||
select FFMPEG_CUSTOM_DECODER_mpeg4 | |||
select FFMPEG_CUSTOM_DECODER_mpegvideo | |||
select FFMPEG_CUSTOM_DECODER_wmav1 | |||
select FFMPEG_CUSTOM_DECODER_wmav2 | |||
select FFMPEG_CUSTOM_DECODER_png | |||
select FFMPEG_CUSTOM_DEMUXER_aac | |||
select FFMPEG_CUSTOM_DEMUXER_ac3 | |||
select FFMPEG_CUSTOM_DEMUXER_avi | |||
select FFMPEG_CUSTOM_DEMUXER_flac | |||
select FFMPEG_CUSTOM_DEMUXER_h264 | |||
select FFMPEG_CUSTOM_DEMUXER_matroska | |||
select FFMPEG_CUSTOM_DEMUXER_mov | |||
select FFMPEG_CUSTOM_DEMUXER_mp3 | |||
select FFMPEG_CUSTOM_DEMUXER_mpegvideo | |||
select FFMPEG_CUSTOM_PROTOCOL_file | |||
comment "Encoders ---" | |||
config FFMPEG_CUSTOM_ENCODER_ac3 | |||
bool "AC3" | |||
depends on FFMPEG_CUSTOM_PATENTED | |||
select FFMPEG_CUSTOM_PARSER_ac3 | |||
config FFMPEG_CUSTOM_ENCODER_jpegls | |||
bool "JPEG-LS" | |||
config FFMPEG_CUSTOM_ENCODER_mpeg1video | |||
bool "MPEG-1 Video" | |||
config FFMPEG_CUSTOM_ENCODER_mpeg2video | |||
bool "MPEG-2 Video" | |||
depends on FFMPEG_CUSTOM_PATENTED | |||
config FFMPEG_CUSTOM_ENCODER_mpeg4 | |||
bool "MPEG-4" | |||
depends on FFMPEG_CUSTOM_PATENTED | |||
config FFMPEG_CUSTOM_ENCODER_pcm_s16be | |||
bool "PCM signed 16-bit big-endian" | |||
config FFMPEG_CUSTOM_ENCODER_pcm_s16le | |||
bool "PCM signed 16-bit little-endian" | |||
config FFMPEG_CUSTOM_ENCODER_png | |||
bool "PNG" | |||
select FFMPEG_CUSTOM_ENCODER_zlib | |||
config FFMPEG_CUSTOM_ENCODER_vorbis | |||
bool "Vorbis" | |||
config FFMPEG_CUSTOM_ENCODER_zlib | |||
bool "Zlib" | |||
comment "Decoders ---" | |||
config FFMPEG_CUSTOM_DECODER_aac | |||
bool "AAC (Advanced Audio Coding)" | |||
depends on FFMPEG_CUSTOM_PATENTED | |||
select FFMPEG_CUSTOM_PARSER_aac | |||
config FFMPEG_CUSTOM_SELECT_adpcm | |||
bool "ADPCM (multiple types)" | |||
config FFMPEG_CUSTOM_DECODER_ac3 | |||
bool "AC3" | |||
depends on FFMPEG_CUSTOM_PATENTED | |||
select FFMPEG_CUSTOM_PARSER_ac3 | |||
config FFMPEG_CUSTOM_DECODER_alac | |||
bool "ALAC" | |||
config FFMPEG_CUSTOM_DECODER_amrnb | |||
bool "AMR-NB" | |||
select FFMPEG_CUSTOM_DEMUXER_amr | |||
config FFMPEG_CUSTOM_DECODER_amrwb | |||
bool "AMR-WB" | |||
select FFMPEG_CUSTOM_DEMUXER_amr | |||
config FFMPEG_CUSTOM_DECODER_ape | |||
bool "APE" | |||
config FFMPEG_CUSTOM_DECODER_atrac3 | |||
bool "ATRAC3" | |||
depends on FFMPEG_CUSTOM_PATENTED | |||
config FFMPEG_CUSTOM_DECODER_flac | |||
bool "FLAC" | |||
select FFMPEG_CUSTOM_PARSER_flac | |||
config FFMPEG_CUSTOM_DECODER_gif | |||
bool "GIF" | |||
config FFMPEG_CUSTOM_DECODER_h264 | |||
bool "H.264" | |||
depends on FFMPEG_CUSTOM_PATENTED | |||
config FFMPEG_CUSTOM_DECODER_jpegls | |||
bool "JPEG-LS" | |||
config FFMPEG_CUSTOM_DECODER_mp2 | |||
bool "MP2 (MPEG Audio Layer 2)" | |||
depends on FFMPEG_CUSTOM_PATENTED | |||
config FFMPEG_CUSTOM_DECODER_mp3 | |||
bool "MP3 (MPEG Audio Layer 2)" | |||
depends on FFMPEG_CUSTOM_PATENTED | |||
config FFMPEG_CUSTOM_DECODER_mpegvideo | |||
bool "MPEG Video" | |||
config FFMPEG_CUSTOM_DECODER_mpeg1video | |||
bool "MPEG-1 Video" | |||
config FFMPEG_CUSTOM_DECODER_mpeg2video | |||
bool "MPEG-2 Video" | |||
depends on FFMPEG_CUSTOM_PATENTED | |||
config FFMPEG_CUSTOM_DECODER_mpeg4 | |||
bool "MPEG-4" | |||
depends on FFMPEG_CUSTOM_PATENTED | |||
config FFMPEG_CUSTOM_DECODER_mpc7 | |||
bool "Musepack 7" | |||
select FFMPEG_CUSTOM_DEMUXER_mpc | |||
config FFMPEG_CUSTOM_DECODER_mpc8 | |||
bool "Musepack 8" | |||
select FFMPEG_CUSTOM_DEMUXER_mpc8 | |||
config FFMPEG_CUSTOM_DECODER_pcm_s16be | |||
bool "PCM signed 16-bit big-endian" | |||
config FFMPEG_CUSTOM_DECODER_pcm_s16le | |||
bool "PCM signed 16-bit little-endian" | |||
config FFMPEG_CUSTOM_DECODER_png | |||
bool "PNG" | |||
select FFMPEG_CUSTOM_DECODER_zlib | |||
config FFMPEG_CUSTOM_SELECT_speex | |||
bool "Speex" | |||
config FFMPEG_CUSTOM_DECODER_vorbis | |||
bool "Vorbis" | |||
config FFMPEG_CUSTOM_DECODER_wavpack | |||
bool "Wavpack" | |||
config FFMPEG_CUSTOM_DECODER_wmav1 | |||
bool "WMAv1" | |||
depends on FFMPEG_CUSTOM_PATENTED | |||
config FFMPEG_CUSTOM_DECODER_wmav2 | |||
bool "WMAv2" | |||
depends on FFMPEG_CUSTOM_PATENTED | |||
config FFMPEG_CUSTOM_DECODER_zlib | |||
bool "Zlib" | |||
comment "Muxers ---" | |||
config FFMPEG_CUSTOM_MUXER_ac3 | |||
bool "AC3" | |||
depends on FFMPEG_CUSTOM_PATENTED | |||
config FFMPEG_CUSTOM_MUXER_ffm | |||
bool "FFM (ffserver live feed)" | |||
config FFMPEG_CUSTOM_MUXER_h264 | |||
bool "H.264" | |||
depends on FFMPEG_CUSTOM_PATENTED | |||
config FFMPEG_CUSTOM_MUXER_mp3 | |||
bool "MP3 (MPEG Audio Layer 3)" | |||
config FFMPEG_CUSTOM_MUXER_mp4 | |||
bool "MP4" | |||
config FFMPEG_CUSTOM_MUXER_mpeg1video | |||
bool "MPEG-1 Video" | |||
config FFMPEG_CUSTOM_MUXER_mpeg2video | |||
bool "MPEG-2 Video" | |||
config FFMPEG_CUSTOM_MUXER_mpegts | |||
bool "MPEG-2 (TS)" | |||
config FFMPEG_CUSTOM_MUXER_ogg | |||
bool "Ogg" | |||
config FFMPEG_CUSTOM_MUXER_rtp | |||
bool "RTP" | |||
comment "Demuxers ---" | |||
config FFMPEG_CUSTOM_DEMUXER_aac | |||
bool "AAC" | |||
config FFMPEG_CUSTOM_DEMUXER_avi | |||
bool "AVI (Audio Video Interleave)" | |||
config FFMPEG_CUSTOM_DEMUXER_ac3 | |||
bool "AC3" | |||
config FFMPEG_CUSTOM_DEMUXER_amr | |||
bool "AMR" | |||
config FFMPEG_CUSTOM_DEMUXER_ape | |||
bool "APE" | |||
config FFMPEG_CUSTOM_DEMUXER_flac | |||
bool "FLAC" | |||
config FFMPEG_CUSTOM_DEMUXER_ffm | |||
bool "FFM (ffserver live feed)" | |||
config FFMPEG_CUSTOM_DEMUXER_h264 | |||
bool "H.264" | |||
depends on FFMPEG_CUSTOM_PATENTED | |||
config FFMPEG_CUSTOM_DEMUXER_matroska | |||
bool "Matroska (MKA,MKV)" | |||
select FFMPEG_CUSTOM_DECODER_zlib | |||
config FFMPEG_CUSTOM_DEMUXER_mov | |||
bool "MOV/MP4/M4A/3GP/3G2/MJ2" | |||
select FFMPEG_CUSTOM_DECODER_zlib | |||
config FFMPEG_CUSTOM_DEMUXER_mp3 | |||
bool "MP3 (MPEG Audio Layer 3)" | |||
select FFMPEG_CUSTOM_PARSER_mpegaudio | |||
config FFMPEG_CUSTOM_DEMUXER_mpegvideo | |||
bool "MPEG Video" | |||
config FFMPEG_CUSTOM_DEMUXER_mpegps | |||
bool "MPEG-2 (PS)" | |||
config FFMPEG_CUSTOM_DEMUXER_mpegts | |||
bool "MPEG-2 (TS)" | |||
config FFMPEG_CUSTOM_DEMUXER_mpc | |||
bool "Musepack" | |||
config FFMPEG_CUSTOM_DEMUXER_mpc8 | |||
bool "Musepack 8" | |||
config FFMPEG_CUSTOM_DEMUXER_ogg | |||
bool "Ogg" | |||
config FFMPEG_CUSTOM_DEMUXER_rm | |||
bool "RM" | |||
help | |||
RealMedia format demuxer | |||
config FFMPEG_CUSTOM_DEMUXER_rtsp | |||
bool "RTSP" | |||
select FFMPEG_CUSTOM_DEMUXER_rm | |||
select FFMPEG_CUSTOM_DEMUXER_sdp | |||
select FFMPEG_CUSTOM_DEMUXER_rtp | |||
config FFMPEG_CUSTOM_DEMUXER_sdp | |||
bool "SDP" | |||
select FFMPEG_CUSTOM_DEMUXER_mpegts | |||
config FFMPEG_CUSTOM_DEMUXER_rtp | |||
bool "RTP" | |||
config FFMPEG_CUSTOM_DEMUXER_wav | |||
bool "WAV" | |||
config FFMPEG_CUSTOM_DEMUXER_wv | |||
bool "WV" | |||
comment "Parsers ---" | |||
config FFMPEG_CUSTOM_PARSER_aac | |||
bool "AAC (Advanced Audio Coding)" | |||
depends on FFMPEG_CUSTOM_PATENTED | |||
config FFMPEG_CUSTOM_PARSER_ac3 | |||
bool "AC3" | |||
config FFMPEG_CUSTOM_PARSER_flac | |||
bool "FLAC" | |||
config FFMPEG_CUSTOM_PARSER_h264 | |||
bool "H.264" | |||
depends on FFMPEG_CUSTOM_PATENTED | |||
select FFMPEG_CUSTOM_DECODER_h264 | |||
config FFMPEG_CUSTOM_PARSER_mpegaudio | |||
bool "MPEG Audio" | |||
config FFMPEG_CUSTOM_PARSER_mpegvideo | |||
bool "MPEG Video" | |||
config FFMPEG_CUSTOM_PARSER_mpeg4video | |||
bool "MPEG-4 Video" | |||
comment "Protocols ---" | |||
config FFMPEG_CUSTOM_PROTOCOL_file | |||
bool "file:" | |||
config FFMPEG_CUSTOM_PROTOCOL_http | |||
bool "http:" | |||
config FFMPEG_CUSTOM_PROTOCOL_pipe | |||
bool "pipe:" | |||
config FFMPEG_CUSTOM_PROTOCOL_rtp | |||
bool "rtp:" | |||
select FFMPEG_CUSTOM_PROTOCOL_udp | |||
config FFMPEG_CUSTOM_PROTOCOL_tcp | |||
bool "tcp:" | |||
config FFMPEG_CUSTOM_PROTOCOL_udp | |||
bool "udp:" | |||
endmenu | |||
@ -0,0 +1,575 @@ | |||
# | |||
# Copyright (C) 2006-2014 OpenWrt.org | |||
# | |||
# This is free software, licensed under the GNU General Public License v2. | |||
# See /LICENSE for more information. | |||
# | |||
include $(TOPDIR)/rules.mk | |||
PKG_NAME:=ffmpeg | |||
PKG_VERSION:=0.11.5 | |||
PKG_RELEASE:=4 | |||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 | |||
PKG_SOURCE_URL:=http://ffmpeg.org/releases/ | |||
PKG_MD5SUM:=ea25fc252c132141f12988ed5506bfe8 | |||
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> | |||
PKG_LICENSE:=LGPLv2.1+ GPLv2+ LGPLv3 | |||
PKG_LICENSE_FILES:=COPYING.GPLv2 COPYING.GPLv3 COPYING.LGPLv2.1 COPYING.LGPLv3 | |||
FFMPEG_CUSTOM_ENCODERS:= \ | |||
ac3 \ | |||
jpegls \ | |||
mpeg1video \ | |||
mpeg2video \ | |||
mpeg4 \ | |||
pcm_s16be \ | |||
pcm_s16le \ | |||
png \ | |||
vorbis \ | |||
zlib \ | |||
FFMPEG_CUSTOM_DECODERS:= \ | |||
aac \ | |||
ac3 \ | |||
alac \ | |||
amrnb \ | |||
amrwb \ | |||
ape \ | |||
atrac3 \ | |||
flac \ | |||
gif \ | |||
h264 \ | |||
jpegls \ | |||
mp2 \ | |||
mp3 \ | |||
mpeg1video \ | |||
mpeg2video \ | |||
mpeg4 \ | |||
mpegvideo \ | |||
mpc7 \ | |||
mpc8 \ | |||
pcm_s16be \ | |||
pcm_s16le \ | |||
png \ | |||
vorbis \ | |||
wavpack \ | |||
wmav1 \ | |||
wmav2 \ | |||
zlib \ | |||
FFMPEG_CUSTOM_MUXERS:= \ | |||
ac3 \ | |||
ffm \ | |||
h264 \ | |||
mp3 \ | |||
mp4 \ | |||
mpeg1video \ | |||
mpeg2video \ | |||
mpegts \ | |||
ogg \ | |||
rtp \ | |||
FFMPEG_CUSTOM_DEMUXERS:= \ | |||
aac \ | |||
ac3 \ | |||
amr \ | |||
ape \ | |||
avi \ | |||
flac \ | |||
ffm \ | |||
h264 \ | |||
matroska \ | |||
mov \ | |||
mp3 \ | |||
mpegps \ | |||
mpegts \ | |||
mpegvideo \ | |||
mpc \ | |||
mpc8 \ | |||
ogg \ | |||
rm \ | |||
rtsp \ | |||
rtp \ | |||
sdp \ | |||
v4l2 \ | |||
wav \ | |||
wv \ | |||
FFMPEG_CUSTOM_PARSERS:= \ | |||
aac \ | |||
flac \ | |||
ac3 \ | |||
h264 \ | |||
mpegaudio \ | |||
mpeg4video \ | |||
mpegvideo \ | |||
FFMPEG_CUSTOM_PROTOCOLS:= \ | |||
file http pipe rtp tcp udp | |||
FFMPEG_MINI_ENCODERS:= \ | |||
FFMPEG_MINI_DECODERS:= \ | |||
aac \ | |||
ac3 \ | |||
atrac3 \ | |||
flac \ | |||
h263 \ | |||
h264 \ | |||
jpegls \ | |||
mp3 \ | |||
mpeg1video \ | |||
mpeg2video \ | |||
mpeg4 \ | |||
mpegvideo \ | |||
png \ | |||
wmav1 \ | |||
wmav2 \ | |||
FFMPEG_MINI_MUXERS:= \ | |||
ffm \ | |||
FFMPEG_MINI_DEMUXERS := \ | |||
aac \ | |||
ac3 \ | |||
asf \ | |||
avi \ | |||
ffm \ | |||
flac \ | |||
h264 \ | |||
matroska \ | |||
mov \ | |||
mp3 \ | |||
mpegts \ | |||
mpegvideo \ | |||
sdp \ | |||
rtsp \ | |||
FFMPEG_MINI_PARSERS:= \ | |||
ac3 \ | |||
flac \ | |||
h263 \ | |||
h264 \ | |||
mpeg4video \ | |||
mpegaudio \ | |||
FFMPEG_MINI_PROTOCOLS := \ | |||
file http rtp tcp udp \ | |||
FFMPEG_AUDIO_DECODERS:= \ | |||
aac \ | |||
aac_latm \ | |||
ac3 \ | |||
adpcm_* \ | |||
alac \ | |||
amrnb \ | |||
amrwb \ | |||
ape \ | |||
atrac3 \ | |||
flac \ | |||
mp2 \ | |||
mp3* \ | |||
mpc7 \ | |||
mpc8 \ | |||
pcm_* \ | |||
vorbis \ | |||
wavpack \ | |||
wmav1 \ | |||
wmav2 \ | |||
wmalossless \ | |||
wmapro \ | |||
zlib \ | |||
FFMPEG_AUDIO_DEMUXERS:= \ | |||
aac \ | |||
ac3 \ | |||
aiff \ | |||
amr \ | |||
ape \ | |||
avi \ | |||
flac \ | |||
ffm \ | |||
matroska \ | |||
mp3 \ | |||
mov \ | |||
mpc \ | |||
mpc8 \ | |||
mpegts \ | |||
ogg \ | |||
rm \ | |||
rtsp \ | |||
rtp \ | |||
sdp \ | |||
wav \ | |||
wv \ | |||
FFMPEG_AUDIO_PARSERS:= \ | |||
aac \ | |||
aac_latm \ | |||
flac \ | |||
ac3 \ | |||
mpegaudio \ | |||
FFMPEG_AUDIO_PROTOCOLS:= \ | |||
file http rtp tcp udp | |||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) | |||
PKG_CONFIG_DEPENDS:= \ | |||
$(patsubst %,CONFIG_FFMPEG_CUSTOM_ENCODER_%,$(FFMPEG_CUSTOM_ENCODERS)) \ | |||
$(patsubst %,CONFIG_FFMPEG_CUSTOM_DECODER_%,$(FFMPEG_CUSTOM_DECODERS)) \ | |||
$(patsubst %,CONFIG_FFMPEG_CUSTOM_MUXER_%,$(FFMPEG_CUSTOM_DEMUXERS)) \ | |||
$(patsubst %,CONFIG_FFMPEG_CUSTOM_DEMUXER_%,$(FFMPEG_CUSTOM_DEMUXERS)) \ | |||
$(patsubst %,CONFIG_FFMPEG_CUSTOM_PARSER_%,$(FFMPEG_CUSTOM_PARSERS)) \ | |||
$(patsubst %,CONFIG_FFMPEG_CUSTOM_PROTOCOL_%,$(FFMPEG_CUSTOM_PROTOCOLS)) | |||
include $(INCLUDE_DIR)/package.mk | |||
define Package/ffmpeg/Default | |||
TITLE:=FFmpeg | |||
URL:=http://ffmpeg.mplayerhq.hu/ | |||
endef | |||
define Package/ffmpeg/Default/description | |||
FFmpeg is a a software package that can record, convert and stream digital | |||
audio and video in numerous formats. | |||
endef | |||
define Package/ffmpeg | |||
$(call Package/ffmpeg/Default) | |||
SECTION:=multimedia | |||
CATEGORY:=Multimedia | |||
TITLE+= program | |||
DEPENDS+= +libpthread +libffmpeg-full | |||
VARIANT:=full | |||
endef | |||
define Package/ffmpeg/description | |||
$(call Package/ffmpeg/Default/description) | |||
. | |||
This package contains the FFmpeg command line tool. | |||
endef | |||
define Package/ffprobe | |||
$(call Package/ffmpeg/Default) | |||
SECTION:=multimedia | |||
CATEGORY:=Multimedia | |||
TITLE+= CLI media identifier | |||
DEPENDS+= +libffmpeg-full | |||
VARIANT:=full | |||
endef | |||
define Package/ffprobe/description | |||
$(call Package/ffmpeg/Default/description) | |||
. | |||
This package contains the FFprobe command line tool. | |||
endef | |||
define Package/ffserver | |||
$(call Package/ffserver/Default) | |||
SECTION:=multimedia | |||
CATEGORY:=Multimedia | |||
TITLE+= streaming server | |||
DEPENDS+= +libpthread +libffmpeg-full | |||
VARIANT:=full | |||
endef | |||
define Package/ffserver/description | |||
$(call Package/ffmpeg/Default/description) | |||
. | |||
This package contains the FFmpeg streaming server. | |||
endef | |||
define Package/libffmpeg/Default | |||
$(call Package/ffmpeg/Default) | |||
SECTION:=libs | |||
CATEGORY:=Libraries | |||
TITLE+= libraries | |||
DEPENDS+= +libpthread +zlib +libbz2 | |||
PROVIDES:= libffmpeg | |||
endef | |||
define Package/libffmpeg-custom | |||
$(call Package/libffmpeg/Default) | |||
TITLE+= (mini) | |||
DEPENDS+= @DEVEL +libspeex | |||
VARIANT:=custom | |||
MENU:=1 | |||
endef | |||
define Package/libffmpeg-custom/config | |||
source "$(SOURCE)/Config.in" | |||
endef | |||
define Package/libffmpeg-custom/description | |||
$(call Package/ffmpeg/Default/description) | |||
. | |||
This package contains customized FFmpeg shared libraries. | |||
endef | |||
define Package/libffmpeg-audio-dec | |||
$(call Package/libffmpeg/Default) | |||
TITLE+= (audio) | |||
DEPENDS+= @DEVEL +libspeex | |||
VARIANT:=audio-dec | |||
endef | |||
define Package/libffmpeg-audio-dec/description | |||
$(call Package/ffmpeg/Default/description) | |||
. | |||
This package contains FFmpeg shared libraries for audio decoding | |||
endef | |||
define Package/libffmpeg-full | |||
$(call Package/libffmpeg/Default) | |||
TITLE+= (full) | |||
DEPENDS+= @BUILD_PATENTED +alsa-lib | |||
VARIANT:=full | |||
endef | |||
define Package/libffmpeg-full/description | |||
$(call Package/ffmpeg/Default/description) | |||
. | |||
This package contains full-featured FFmpeg shared libraries. | |||
endef | |||
define Package/libffmpeg-mini | |||
$(call Package/libffmpeg/Default) | |||
TITLE+= (mini) | |||
DEPENDS+= @BUILD_PATENTED | |||
VARIANT:=mini | |||
endef | |||
define Package/libffmpeg-mini/description | |||
$(call Package/ffmpeg/Default/description) | |||
. | |||
This package contains minimal-featured FFmpeg shared libraries. | |||
endef | |||
FFMPEG_CONFIGURE:= \ | |||
CFLAGS="$(TARGET_CFLAGS) $(TARGET_CPPFLAGS) $(FPIC)" \ | |||
LDFLAGS="$(TARGET_LDFLAGS)" \ | |||
./configure \ | |||
--enable-cross-compile \ | |||
--cross-prefix="$(TARGET_CROSS)" \ | |||
--arch="$(ARCH)" \ | |||
--target-os=linux \ | |||
--prefix="/usr" \ | |||
--enable-shared \ | |||
--enable-static \ | |||
--disable-debug \ | |||
--pkg-config="pkg-config" \ | |||
\ | |||
--enable-gpl \ | |||
--enable-version3 \ | |||
\ | |||
--disable-altivec \ | |||
--disable-asm \ | |||
--disable-doc \ | |||
--disable-dxva2 \ | |||
--enable-pthreads \ | |||
--disable-optimizations \ | |||
--enable-small \ | |||
--disable-stripping \ | |||
--enable-zlib \ | |||
--disable-outdevs | |||
ifeq ($(BUILD_VARIANT),custom) | |||
FFMPEG_ENABLE= \ | |||
$(foreach c, $(2), \ | |||
$(if $($(3)_$(c)),--enable-$(1)="$(c)") \ | |||
) | |||
FFMPEG_CONFIGURE+= \ | |||
--disable-ffmpeg \ | |||
--disable-ffplay \ | |||
--disable-ffprobe \ | |||
--disable-ffserver \ | |||
--disable-avfilter \ | |||
--disable-postproc \ | |||
--disable-swresample \ | |||
--disable-swscale \ | |||
--disable-everything \ | |||
$(call FFMPEG_ENABLE,encoder,$(FFMPEG_CUSTOM_ENCODERS),CONFIG_FFMPEG_CUSTOM_ENCODER) \ | |||
$(call FFMPEG_ENABLE,decoder,$(FFMPEG_CUSTOM_DECODERS),CONFIG_FFMPEG_CUSTOM_DECODER) \ | |||
$(call FFMPEG_ENABLE,muxer,$(FFMPEG_CUSTOM_MUXERS),CONFIG_FFMPEG_CUSTOM_MUXER) \ | |||
$(call FFMPEG_ENABLE,demuxer,$(FFMPEG_CUSTOM_DEMUXERS),CONFIG_FFMPEG_CUSTOM_DEMUXER) \ | |||
$(call FFMPEG_ENABLE,parser,$(FFMPEG_CUSTOM_PARSERS),CONFIG_FFMPEG_CUSTOM_PARSER) \ | |||
$(call FFMPEG_ENABLE,protocol,$(FFMPEG_CUSTOM_PROTOCOLS),CONFIG_FFMPEG_CUSTOM_PROTOCOL) \ | |||
ifeq ($(CONFIG_FFMPEG_CUSTOM_SELECT_adpcm),y) | |||
FFMPEG_CONFIGURE+= \ | |||
--enable-decoder=adpcm_ima_wav \ | |||
--enable-decoder=adpcm_ima_qt \ | |||
--enable-decoder=adpcm_ms \ | |||
endif | |||
ifeq ($(CONFIG_FFMPEG_CUSTOM_SELECT_speex),y) | |||
FFMPEG_CONFIGURE+= \ | |||
--enable-libspeex --enable-decoder=libspeex \ | |||
endif | |||
endif | |||
ifeq ($(BUILD_VARIANT),audio-dec) | |||
FFMPEG_ENABLE= \ | |||
$(foreach c, $(2), \ | |||
--enable-$(1)="$(c)" \ | |||
) | |||
FFMPEG_CONFIGURE+= \ | |||
--disable-ffmpeg \ | |||
--disable-ffplay \ | |||
--disable-ffprobe \ | |||
--disable-ffserver \ | |||
--disable-avfilter \ | |||
--disable-postproc \ | |||
--disable-swresample \ | |||
--disable-swscale \ | |||
--disable-everything \ | |||
$(call FFMPEG_ENABLE,decoder,$(FFMPEG_AUDIO_DECODERS)) \ | |||
$(call FFMPEG_ENABLE,demuxer,$(FFMPEG_AUDIO_DEMUXERS)) \ | |||
$(call FFMPEG_ENABLE,parser,$(FFMPEG_AUDIO_PARSERS)) \ | |||
$(call FFMPEG_ENABLE,protocol,$(FFMPEG_AUDIO_PROTOCOLS)) \ | |||
--enable-libspeex --enable-decoder=libspeex \ | |||
--disable-decoder=pcm_bluray,pcm_dvd \ | |||
endif | |||
ifeq ($(BUILD_VARIANT),mini) | |||
FFMPEG_ENABLE= \ | |||
$(foreach c, $(2), \ | |||
--enable-$(1)="$(c)" \ | |||
) | |||
FFMPEG_CONFIGURE+= \ | |||
--disable-ffmpeg \ | |||
--disable-ffplay \ | |||
--disable-ffprobe \ | |||
--disable-ffserver \ | |||
--disable-avfilter \ | |||
--disable-postproc \ | |||
--disable-swresample \ | |||
--disable-swscale \ | |||
--disable-everything \ | |||
$(call FFMPEG_ENABLE,encoder,$(FFMPEG_MINI_ENCODERS)) \ | |||
$(call FFMPEG_ENABLE,decoder,$(FFMPEG_MINI_DECODERS)) \ | |||
$(call FFMPEG_ENABLE,muxer,$(FFMPEG_MINI_MUXERS)) \ | |||
$(call FFMPEG_ENABLE,demuxer,$(FFMPEG_MINI_DEMUXERS)) \ | |||
$(call FFMPEG_ENABLE,parser,$(FFMPEG_MINI_PARSERS)) \ | |||
$(call FFMPEG_ENABLE,protocol,$(FFMPEG_MINI_PROTOCOLS)) \ | |||
endif | |||
ifneq ($(CONFIG_TARGET_x86),) | |||
TARGET_CFLAGS += -fomit-frame-pointer | |||
endif | |||
define Build/Configure | |||
( cd $(PKG_BUILD_DIR); $(FFMPEG_CONFIGURE) ) | |||
endef | |||
define Build/Compile | |||
$(MAKE) -C $(PKG_BUILD_DIR) \ | |||
DESTDIR="$(PKG_INSTALL_DIR)" \ | |||
all install | |||
endef | |||
define Build/InstallDev/custom | |||
$(INSTALL_DIR) $(1)/usr/include | |||
$(CP) $(PKG_INSTALL_DIR)/usr/include/lib{avcodec,avdevice,avformat,avutil} $(1)/usr/include/ | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{avcodec,avdevice,avformat,avutil}.{a,so*} $(1)/usr/lib/ | |||
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/lib{avcodec,avdevice,avformat,avutil}.pc $(1)/usr/lib/pkgconfig/ | |||
endef | |||
define Build/InstallDev/full | |||
$(INSTALL_DIR) $(1)/usr/include | |||
$(CP) $(PKG_INSTALL_DIR)/usr/include/lib{avcodec,avdevice,avfilter,avformat,avutil,postproc,swresample,swscale} $(1)/usr/include/ | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{avcodec,avdevice,avfilter,avformat,avutil,postproc,swresample,swscale}.{a,so*} $(1)/usr/lib/ | |||
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/lib{avcodec,avdevice,avfilter,avformat,avutil,postproc,swresample,swscale}.pc $(1)/usr/lib/pkgconfig/ | |||
endef | |||
Build/InstallDev/mini = $(Build/InstallDev/custom) | |||
Build/InstallDev/audio-dec = $(Build/InstallDev/custom) | |||
# XXX: attempt at installing "best" dev files available | |||
ifeq ($(BUILD_VARIANT),custom) | |||
# XXX: only install "custom" dev files if -full & -mini are not selected | |||
ifeq ($(CONFIG_PACKAGE_libffmpeg-full)$(CONFIG_PACKAGE_libffmpeg-mini),) | |||
Build/InstallDev = $(Build/InstallDev/custom) | |||
endif | |||
endif | |||
ifeq ($(BUILD_VARIANT),audio-dec) | |||
# XXX: only install "audio-dec" dev files if -full & -mini are not selected | |||
ifeq ($(CONFIG_PACKAGE_libffmpeg-full)$(CONFIG_PACKAGE_libffmpeg-mini),) | |||
Build/InstallDev = $(Build/InstallDev/audio-dec) | |||
endif | |||
endif | |||
ifeq ($(BUILD_VARIANT),full) | |||
# XXX: always install "full" dev files if -full is selected | |||
Build/InstallDev = $(Build/InstallDev/full) | |||
endif | |||
ifeq ($(BUILD_VARIANT),mini) | |||
# XXX: only install "mini" dev files if -full is not selected | |||
ifeq ($(CONFIG_PACKAGE_libffmpeg-full),) | |||
Build/InstallDev = $(Build/InstallDev/mini) | |||
endif | |||
endif | |||
define Package/ffmpeg/install | |||
$(INSTALL_DIR) $(1)/usr/bin | |||
$(CP) $(PKG_INSTALL_DIR)/usr/bin/ffmpeg $(1)/usr/bin/ | |||
endef | |||
define Package/ffprobe/install | |||
$(INSTALL_DIR) $(1)/usr/bin | |||
$(CP) $(PKG_INSTALL_DIR)/usr/bin/ffprobe $(1)/usr/bin/ | |||
endef | |||
define Package/ffserver/install | |||
$(INSTALL_DIR) $(1)/usr/bin | |||
$(CP) $(PKG_INSTALL_DIR)/usr/bin/ffserver $(1)/usr/bin/ | |||
endef | |||
define Package/libffmpeg-custom/install | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{avcodec,avdevice,avformat,avutil}.so.* $(1)/usr/lib/ | |||
endef | |||
define Package/libffmpeg-full/install | |||
$(INSTALL_DIR) $(1)/usr/lib | |||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{avcodec,avdevice,avfilter,avformat,avutil,postproc,swresample,swscale}.so.* $(1)/usr/lib/ | |||
endef | |||
Package/libffmpeg-mini/install = $(Package/libffmpeg-custom/install) | |||
Package/libffmpeg-audio-dec/install = $(Package/libffmpeg-custom/install) | |||
$(eval $(call BuildPackage,ffmpeg)) | |||
$(eval $(call BuildPackage,ffprobe)) | |||
$(eval $(call BuildPackage,ffserver)) | |||
$(eval $(call BuildPackage,libffmpeg-custom)) | |||
$(eval $(call BuildPackage,libffmpeg-full)) | |||
$(eval $(call BuildPackage,libffmpeg-mini)) | |||
$(eval $(call BuildPackage,libffmpeg-audio-dec)) |
@ -0,0 +1,57 @@ | |||
# | |||
# Copyright (C) 2013-2014 OpenWrt.org | |||
# | |||
# This is free software, licensed under the GNU General Public License v2. | |||
# See /LICENSE for more information. | |||
# | |||
include $(TOPDIR)/rules.mk | |||
PKG_NAME:=shairport | |||
PKG_VERSION:=2014-05-08 | |||
PKG_RELEASE:=2 | |||
PKG_SOURCE_PROTO:=git | |||
PKG_SOURCE_URL:=git://github.com/abrasive/shairport.git | |||
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) | |||
PKG_SOURCE_VERSION:=078b21043cdcef6ffad7452db27f036770b23b0c | |||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz | |||
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> | |||
include $(INCLUDE_DIR)/package.mk | |||
define Package/shairport | |||
SECTION:=multimedia | |||
CATEGORY:=Multimedia | |||
DEPENDS:=+libpthread +avahi-utils +libopenssl +libavahi-client +alsa-utils | |||
TITLE:=ShairPort AirPort Express emulator | |||
endef | |||
define Package/shairport/description | |||
This program emulates an AirPort Express for the purpose of streaming | |||
music from iTunes and compatible iPods. It implements a server for the | |||
Apple RAOP protocol. | |||
ShairPort does not support AirPlay v2 (video and photo streaming). | |||
It supports multiple simultaneous streams, if your audio output chain | |||
(as detected by libao) does so. | |||
endef | |||
TARGET_CFLAGS += $(FPIC) | |||
LIBS:=-lm -lcrypto -lpthread -lavahi-common -lavahi-client -lasound | |||
MAKE_FLAGS += \ | |||
CFLAGS="$(TARGET_CFLAGS) $(TARGET_CPPFLAGS)" \ | |||
LDFLAGS="$(TARGET_LDFLAGS) $(LIBS)" | |||
define Package/shairport/install | |||
$(INSTALL_DIR) $(1)/usr/bin | |||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/shairport $(1)/usr/bin/ | |||
$(INSTALL_DIR) $(1)/etc/init.d/ | |||
$(INSTALL_BIN) files/shairport.init $(1)/etc/init.d/shairport | |||
$(INSTALL_DIR) $(1)/etc/config | |||
$(INSTALL_CONF) files/shairport.config $(1)/etc/config/shairport | |||
endef | |||
$(eval $(call BuildPackage,shairport)) |
@ -0,0 +1,18 @@ | |||
config shairport main | |||
option bname 'AirPort' | |||
option password '' | |||
option port '5002' | |||
option buffer '256' | |||
option log '' | |||
option cmd_start '' | |||
option cmd_stop '' | |||
option cmd_wait '' | |||
option audio_output 'alsa' | |||
option mdns 'avahi' | |||
# options for alsa output | |||
option output_dev '' | |||
option mixer_dev '' | |||
option mixer_type '' | |||
option mixer_control '' | |||
option mixer_index '' |
@ -0,0 +1,91 @@ | |||
#!/bin/sh /etc/rc.common | |||
NAME=shairport | |||
START=94 | |||
SERVICE_DAEMONIZE=1 | |||
SERVICE_WRITE_PID=1 | |||
AP_PIDDIR=/var/run | |||
AP_BIN=/usr/bin/shairport | |||
append_arg() { | |||
local cfg="$1" | |||
local var="$2" | |||
local opt="$3" | |||
local def="$4" | |||
local val | |||
config_get val "$cfg" "$var" | |||
[ -n "$val" -o -n "$def" ] && append AP_ARGS "$opt ${val:-$def}" | |||
} | |||
append_bool() { | |||
local cfg="$1" | |||
local var="$2" | |||
local opt="$3" | |||
local def="$4" | |||
local val | |||
config_get_bool val "$cfg" "$var" "$def" | |||
[ "$val" = 1 ] && append AP_ARGS "$opt" | |||
} | |||
start_instance() { | |||
AP_ARGS="" | |||
local cfg="$1" | |||
local ao dev | |||
append_arg "$cfg" bname "-a" "AirPort" | |||
append_arg "$cfg" log "-l" | |||
append_arg "$cfg" initbuf "-b" "256" | |||
append_arg "$cfg" port "-p" "5002" | |||
append_arg "$cfg" password "-k" | |||
append_arg "$cfg" mdns "-m" | |||
append_arg "$cfg" cmd_start "-B" | |||
append_arg "$cfg" cmd_stop "-E" | |||
append_bool "$cfg" cmd_wait "-w" | |||
append_arg "$cfg" audio_output "-o" | |||
config_get ao "$cfg" audio_output "" | |||
if [ "$ao" = "alsa" ]; then | |||
config_get dev "$cfg" output_device "" | |||
if [ -n "$dev" ]; then | |||
append AP_ARGS "--" | |||
append_arg "$cfg" output_device "-d" | |||
append_arg "$cfg" mixer_device "-m" | |||
append_arg "$cfg" mixer_type "-t" | |||
append_arg "$cfg" mixer-control "-c" | |||
append_arg "$cfg" mixer-index "-i" | |||
fi | |||
fi | |||
SERVICE_PID_FILE=${AP_PIDDIR}/${NAME}_${cfg}.pid | |||
service_start $AP_BIN $AP_ARGS | |||
# Check if daemon is running, if not then | |||
# re-execute in foreground to display error. | |||
sleep 1 && service_check $AP_BIN || \ | |||
$AP_BIN $AP_ARGS | |||
} | |||
stop_instance() | |||
{ | |||
local cfg="$1" | |||
SERVICE_PID_FILE=${AP_PIDDIR}/${NAME}_${cfg}.pid | |||
SERVICE_SIG_STOP="INT" | |||
service_stop $AP_BIN | |||
} | |||
start() { | |||
config_load shairport | |||
config_foreach start_instance shairport | |||
} | |||
stop() { | |||
config_load shairport | |||
config_foreach stop_instance shairport | |||
} |
@ -0,0 +1,12 @@ | |||
--- a/configure | |||
+++ b/configure | |||
@@ -59,7 +59,7 @@ do_pkg_config() | |||
do_pkg_config OpenSSL openssl | |||
-do_pkg_config libao ao CONFIG_AO | |||
-do_pkg_config PulseAudio libpulse-simple CONFIG_PULSE | |||
+#do_pkg_config libao ao CONFIG_AO | |||
+#do_pkg_config PulseAudio libpulse-simple CONFIG_PULSE | |||
do_pkg_config ALSA alsa CONFIG_ALSA | |||
do_pkg_config Avahi\ client avahi-client CONFIG_AVAHI | |||
@ -0,0 +1,56 @@ | |||
# | |||
# Copyright (C) 2006-2014 OpenWrt.org | |||
# | |||
# This is free software, licensed under the GNU General Public License v2. | |||
# See /LICENSE for more information. | |||
# | |||
include $(TOPDIR)/rules.mk | |||
PKG_NAME:=mpc | |||
PKG_VERSION:=0.26 | |||
PKG_RELEASE:=2 | |||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz | |||
PKG_SOURCE_URL:=http://www.musicpd.org/download/mpc/0 | |||
PKG_MD5SUM:=d4f37e7e6b32c804a870192d1eb86199 | |||
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> | |||
include $(INCLUDE_DIR)/package.mk | |||
define Package/mpc | |||
SECTION:=sound | |||
CATEGORY:=Sound | |||
DEPENDS:=+libmpdclient | |||
TITLE:=Music Player Daemon Console Client | |||
URL:=http://www.musicpd.org/ | |||
endef | |||
define Package/mpc/description | |||
MPD is a music player supporting flac, mp3 and ogg files. | |||
It is typically controlled over a network using one of it's many | |||
clients including mpc(console), gmpc(gnome), phpmp(php) etc. | |||
this is MPC | |||
endef | |||
define Build/Configure | |||
$(call Build/Configure/Default, \ | |||
--disable-iconv \ | |||
) | |||
endef | |||
define Build/Compile | |||
$(call Build/Compile/Default,\ | |||
CFLAGS="$(TARGET_CFLAGS) -std=gnu99" \ | |||
prefix="/usr" \ | |||
all \ | |||
) | |||
endef | |||
define Package/mpc/install | |||
$(INSTALL_DIR) $(1)/usr/bin | |||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/src/mpc $(1)/usr/bin/ | |||
$(INSTALL_BIN) ./files/pls-handler.sh $(1)/usr/bin/ | |||
endef | |||
$(eval $(call BuildPackage,mpc)) |
@ -0,0 +1,5 @@ | |||
#!/usr/bin/env sh | |||
echo parameter: file.pls | |||
mpc clear | |||
grep '^File[0-9]*' $1 | sed -e 's/^File[0-9]*=//' | mpc add | |||
mpc play |
@ -0,0 +1,209 @@ | |||
# | |||
# Copyright (C) 2007-2014 OpenWrt.org | |||
# | |||
# This is free software, licensed under the GNU General Public License v2. | |||
# See /LICENSE for more information. | |||
# | |||
include $(TOPDIR)/rules.mk | |||
PKG_NAME:=mpd | |||
PKG_VERSION:=0.17.6 | |||
PKG_RELEASE:=4 | |||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 | |||
PKG_SOURCE_URL:=http://www.musicpd.org/download/mpd/0.17/ | |||
PKG_MD5SUM:=0a42ed81ff298c12e22c16be31097e4c | |||
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> | |||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) | |||
PKG_BUILD_PARALLEL:=1 | |||
PKG_CONFIG_DEPENDS:= \ | |||
CONFIG_IPV6 \ | |||
PKG_INSTALL:=1 | |||
include $(INCLUDE_DIR)/package.mk | |||
include $(INCLUDE_DIR)/nls.mk | |||
define Package/mpd/Default | |||
SECTION:=sound | |||
CATEGORY:=Sound | |||
TITLE:=Music Player Daemon | |||
URL:=http://www.musicpd.org/ | |||
DEPENDS:= +glib2 +libcurl +libpthread $(ICONV_DEPENDS) \ | |||
+libflac +BUILD_PATENTED:libmad +libvorbisidec | |||
endef | |||
define Package/mpd/Default/description | |||
Music Player Daemon (MPD) is a flexible, powerful, server-side | |||
application for playing music. It is typically controlled over a | |||
network using one of it's many clients including mpc (console), | |||
gmpc (gnome), phpmp (php), etc... | |||
endef | |||
define Package/mpd-full | |||
$(call Package/mpd/Default) | |||
TITLE+= (full) | |||
DEPENDS+= \ | |||
+AUDIO_SUPPORT:alsa-lib \ | |||
+libaudiofile +BUILD_PATENTED:libfaad2 +libffmpeg +libid3tag \ | |||
+libmms +libogg +libsndfile +libvorbis | |||
PROVIDES:=mpd | |||
VARIANT:=full | |||
endef | |||
define Package/mpd-full/description | |||
$(call Package/mpd/Default/description) | |||
. | |||
This package contains a full-blown Music Player Daemon. | |||
endef | |||
define Package/mpd-full/conffiles | |||
/etc/avahi/services/mpd.service | |||
/etc/mpd.conf | |||
endef | |||
define Package/mpd-mini | |||
$(call Package/mpd/Default) | |||
TITLE+= (mini) | |||
PROVIDES:=mpd | |||
VARIANT:=mini | |||
endef | |||
define Package/mpd-mini/description | |||
$(call Package/mpd/Default/description) | |||
. | |||
This package contains a minimal Music Player Daemon, with support for | |||
only Flac, MP3 & OGG media types & only file: & http: protocols. | |||
endef | |||
define Package/mpd-mini/conffiles | |||
/etc/mpd.conf | |||
endef | |||
CONFIGURE_ARGS += \ | |||
$(call autoconf_bool,CONFIG_IPV6,ipv6) \ | |||
--disable-debug \ | |||
--disable-documentation \ | |||
--disable-gprof \ | |||
--disable-test \ | |||
--disable-werror \ | |||
\ | |||
--disable-ao \ | |||
--disable-bzip2 \ | |||
--enable-cue \ | |||
--disable-ffado \ | |||
--disable-fluidsynth \ | |||
--disable-gme \ | |||
--enable-inotify \ | |||
--disable-iso9660 \ | |||
--disable-jack \ | |||
--disable-lame-encoder \ | |||
--disable-libwrap \ | |||
--disable-lsr \ | |||
--disable-mikmod \ | |||
--disable-modplug \ | |||
--disable-mpc \ | |||
--disable-mpg123 \ | |||
--disable-mvp \ | |||
--disable-openal \ | |||
--disable-pulse \ | |||
--disable-sidplay \ | |||
--disable-solaris-output \ | |||
--disable-sqlite \ | |||
--disable-twolame-encoder \ | |||
--enable-wave-encoder \ | |||
--disable-wavpack \ | |||
--disable-wildmidi \ | |||
--disable-zzip \ | |||
--with-zeroconf=auto \ | |||
\ | |||
--enable-curl \ | |||
--enable-flac \ | |||
--enable-httpd-output \ | |||
$(call autoconf_bool,CONFIG_BUILD_PATENTED,mad) \ | |||
$(call autoconf_bool,CONFIG_AUDIO_SUPPORT,oss) \ | |||
--enable-tcp \ | |||
--enable-un \ | |||
CONFIGURE_VARS += \ | |||
FLAC_CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include/FLAC" \ | |||
FLAC_LIBS="$(TARGET_LDFLAGS) -lFLAC" \ | |||
$(if $(CONFIG_BUILD_PATENTED),MAD_CFLAGS="$(TARGET_CFLAGS)") \ | |||
$(if $(CONFIG_BUILD_PATENTED),MAD_LIBS="$(TARGET_LDFLAGS) -lmad") \ | |||
TARGET_CFLAGS += -std=gnu99 | |||
TARGET_LDFLAGS += -Wl,-rpath-link=$(STAGING_DIR)/usr/lib $(if $(ICONV_FULL),-liconv) | |||
# use gcc instead of g++ to avoid unnecessary linking against libstdc++ | |||
TARGET_CXX:=$(TARGET_CC) | |||
ifeq ($(BUILD_VARIANT),full) | |||
CONFIGURE_ARGS += \ | |||
$(call autoconf_bool,CONFIG_BUILD_PATENTED,aac) \ | |||
$(call autoconf_bool,CONFIG_AUDIO_SUPPORT,alsa) \ | |||
--enable-audiofile \ | |||
--enable-fifo \ | |||
--enable-ffmpeg \ | |||
--enable-id3 \ | |||
--enable-lastfm \ | |||
--enable-mms \ | |||
--enable-oggflac \ | |||
--enable-pipe-output \ | |||
--enable-recorder-output \ | |||
--disable-shout \ | |||
--enable-sndfile \ | |||
--enable-vorbis \ | |||
--disable-vorbis-encoder \ | |||
--with-faad="$(STAGING_DIR)/usr" \ | |||
--with-tremor=yes \ | |||
endif | |||
ifeq ($(BUILD_VARIANT),mini) | |||
# oggflac is not compatible with tremor | |||
CONFIGURE_ARGS += \ | |||
--disable-aac \ | |||
--disable-alsa \ | |||
--disable-audiofile \ | |||
--disable-fifo \ | |||
--disable-ffmpeg \ | |||
--disable-id3 \ | |||
--disable-lastfm \ | |||
--disable-mms \ | |||
--disable-oggflac \ | |||
--disable-pipe-output \ | |||
--disable-recorder-output \ | |||
--disable-shout \ | |||
--disable-sndfile \ | |||
--disable-vorbis \ | |||
--disable-vorbis-encoder \ | |||
--with-tremor=yes \ | |||
endif | |||
define Package/mpd/install | |||
$(INSTALL_DIR) $(1)/usr/bin | |||
$(CP) $(PKG_INSTALL_DIR)/usr/bin/mpd $(1)/usr/bin/ | |||
$(INSTALL_DIR) $(1)/etc | |||
$(CP) $(PKG_BUILD_DIR)/doc/mpdconf.example $(1)/etc/mpd.conf | |||
$(INSTALL_DIR) $(1)/etc/init.d | |||
$(INSTALL_BIN) ./files/mpd.init $(1)/etc/init.d/mpd | |||
endef | |||
define Package/mpd-full/install | |||
$(call Package/mpd/install,$1) | |||
$(INSTALL_DIR) $(1)/etc/avahi/services | |||
$(INSTALL_DATA) ./files/mpd.service $(1)/etc/avahi/services/ | |||
endef | |||
define Package/mpd-mini/install | |||
$(call Package/mpd/install,$1) | |||
endef | |||
$(eval $(call BuildPackage,mpd-full)) | |||
$(eval $(call BuildPackage,mpd-mini)) |
@ -0,0 +1,28 @@ | |||
#!/bin/sh /etc/rc.common | |||
# Copyright (C) 2007-2011 OpenWrt.org | |||
START=93 | |||
start() { | |||
#create mpd directories | |||
pld=`grep ^playlist_directory /etc/mpd.conf | cut -d "\"" -f 2 | sed "s/~/\/root/g"` | |||
if [ ! -d $pld ]; then | |||
mkdir -m 0755 -p $pld | |||
fi | |||
# Set the initial volume to something manageable | |||
[ -x /usr/bin/amixer ] && /usr/bin/amixer set PCM 40 | |||
if [ -x /bin/nice ]; then | |||
# This has real-time constraints, so let's at least tell the OS | |||
# that this should have higher priority to avoid skipping | |||
# when doing other things in the background. | |||
nice -n -10 | |||
fi | |||
service_start /usr/bin/mpd | |||
} | |||
stop() { | |||
service_stop /usr/bin/mpd | |||
} |
@ -0,0 +1,9 @@ | |||
<?xml version="1.0" standalone='no'?><!--*-nxml-*--> | |||
<!DOCTYPE service-group SYSTEM "avahi-service.dtd"> | |||
<service-group> | |||
<name replace-wildcards="yes">Music Player Daemon on %h</name> | |||
<service> | |||
<type>_mpd._tcp</type> | |||
<port>6600</port> | |||
</service> | |||
</service-group> |
@ -0,0 +1,23 @@ | |||
--- a/configure | |||
+++ b/configure | |||
@@ -9821,6 +9821,7 @@ fi | |||
# Check whether --with-faad was given. | |||
if test "${with_faad+set}" = set; then : | |||
withval=$with_faad; | |||
+ faad_prefix=$with_faad; | |||
else | |||
faad_prefix="" | |||
fi | |||
--- a/src/input/file_input_plugin.c | |||
+++ b/src/input/file_input_plugin.c | |||
@@ -82,10 +82,6 @@ input_file_open(const char *filename, | |||
return NULL; | |||
} | |||
-#ifdef POSIX_FADV_SEQUENTIAL | |||
- posix_fadvise(fd, (off_t)0, st.st_size, POSIX_FADV_SEQUENTIAL); | |||
-#endif | |||
- | |||
fis = g_new(struct file_input_stream, 1); | |||
input_stream_init(&fis->base, &input_plugin_file, filename, | |||
mutex, cond); |
@ -0,0 +1,16 @@ | |||
--- a/src/decoder/ffmpeg_decoder_plugin.c | |||
+++ b/src/decoder/ffmpeg_decoder_plugin.c | |||
@@ -370,6 +370,13 @@ | |||
#endif | |||
return SAMPLE_FORMAT_S32; | |||
+#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(52, 94, 1) | |||
+ case AV_SAMPLE_FMT_FLT: | |||
+#else | |||
+ case SAMPLE_FMT_FLOAT: | |||
+#endif | |||
+ return SAMPLE_FORMAT_FLOAT; | |||
+ | |||
default: | |||
g_warning("Unsupported libavcodec SampleFormat value: %d", | |||
codec_context->sample_fmt); |
@ -0,0 +1,24 @@ | |||
--- a/src/decoder/ffmpeg_decoder_plugin.c | |||
+++ b/src/decoder/ffmpeg_decoder_plugin.c | |||
@@ -387,6 +387,13 @@ ffmpeg_probe(struct decoder *decoder, st | |||
unsigned char *buffer = g_malloc(BUFFER_SIZE); | |||
size_t nbytes = decoder_read(decoder, is, buffer, BUFFER_SIZE); | |||
+ | |||
+ if ((nbytes > 0) && (nbytes < 1024)) | |||
+ { | |||
+ // Gobble some more data if header is small | |||
+ nbytes += decoder_read(decoder, is, buffer + nbytes, BUFFER_SIZE - nbytes); | |||
+ } | |||
+ | |||
if (nbytes <= PADDING || | |||
!input_stream_lock_seek(is, 0, SEEK_SET, NULL)) { | |||
g_free(buffer); | |||
@@ -683,6 +690,7 @@ static const char *const ffmpeg_mime_typ | |||
"audio/qcelp", | |||
"audio/vorbis", | |||
"audio/vorbis+ogg", | |||
+ "audio/wav", | |||
"audio/x-8svx", | |||
"audio/x-16sv", | |||
"audio/x-aac", |
@ -0,0 +1,93 @@ | |||
# | |||
# Copyright (C) 2006-2014 OpenWrt.org | |||
# | |||
# This is free software, licensed under the GNU General Public License v2. | |||
# See /LICENSE for more information. | |||
# | |||
include $(TOPDIR)/rules.mk | |||
PKG_NAME:=alsa-utils | |||
PKG_VERSION:=1.0.28 | |||
PKG_RELEASE:=2 | |||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 | |||
PKG_SOURCE_URL:=ftp://ftp.alsa-project.org/pub/utils/ \ | |||
http://alsa.cybermirror.org/utils/ | |||
PKG_MD5SUM:=361552d5b1cacd0a1e7ba09e69990211 | |||
PKG_INSTALL:=1 | |||
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net> | |||
include $(INCLUDE_DIR)/package.mk | |||
define Package/alsa-utils | |||
SECTION:=utils | |||
CATEGORY:=Utilities | |||
DEPENDS:=+alsa-lib +libncurses +libpthread | |||
TITLE:=ALSA (Advanced Linux Sound Architecture) utilities | |||
URL:=http://www.alsa-project.org/ | |||
endef | |||
define Package/alsa-utils-seq | |||
SECTION:=utils | |||
CATEGORY:=Utilities | |||
DEPENDS:=+alsa-lib +libpthread | |||
TITLE:=ALSA sequencer utilities | |||
URL:=http://www.alsa-project.org/ | |||
endef | |||
define Package/alsa-utils-tests | |||
$(call Package/alsa-utils/Default) | |||
SECTION:=utils | |||
CATEGORY:=Utilities | |||
TITLE:=ALSA utilities test data (adds ~1.3M to image) | |||
DEPENDS:=+alsa-lib +libpthread | |||
endef | |||
define Build/Configure | |||
$(call Build/Configure/Default, \ | |||
--disable-rpath \ | |||
--disable-alsatest \ | |||
--disable-xmlto \ | |||
, \ | |||
ac_cv_prog_ncurses5_config=no \ | |||
ac_cv_prog_ncursesw5_config=no \ | |||
) | |||
endef | |||
define Package/alsa-utils/install | |||
$(INSTALL_DIR) $(1)/usr/{s,}bin | |||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/amixer $(1)/usr/bin/ | |||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/alsamixer $(1)/usr/bin/ | |||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/aplay $(1)/usr/bin/ | |||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/arecord $(1)/usr/bin/ | |||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/alsactl $(1)/usr/sbin/ | |||
$(INSTALL_DIR) $(1)/usr/share/alsa/init | |||
$(INSTALL_DATA) \ | |||
$(PKG_INSTALL_DIR)/usr/share/alsa/init/* \ | |||
$(1)/usr/share/alsa/init/ | |||
endef | |||
define Package/alsa-utils-seq/install | |||
$(INSTALL_DIR) $(1)/usr/bin | |||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/aconnect $(1)/usr/bin/ | |||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/amidi $(1)/usr/bin/ | |||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/aplaymidi $(1)/usr/bin/ | |||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/arecordmidi $(1)/usr/bin/ | |||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/aseqdump $(1)/usr/bin/ | |||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/aseqnet $(1)/usr/bin/ | |||
endef | |||
define Package/alsa-utils-tests/install | |||
$(INSTALL_DIR) $(1)/usr/{s,}bin | |||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/speaker-test $(1)/usr/bin/ | |||
$(INSTALL_DIR) $(1)/usr/share/sounds/alsa | |||
$(INSTALL_DATA) \ | |||
$(PKG_INSTALL_DIR)/usr/share/sounds/alsa/* \ | |||
$(1)/usr/share/sounds/alsa/ | |||
endef | |||
$(eval $(call BuildPackage,alsa-utils)) | |||
$(eval $(call BuildPackage,alsa-utils-seq)) | |||
$(eval $(call BuildPackage,alsa-utils-tests)) |
@ -0,0 +1,23 @@ | |||
--- a/alsamixer/volume_mapping.c | |||
+++ b/alsamixer/volume_mapping.c | |||
@@ -114,9 +114,9 @@ static double get_normalized_volume(snd_ | |||
if (use_linear_dB_scale(min, max)) | |||
return (value - min) / (double)(max - min); | |||
- normalized = exp10((value - max) / 6000.0); | |||
+ normalized = pow(10, (value - max) / 6000.0); | |||
if (min != SND_CTL_TLV_DB_GAIN_MUTE) { | |||
- min_norm = exp10((min - max) / 6000.0); | |||
+ min_norm = pow(10, (min - max) / 6000.0); | |||
normalized = (normalized - min_norm) / (1 - min_norm); | |||
} | |||
@@ -149,7 +149,7 @@ static int set_normalized_volume(snd_mix | |||
} | |||
if (min != SND_CTL_TLV_DB_GAIN_MUTE) { | |||
- min_norm = exp10((min - max) / 6000.0); | |||
+ min_norm = pow(10, (min - max) / 6000.0); | |||
volume = volume * (1 - min_norm) + min_norm; | |||
} | |||
value = lrint_dir(6000.0 * log10(volume), dir) + max; |