[Buildroot] [PATCH] transmission: convert to autotools infrastructure
Belisko Marek
marek.belisko at gmail.com
Mon Apr 19 11:58:32 UTC 2010
On Mon, Apr 19, 2010 at 12:03 PM, <keguang.zhang at gmail.com> wrote:
> From: Kelvin Cheung <keguang.zhang at gmail.com>
>
> Signed-off-by: Kelvin Cheung <keguang.zhang at gmail.com>
> ---
> package/Config.in | 1 +
> package/transmission/Config.in | 23 +++++++++
> package/transmission/S92transmission | 88 ++++++++++++++++++++++++++++++++++
> package/transmission/transmission.mk | 22 ++++++++
> 4 files changed, 134 insertions(+), 0 deletions(-)
> create mode 100755 package/transmission/Config.in
> create mode 100755 package/transmission/S92transmission
> create mode 100644 package/transmission/transmission.mk
>
> diff --git a/package/Config.in b/package/Config.in
> index 6104903..5fa3b26 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -413,6 +413,7 @@ source "package/thttpd/Config.in"
> source "package/tinyhttpd/Config.in"
> endif
> source "package/tn5250/Config.in"
> +source "package/transmission/Config.in"
> source "package/ttcp/Config.in"
> source "package/udpcast/Config.in"
> source "package/vpnc/Config.in"
> diff --git a/package/transmission/Config.in b/package/transmission/Config.in
> new file mode 100755
> index 0000000..f42c79d
> --- /dev/null
> +++ b/package/transmission/Config.in
> @@ -0,0 +1,23 @@
> +config BR2_PACKAGE_TRANSMISSION
> + bool "transmission"
> + select BR2_PACKAGE_ZLIB
> + select BR2_PACKAGE_OPENSSL
> + select BR2_PACKAGE_LIBCURL
> + select BR2_PACKAGE_LIBEVENT
> + default n
> + help
> + transmission - Transmission BitTorrent Client
> +
> +config BR2_PACKAGE_TRANSMISSION_CLI
> + bool "transmissioncli"
> + depends on BR2_PACKAGE_TRANSMISSION
> + default no
> + help
> + Install transmission command line interface.
> +
> +config BR2_PACKAGE_TRANSMISSION_REMOTE
> + bool "transmission-remote"
> + depends on BR2_PACKAGE_TRANSMISSION
> + default no
> + help
> + Install transmission remote management tool.
> diff --git a/package/transmission/S92transmission b/package/transmission/S92transmission
> new file mode 100755
> index 0000000..9c15aae
> --- /dev/null
> +++ b/package/transmission/S92transmission
> @@ -0,0 +1,88 @@
> +#!/bin/sh
> +if [ ! -z "$2" ]; then
> + TRANSMISSION_ARGS="$2"
> +else
> + TRANSMISSION_ARGS=""
> +fi
> +
> +if [ ! -z "$3" ]; then
> + NET_INTERFACE="$3"
> +else
> + NET_INTERFACE=""
> +fi
> +
> +DESC="bittorrent client"
> +NAME=transmission-daemon
> +DAEMON=$(which $NAME)
> +SCRIPTNAME=/etc/init.d/$0
> +
> +[ -x "$DAEMON" ] || exit 0
> +
> +do_start()
> +{
> + if [ ! -z "$NET_INTERFACE" ]; then
> + # poll network interface
> + IFCONFIG_OUTPUT=`ifconfig $NET_INTERFACE`
> + IP_ADDR=`expr match "$IFCONFIG_OUTPUT" '.*inet addr:\([0-9]*\.[0-9]*\.[0-9]*\.[0-9]*\).*'`
> + while [ -z "$IP_ADDR" ]
> + do
> + sleep 5
> + IFCONFIG_OUTPUT=`ifconfig $NET_INTERFACE`
> + IP_ADDR=`expr match "$IFCONFIG_OUTPUT" '.*inet addr:\([0-9]*\.[0-9]*\.[0-9]*\.[0-9]*\).*'`
> + done
> + fi
> + if [ -z "$TRANSMISSION_ARGS" ]; then
> + start-stop-daemon -S -b -x ${DAEMON}
> + else
> + start-stop-daemon -S -b -x ${DAEMON} -- ${TRANSMISSION_ARGS}
> + fi
> + return $?
> +}
> +
> +do_stop()
> +{
> + start-stop-daemon -K -b -x ${DAEMON}
> + return $?
> +}
> +
> +case "$1" in
> + start)
> + echo "Starting $DESC" "$NAME..."
> + do_start
> + case "$?" in
> + 0) echo " Start $DESC $NAME: SUCCESS" ;;
> + *)
> + echo " Start $DESC $NAME: FAILED"
> + exit 3
> + ;;
> + esac
> + ;;
> + stop)
> + echo "Stopping $DESC $NAME..."
> + do_stop
> + case "$?" in
> + 0) echo " Stop $DESC $NAME: SUCCESS" ;;
> + *)
> + echo " Stop $DESC $NAME: FAILED"
> + exit 3
> + ;;
> + esac
> + ;;
> + restart|force-reload)
> + echo "Restarting $DESC $NAME..."
> + do_stop
> + sleep 2
> + do_start
> + case "$?" in
> + 0) echo " Restart $DESC $NAME: SUCCESS" ;;
> + *)
> + echo " Restart $DESC $NAME: FAILED: couldn't start $NAME"
> + exit 3
> + ;;
> + esac
> + ;;
> + *)
> + echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
> + exit 3
> + ;;
> +esac
> diff --git a/package/transmission/transmission.mk b/package/transmission/transmission.mk
> new file mode 100644
> index 0000000..2dc0d04
> --- /dev/null
> +++ b/package/transmission/transmission.mk
> @@ -0,0 +1,22 @@
> +#############################################################
> +#
> +# transmission
> +#
> +#############################################################
> +TRANSMISSION_VERSION:=1.92
> +TRANSMISSION_SOURCE:=transmission-$(TRANSMISSION_VERSION).tar.bz2
> +TRANSMISSION_SITE:=http://mirrors.m0k.org/transmission/files/
> +TRANSMISSION_LIBTOOL_PATCH=NO
> +TRANSMISSION_DEPENDENCIES:= host-pkg-config host-intltool zlib openssl libcurl libevent
> +
> +TRANSMISSION_CONF_OPT = --prefix=/usr \
> + --localstatedir=/var \
> + --disable-gtk \
> + --disable-libnotify \
> + --enable-cli \
> + --enable-daemon \
> + --with-zlib=$(STAGING_DIR) \
> + $(DISABLE_NLS) \
> + $(DISABLE_LARGEFILE)
> +
> +$(eval $(call AUTOTARGETS,package,transmission))
Extend for copying init script to /etc/init.d:
+$(TRANSMISSION_HOOK_POST_INSTALL):
+ $(call MESSAGE,"Post installing")
+
+ # install start/stop script
+ @if [ ! -f $(TARGET_DIR)/etc/init.d/S92transmission ]; then \
+ $(INSTALL) -m 0755 -D package/transmission/S92transmission
$(TARGET_DIR)/etc/init.d/S92transmission; \
+ fi
+ $(Q)touch $@
> --
> 1.6.3.3
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
>
Marek
--
as simple and primitive as possible
-------------------------------------------------
Marek Belisko - OPEN-NANDRA
Freelance Developer
Ruska Nova Ves 219 | Presov, 08005 Slovak Republic
Tel: +421 915 052 184
skype: marekwhite
icq: 290551086
web: http://open-nandra.com
More information about the buildroot
mailing list