From: nico <nico@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Date: Tue, 23 Aug 2005 08:10:02 +0000 (+0000)
Subject: add libdaemon package
X-Git-Url: https://git.rohieb.name/openwrt.git/commitdiff_plain/66471f064072e147fbd3a35fe20073ea328f48c0

add libdaemon package


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@1731 3c298f89-4303-0410-b956-a3cf2f4a3e73
---

diff --git a/openwrt/package/Config.in b/openwrt/package/Config.in
index a32c2bee6..6259d2d63 100644
--- a/openwrt/package/Config.in
+++ b/openwrt/package/Config.in
@@ -113,6 +113,7 @@ source "package/cgilib/Config.in"
 source "package/glib/Config.in"
 source "package/libamsel/Config.in"
 source "package/libart/Config.in"
+source "package/libdaemon/Config.in"
 source "package/libdb/Config.in"
 source "package/libelf/Config.in"
 source "package/libevent/Config.in"
diff --git a/openwrt/package/Makefile b/openwrt/package/Makefile
index 816b3760e..1d271ffbf 100644
--- a/openwrt/package/Makefile
+++ b/openwrt/package/Makefile
@@ -56,6 +56,7 @@ package-$(BR2_PACKAGE_LCD4LINUX) += lcd4linux
 package-$(BR2_PACKAGE_LESS) += less
 package-$(BR2_PACKAGE_LIBAMSEL) += libamsel
 package-$(BR2_PACKAGE_LIBART) += libart
+package-$(BR2_PACKAGE_LIBDAEMON) += libdaemon
 package-$(BR2_PACKAGE_LIBDB) += libdb
 package-$(BR2_PACKAGE_LIBELF) += libelf
 package-$(BR2_PACKAGE_LIBEVENT) += libevent
diff --git a/openwrt/package/libdaemon/Config.in b/openwrt/package/libdaemon/Config.in
new file mode 100644
index 000000000..eb4b619bc
--- /dev/null
+++ b/openwrt/package/libdaemon/Config.in
@@ -0,0 +1,20 @@
+config BR2_PACKAGE_LIBDAEMON
+	tristate "libdaemon - A lightweight C library that eases the writing of UNIX daemons"
+#	default m if CONFIG_DEVEL
+	default n
+	help
+	  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.
+	  
+	  
+	  http://0pointer.de/lennart/projects/libdaemon/
+	  
diff --git a/openwrt/package/libdaemon/Makefile b/openwrt/package/libdaemon/Makefile
new file mode 100644
index 000000000..e5e58f0a7
--- /dev/null
+++ b/openwrt/package/libdaemon/Makefile
@@ -0,0 +1,97 @@
+# $Id$
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=libdaemon
+PKG_VERSION:=0.8
+PKG_RELEASE:=1
+PKG_MD5SUM:=49cc7db480c6d7b8ca88b0db8ac275e7
+
+PKG_SOURCE_URL:=http://0pointer.de/lennart/projects/libdaemon/
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_CAT:=zcat
+
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
+PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
+
+include $(TOPDIR)/package/rules.mk
+
+$(eval $(call PKG_template,LIBDAEMON,libdaemon,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
+
+$(PKG_BUILD_DIR)/.configured:
+	(cd $(PKG_BUILD_DIR); rm -rf config.{cache,status} ; \
+		$(TARGET_CONFIGURE_OPTS) \
+		CFLAGS="$(TARGET_CFLAGS)" \
+		CPPFLAGS="-I$(STAGING_DIR)/usr/include" \
+		LDFLAGS="-L$(STAGING_DIR)/lib -L$(STAGING_DIR)/usr/lib" \
+		ac_cv_func_setpgrp_void=yes \
+		./configure \
+		  --target=$(GNU_TARGET_NAME) \
+		  --host=$(GNU_TARGET_NAME) \
+		  --build=$(GNU_HOST_NAME) \
+		  --program-prefix="" \
+		  --program-suffix="" \
+		  --prefix=/usr \
+		  --exec-prefix=/usr \
+		  --bindir=/usr/bin \
+		  --datadir=/usr/share \
+		  --includedir=/usr/include \
+		  --infodir=/usr/share/info \
+		  --libdir=/usr/lib \
+		  --libexecdir=/usr/lib \
+		  --localstatedir=/var \
+		  --mandir=/usr/share/man \
+		  --sbindir=/usr/sbin \
+		  --sysconfdir=/etc \
+		  $(DISABLE_LARGEFILE) \
+		  $(DISABLE_NLS) \
+		  --enable-shared \
+		  --enable-static \
+		  --disable-rpath \
+		  --with-gnu-ld \
+		  --disable-lynx \
+	);
+	touch $@
+
+$(PKG_BUILD_DIR)/.built:
+	rm -rf $(PKG_INSTALL_DIR)
+	mkdir -p $(PKG_INSTALL_DIR)
+	$(MAKE) -C $(PKG_BUILD_DIR) \
+		DESTDIR="$(PKG_INSTALL_DIR)" \
+		all install
+	touch $@
+
+$(IPKG_LIBDAEMON):
+	install -d -m0755 $(IDIR_LIBDAEMON)/usr/lib
+	cp -fpR $(PKG_INSTALL_DIR)/usr/lib/libdaemon.so.* $(IDIR_LIBDAEMON)/usr/lib/
+	$(RSTRIP) $(IDIR_LIBDAEMON)
+	$(IPKG_BUILD) $(IDIR_LIBDAEMON) $(PACKAGE_DIR)
+
+$(STAGING_DIR)/usr/lib/libdaemon.so: $(PKG_BUILD_DIR)/.built
+	mkdir -p $(STAGING_DIR)/usr/include
+	cp -fpR $(PKG_INSTALL_DIR)/usr/include/libdaemon $(STAGING_DIR)/usr/include/
+	mkdir -p $(STAGING_DIR)/usr/lib
+	cp -fpR $(PKG_INSTALL_DIR)/usr/lib/libdaemon.a $(STAGING_DIR)/usr/lib/
+	cp -fpR $(PKG_INSTALL_DIR)/usr/lib/libdaemon.so* $(STAGING_DIR)/usr/lib/
+	mkdir -p $(STAGING_DIR)/usr/lib/pkgconfig
+	cp -fpR $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libdaemon.pc $(STAGING_DIR)/usr/lib/pkgconfig/
+	$(SED) 's,-I$${includedir},,g' $(STAGING_DIR)/usr/lib/pkgconfig/libdaemon.pc
+	$(SED) 's,-L$${libdir},,g' $(STAGING_DIR)/usr/lib/pkgconfig/libdaemon.pc
+	touch $@
+
+install-dev: $(STAGING_DIR)/usr/lib/libdaemon.so
+
+uninstall-dev:
+	rm -rf \
+		$(STAGING_DIR)/usr/include/libdaemon \
+		$(STAGING_DIR)/usr/lib/libdaemon.a \
+		$(STAGING_DIR)/usr/lib/libdaemon.so* \
+		$(STAGING_DIR)/usr/lib/pkgconfig/libdaemon.pc \
+
+compile: install-dev
+clean: uninstall-dev
+
+mostlyclean:
+	-$(MAKE) -C $(PKG_BUILD_DIR) clean
+	rm -f $(PKG_BUILD_DIR)/.built
+
diff --git a/openwrt/package/libdaemon/ipkg/libdaemon.control b/openwrt/package/libdaemon/ipkg/libdaemon.control
new file mode 100644
index 000000000..caf84c21f
--- /dev/null
+++ b/openwrt/package/libdaemon/ipkg/libdaemon.control
@@ -0,0 +1,6 @@
+Package: libdaemon
+Priority: optional
+Section: libs
+Maintainer: OpenWrt Developers Team <bugs@openwrt.org>
+Source: http://openwrt.org/cgi-bin/viewcvs.cgi/openwrt/package/libdaemon/
+Description: A lightweight C library that eases the writing of UNIX daemons.