Date: Fri, 14 Sep 2012 12:12:01 GMT From: Gergely Nagy <algernon@madhouse-project.org> To: freebsd-gnats-submit@FreeBSD.org Subject: ports/171640: New port: devel/libivykis Asynchronous I/O readiness notification library Message-ID: <201209141212.q8ECC1Mc043651@red.freebsd.org> Resent-Message-ID: <201209141220.q8ECK7XS050955@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 171640 >Category: ports >Synopsis: New port: devel/libivykis Asynchronous I/O readiness notification library >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Fri Sep 14 12:20:07 UTC 2012 >Closed-Date: >Last-Modified: >Originator: Gergely Nagy >Release: FreeBSD 9.0-RELEASE amd64 >Organization: >Environment: System: FreeBSD mazarbul 9.0-RELEASE FreeBSD 9.0-RELEASE #0: Tue Jan 3 07:46:30 UTC 2012 root@farrell.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC amd64 >Description: The ivykis library is a thin, portable wrapper around OS-provided mechanisms such as epoll(4), kqueue(2), poll(2) and select(2). It was mainly designed for building high-performance network applications, but can be used in any event-driver application that uses pollable file descriptors as its event sources. Programs written to the ivykis API are generally single-threaded (or use only a small number of threads), and never block on I/O. All input and output is done in a nonblocking fashion, with I/O readiness notification delivered via callback functions. WWW: http://libivykis.sourceforge.net/ >How-To-Repeat: >Fix: Patch attached with submission follows: # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # libivykis # libivykis/Makefile # libivykis/pkg-descr # libivykis/distinfo # libivykis/pkg-plist # libivykis/files # libivykis/files/patch-include-iv_tls.h # libivykis/files/patch-lib-iv_tls.c # echo c - libivykis mkdir -p libivykis > /dev/null 2>&1 echo x - libivykis/Makefile sed 's/^X//' >libivykis/Makefile << 'aea38fcefa967e68aeabbffc32622fe3' X# Ports collection makefile for: libivykis X# Date created: 14 September 2012 X# Whom: Gergely Nagy <algernon@madhouse-project.org> X# X# $FreeBSD$ X# X XPORTNAME= libivykis XPORTVERSION= 0.30.3 XCATEGORIES= devel XMASTER_SITES= ${MASTER_SITE_SOURCEFORGE} XDISTNAME= ivykis-${PORTVERSION} X XMAINTAINER= algernon@madhouse-project.org XCOMMENT= Asynchronous I/O readiness notification library X XUSE_LDCONFIG= yes XGNU_CONFIGURE= yes XUSE_GNOME= pkgconfig gnomehack X XMAN3= IV_EVENT_INIT.3 \ X IV_EVENT_RAW_INIT.3 \ X IV_FD_PUMP_INIT.3 \ X IV_POPEN_REQUEST_INIT.3 \ X IV_SIGNAL_INIT.3 \ X IV_WAIT_INTEREST_INIT.3 \ X IV_WORK_ITEM_INIT.3 \ X IV_WORK_POOL_INIT.3 \ X iv_deinit.3 \ X iv_event.3 \ X iv_event_post.3 \ X iv_event_raw.3 \ X iv_event_raw_post.3 \ X iv_event_raw_register.3 \ X iv_event_raw_unregister.3 \ X iv_event_register.3 \ X iv_event_unregister.3 \ X iv_examples.3 \ X iv_fatal.3 \ X iv_fd.3 \ X iv_fd_pump.3 \ X iv_fd_pump_destroy.3 \ X iv_fd_pump_init.3 \ X iv_fd_pump_is_done.3 \ X iv_fd_pump_pump.3 \ X iv_fd_register.3 \ X iv_fd_register_try.3 \ X iv_fd_set_handler_err.3 \ X iv_fd_set_handler_in.3 \ X iv_fd_set_handler_out.3 \ X iv_fd_unregister.3 \ X iv_init.3 \ X iv_inited.3 \ X iv_invalidate_now.3 \ X iv_main.3 \ X iv_popen.3 \ X iv_popen_request_close.3 \ X iv_popen_request_submit.3 \ X iv_quit.3 \ X iv_set_fatal_msg_handler.3 \ X iv_signal.3 \ X iv_signal_register.3 \ X iv_signal_unregister.3 \ X iv_task.3 \ X iv_task_register.3 \ X iv_task_unregister.3 \ X iv_thread.3 \ X iv_thread_create.3 \ X iv_thread_set_debug_state.3 \ X iv_time.3 \ X iv_timer.3 \ X iv_timer_register.3 \ X iv_timer_unregister.3 \ X iv_tls.3 \ X iv_tls_user_ptr.3 \ X iv_tls_user_register.3 \ X iv_validate_now.3 \ X iv_wait.3 \ X iv_wait_interest_register.3 \ X iv_wait_interest_register_spawn.3 \ X iv_wait_interest_unregister.3 \ X iv_work.3 \ X iv_work_pool_create.3 \ X iv_work_pool_put.3 \ X iv_work_pool_submit_work.3 \ X ivykis.3 X X.include <bsd.port.mk> aea38fcefa967e68aeabbffc32622fe3 echo x - libivykis/pkg-descr sed 's/^X//' >libivykis/pkg-descr << '6023c19486f3e9a10b87f8149f39dfa8' XThe ivykis library is a thin, portable wrapper around OS-provided Xmechanisms such as epoll(4), kqueue(2), poll(2) and select(2). It was Xmainly designed for building high-performance network applications, Xbut can be used in any event-driver application that uses pollable Xfile descriptors as its event sources. X XPrograms written to the ivykis API are generally single-threaded (or Xuse only a small number of threads), and never block on I/O. All Xinput and output is done in a nonblocking fashion, with I/O readiness Xnotification delivered via callback functions. X XWWW: http://libivykis.sourceforge.net/ 6023c19486f3e9a10b87f8149f39dfa8 echo x - libivykis/distinfo sed 's/^X//' >libivykis/distinfo << '7825ca66059a971f63a90fd9df0b4b68' XSHA256 (ivykis-0.30.3.tar.gz) = 64ab3b92a1ec5ad87e35590c7f50c96462b3f4b0d9e10d79252ca1f410131eb2 XSIZE (ivykis-0.30.3.tar.gz) = 406373 7825ca66059a971f63a90fd9df0b4b68 echo x - libivykis/pkg-plist sed 's/^X//' >libivykis/pkg-plist << 'e3658f1ebcd8edf5fdbee3f2d5653838' Xinclude/iv.h Xinclude/iv_avl.h Xinclude/iv_event.h Xinclude/iv_event_raw.h Xinclude/iv_fd_pump.h Xinclude/iv_list.h Xinclude/iv_popen.h Xinclude/iv_signal.h Xinclude/iv_thread.h Xinclude/iv_tls.h Xinclude/iv_wait.h Xinclude/iv_work.h Xlib/libivykis.a Xlib/libivykis.la Xlib/libivykis.so Xlib/libivykis.so.1 Xlibdata/pkgconfig/ivykis.pc e3658f1ebcd8edf5fdbee3f2d5653838 echo c - libivykis/files mkdir -p libivykis/files > /dev/null 2>&1 echo x - libivykis/files/patch-include-iv_tls.h sed 's/^X//' >libivykis/files/patch-include-iv_tls.h << '1d98af0c419d98fce69e09af28cfb2f6' X--- lib/include/iv_tls.h.old X+++ lib/include/iv_tls.h X@@ -33,7 +33,7 @@ struct iv_tls_user { X void (*deinit_thread)(void *st); X X struct iv_list_head list; X- off_t state_offset; X+ int state_offset; X }; X X void iv_tls_user_register(struct iv_tls_user *); 1d98af0c419d98fce69e09af28cfb2f6 echo x - libivykis/files/patch-lib-iv_tls.c sed 's/^X//' >libivykis/files/patch-lib-iv_tls.c << '95f710d2115ad026df9ee5729506012f' X--- lib/iv_tls.c.old X+++ lib/iv_tls.c X@@ -25,7 +25,7 @@ X #include "iv_private.h" X X static int inited; X-static off_t last_offset = (sizeof(struct iv_state) + 15) & ~15; X+static int last_offset = (sizeof(struct iv_state) + 15) & ~15; X static struct iv_list_head iv_tls_users = IV_LIST_HEAD_INIT(iv_tls_users); X X void iv_tls_user_register(struct iv_tls_user *itu) 95f710d2115ad026df9ee5729506012f exit >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201209141212.q8ECC1Mc043651>