obsy 77c2fcd235 [packages] transmission: set ulimit for open files
Currently, transmission daemon allows you to set the max number of open 
files, but it can be more than allowed by the system, thus resulting in 
errors if transmission uses more than set in ulimit. The following is 
a patch to compare ulimit vs open_file_limit from /etc/config/transmission. 
If the open_file_limit is greater than `ulimit -n`, then invoke 
ulimit -n open_file_limit + 8 (since transmission's open file limit any 
seems to pertain only to open torrent files)

Signed-off-by: Joe Roback <joe at roback.cc>



git-svn-id: svn://svn.openwrt.org/openwrt/packages@25991 3c298f89-4303-0410-b956-a3cf2f4a3e73
2011-03-10 05:58:02 +00:00

122 lines
3.1 KiB
Makefile

#
# Copyright (C) 2009-2010 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:=transmission
PKG_VERSION:=2.22
PKG_RELEASE:=3
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=http://mirrors.m0k.org/transmission/files
PKG_MD5SUM:=6499986bf769276310b00bda1090090d
PKG_FIXUP:=libtool
PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=1
include $(INCLUDE_DIR)/package.mk
define Package/transmission/template
SUBMENU:=BitTorrent
SECTION:=net
CATEGORY:=Network
TITLE:=A free, lightweight BitTorrent client
URL:=http://www.transmissionbt.com
MAINTAINER:=Cezary Jackiewicz <cezary@eko.one.pl>
endef
define Package/transmission-daemon
$(call Package/transmission/template)
DEPENDS:=+libcurl +libopenssl +libpthread +libevent2
MENU:=1
endef
define Package/transmission-cli
$(call Package/transmission/template)
DEPENDS:=transmission-daemon
endef
define Package/transmission-remote
$(call Package/transmission/template)
endef
define Package/transmission-web
$(call Package/transmission/template)
DEPENDS:=transmission-daemon
endef
define Package/transmission-daemon/description
Transmission is a simple BitTorrent client.
It features a very simple, intuitive interface
on top on an efficient, cross-platform back-end.
This package contains the daemon itself.
endef
define Package/transmission-cli/description
CLI utilities for transmission.
endef
define Package/transmission-remote/description
CLI remote interface for transmission.
endef
define Package/transmission-web/description
Webinterface resources for transmission.
endef
define Package/transmission-daemon/conffiles
/etc/config/transmission
endef
CONFIGURE_VARS += \
LIBEVENT_LIBS="$(STAGING_DIR)/usr/lib/libevent-2.0.so.5"
CONFIGURE_ARGS += \
--enable-daemon \
--enable-cli \
--disable-gtk \
--enable-largefile \
--enable-lightweight
MAKE_FLAGS += \
CFLAGS="$(TARGET_CFLAGS) -D_GNU_SOURCE"
define Package/transmission-daemon/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/transmission-daemon $(1)/usr/bin/
$(INSTALL_DIR) $(1)/etc/init.d/
$(INSTALL_BIN) files/transmission.init $(1)/etc/init.d/transmission
$(INSTALL_DIR) $(1)/etc/config
$(INSTALL_CONF) files/transmission.config $(1)/etc/config/transmission
endef
define Package/transmission-cli/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/transmission-cli \
$(PKG_INSTALL_DIR)/usr/bin/transmission-create \
$(PKG_INSTALL_DIR)/usr/bin/transmission-edit \
$(PKG_INSTALL_DIR)/usr/bin/transmission-show \
$(1)/usr/bin/
endef
define Package/transmission-remote/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/transmission-remote $(1)/usr/bin/
endef
define Package/transmission-web/install
$(INSTALL_DIR) $(1)/usr/share/transmission
$(CP) $(PKG_INSTALL_DIR)/usr/share/transmission/web $(1)/usr/share/transmission/
endef
$(eval $(call BuildPackage,transmission-daemon))
$(eval $(call BuildPackage,transmission-cli))
$(eval $(call BuildPackage,transmission-remote))
$(eval $(call BuildPackage,transmission-web))