From: Nicolas Thill Date: Tue, 18 Jul 2006 16:43:58 +0000 (+0000) Subject: port libevent to buildroot-ng X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=commitdiff_plain;h=8c4f27ad94fd6632214be3a7ce8688fc2f6e6a43 port libevent to buildroot-ng SVN-Revision: 4150 --- diff --git a/libs/libevent/Makefile b/libs/libevent/Makefile new file mode 100644 index 0000000000..262fa063c7 --- /dev/null +++ b/libs/libevent/Makefile @@ -0,0 +1,101 @@ +# +# Copyright (C) 2006 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# +# $Id$ + +include $(TOPDIR)/rules.mk + +PKG_NAME:=libevent +PKG_VERSION:=1.1 +PKG_RELEASE:=1 + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://www.monkey.org/~provos/ +PKG_MD5SUM:=a5bd281aeb41bdaa48fbbf0495423d20 +PKG_CAT:=zcat + +PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install + +include $(INCLUDE_DIR)/package.mk + +define Package/libevent + SECTION:=libs + CATEGORY:=Libraries + TITLE:=Event notification library + DESCRIPTION:=Event notification library for event-driven network servers.\\\ + The libevent API provides a mechanism to execute a callback function \\\ + when a specific event occurs on a file descriptor or after a timeout \\\ + has been reached. Furthermore, libevent also support callbacks due \\\ + to signals or regular timeouts.\\\ + \\\ + libevent is meant to replace the event loop found in event driven \\\ + network servers. An application just needs to call event_dispatch() \\\ + and then add or remove events dynamically without having to change \\\ + the event loop. + URL:=http://www.monkey.org/~provos/libevent/ +endef + +define Build/Configure + (cd $(PKG_BUILD_DIR); rm -f config.cache; \ + $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TARGET_CFLAGS)" \ + CPPFLAGS="-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include" \ + LDFLAGS="-L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib" \ + ./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 \ + ); +endef + +define Build/Compile + rm -rf $(PKG_INSTALL_DIR) + mkdir -p $(PKG_INSTALL_DIR) + $(MAKE) -C $(PKG_BUILD_DIR) \ + DESTDIR="$(PKG_INSTALL_DIR)" \ + all install +endef + +define Package/libevent/install + install -d -m0755 $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent-$(PKG_VERSION).so.* $(1)/usr/lib/ +endef + +define Build/InstallDev + mkdir -p $(STAGING_DIR)/usr/include + $(CP) $(PKG_INSTALL_DIR)/usr/include/event.h $(STAGING_DIR)/usr/include/ + mkdir -p $(STAGING_DIR)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent.{a,so} $(STAGING_DIR)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libevent-$(PKG_VERSION).so* $(STAGING_DIR)/usr/lib/ +endef + +define Build/UninstallDev + rm -rf \ + $(STAGING_DIR)/usr/include/event.h \ + $(STAGING_DIR)/usr/lib/libevent.{a,so} \ + $(STAGING_DIR)/usr/lib/libevent-$(PKG_VERSION).so* +endef + +$(eval $(call BuildPackage,libevent))