summaryrefslogtreecommitdiffstats
path: root/package/libevent/libevent.mk
diff options
context:
space:
mode:
Diffstat (limited to 'package/libevent/libevent.mk')
-rw-r--r--package/libevent/libevent.mk62
1 files changed, 62 insertions, 0 deletions
diff --git a/package/libevent/libevent.mk b/package/libevent/libevent.mk
new file mode 100644
index 000000000..cda3a3321
--- /dev/null
+++ b/package/libevent/libevent.mk
@@ -0,0 +1,62 @@
+#############################################################
+#
+# libevent
+#
+#############################################################
+LIBEVENT_VER:=1.2
+LIBEVENT_SOURCE:=libevent-$(LIBEVENT_VER).tar.gz
+LIBEVENT_SITE:=http://monkey.org/~provos/
+LIBEVENT_DIR:=$(BUILD_DIR)/libevent-$(LIBEVENT_VER)
+LIBEVENT_CAT:=$(ZCAT)
+LIBEVENT_BINARY:=libevent.la
+LIBEVENT_TARGET_BINARY:=usr/lib/libevent.so
+
+$(DL_DIR)/$(LIBEVENT_SOURCE):
+ $(WGET) -P $(DL_DIR) $(LIBEVENT_SITE)/$(LIBEVENT_SOURCE)
+
+libevent-unpacked: $(LIBEVENT_DIR)/.unpacked
+$(LIBEVENT_DIR)/.unpacked: $(DL_DIR)/$(LIBEVENT_SOURCE)
+ $(LIBEVENT_CAT) $(DL_DIR)/$(LIBEVENT_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
+ toolchain/patch-kernel.sh $(LIBEVENT_DIR) package/libevent/ *.patch
+ touch $(LIBEVENT_DIR)/.unpacked
+
+$(LIBEVENT_DIR)/.configured: $(LIBEVENT_DIR)/.unpacked
+ (cd $(LIBEVENT_DIR); rm -rf config.cache; \
+ $(TARGET_CONFIGURE_OPTS) CC_FOR_BUILD=$(HOSTCC) \
+ CFLAGS="$(TARGET_CFLAGS)" \
+ ./configure \
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
+ --build=$(GNU_HOST_NAME) \
+ --prefix=/usr \
+ --disable-static \
+ --with-gnu-ld \
+ );
+ touch $(LIBEVENT_DIR)/.configured
+
+$(LIBEVENT_DIR)/$(LIBEVENT_BINARY): $(LIBEVENT_DIR)/.configured
+ $(TARGET_CONFIGURE_OPTS) $(MAKE) CC=$(TARGET_CC) -C $(LIBEVENT_DIR)
+
+$(STAGING_DIR)/$(LIBEVENT_TARGET_BINARY): $(LIBEVENT_DIR)/$(LIBEVENT_BINARY)
+ make -C $(LIBEVENT_DIR) DESTDIR=$(STAGING_DIR) install
+
+$(TARGET_DIR)/$(LIBEVENT_TARGET_BINARY): $(STAGING_DIR)/$(LIBEVENT_TARGET_BINARY)
+ make -C $(LIBEVENT_DIR) DESTDIR=$(TARGET_DIR) install
+ rm -f $(TARGET_DIR)/usr/lib/libevent*.la $(TARGET_DIR)/usr/include/ev*
+
+libevent: uclibc $(TARGET_DIR)/$(LIBEVENT_TARGET_BINARY)
+
+libevent-clean:
+ rm -f $(TARGET_DIR)/$(LIBEVENT_TARGET_BINARY)
+ -$(MAKE) -C $(LIBEVENT_DIR) clean
+
+libevent-dirclean:
+ rm -rf $(LIBEVENT_DIR)
+#############################################################
+#
+# Toplevel Makefile options
+#
+#############################################################
+ifeq ($(strip $(BR2_PACKAGE_LIBEVENT)),y)
+TARGETS+=libevent
+endif