Преглед на файлове

Add libevent package. I started building all the components needed for NFSv4 support of which libevent is one of them. The rest of the needed components, however, are horrific to get building.

"Steven J. Hill" преди 18 години
родител
ревизия
491c474a4f
променени са 3 файла, в които са добавени 80 реда и са изтрити 0 реда
  1. 7 0
      package/libevent/Config.in
  2. 11 0
      package/libevent/libevent-time_h.patch
  3. 62 0
      package/libevent/libevent.mk

+ 7 - 0
package/libevent/Config.in

@@ -0,0 +1,7 @@
+config BR2_PACKAGE_LIBEVENT
+	bool "libevent"
+	default n
+	help
+	  Userspace library for handling asynchronous notifications
+
+	  http://monkey.org/~provos/

+ 11 - 0
package/libevent/libevent-time_h.patch

@@ -0,0 +1,11 @@
+diff -ur libevent-1.2/event.c libevent-1.2-patched/event.c
+--- libevent-1.2/event.c	2006-08-12 12:41:36.000000000 -0500
++++ libevent-1.2-patched/event.c	2007-01-13 23:33:05.340351152 -0600
+@@ -41,6 +41,7 @@
+ #else 
+ #include <sys/_time.h>
+ #endif
++#include <time.h>
+ #include <sys/queue.h>
+ #include <stdio.h>
+ #include <stdlib.h>

+ 62 - 0
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