pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/net/hs-recv



Module Name:    pkgsrc
Committed By:   pho
Date:           Fri Jan 27 02:40:54 UTC 2023

Added Files:
        pkgsrc/net/hs-recv: DESCR Makefile PLIST buildlink3.mk distinfo

Log Message:
net/hs-recv: import hs-recv-0.0.0

This module provides efficient receiving functions from the network. recv
uses createAndTrim which behaves as follows:

* Allocates a buffer whose size is decided from the first argument.
* Receives data with the buffer.
* Allocates another buffer whose size fits the received data.
* Copies the data from the first buffer to the second buffer.

On 64bit machines, the global lock is taken for the allocation of a byte
string whose length is larger than or equal to 3272 bytes. So, for
instance, if 4,096 is specified to recv and the size of received data is
3,300, the global lock is taken twice with the copy overhead.

The efficient receiving functions provided here use a buffer pool. A large
buffer is allocated at the beginning and it is divided into a used one and
a leftover when receiving. The latter is kept in the buffer pooll and will
be used next time. When the buffer gets small and usefless, a new large
buffer is allocated.


To generate a diff of this commit:
cvs rdiff -u -r0 -r1.1 pkgsrc/net/hs-recv/DESCR pkgsrc/net/hs-recv/Makefile \
    pkgsrc/net/hs-recv/PLIST pkgsrc/net/hs-recv/buildlink3.mk \
    pkgsrc/net/hs-recv/distinfo

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Added files:

Index: pkgsrc/net/hs-recv/DESCR
diff -u /dev/null pkgsrc/net/hs-recv/DESCR:1.1
--- /dev/null   Fri Jan 27 02:40:54 2023
+++ pkgsrc/net/hs-recv/DESCR    Fri Jan 27 02:40:54 2023
@@ -0,0 +1,18 @@
+This module provides efficient receiving functions from the network. recv
+uses createAndTrim which behaves as follows:
+
+* Allocates a buffer whose size is decided from the first argument.
+* Receives data with the buffer.
+* Allocates another buffer whose size fits the received data.
+* Copies the data from the first buffer to the second buffer.
+
+On 64bit machines, the global lock is taken for the allocation of a byte
+string whose length is larger than or equal to 3272 bytes. So, for
+instance, if 4,096 is specified to recv and the size of received data is
+3,300, the global lock is taken twice with the copy overhead.
+
+The efficient receiving functions provided here use a buffer pool. A large
+buffer is allocated at the beginning and it is divided into a used one and
+a leftover when receiving. The latter is kept in the buffer pooll and will
+be used next time. When the buffer gets small and usefless, a new large
+buffer is allocated.
Index: pkgsrc/net/hs-recv/Makefile
diff -u /dev/null pkgsrc/net/hs-recv/Makefile:1.1
--- /dev/null   Fri Jan 27 02:40:54 2023
+++ pkgsrc/net/hs-recv/Makefile Fri Jan 27 02:40:54 2023
@@ -0,0 +1,12 @@
+# $NetBSD: Makefile,v 1.1 2023/01/27 02:40:54 pho Exp $
+
+DISTNAME=      recv-0.0.0
+CATEGORIES=    net
+
+MAINTAINER=    pkgsrc-users%NetBSD.org@localhost
+COMMENT=       Efficient network recv
+LICENSE=       modified-bsd
+
+.include "../../net/hs-network/buildlink3.mk"
+.include "../../mk/haskell.mk"
+.include "../../mk/bsd.pkg.mk"
Index: pkgsrc/net/hs-recv/PLIST
diff -u /dev/null pkgsrc/net/hs-recv/PLIST:1.1
--- /dev/null   Fri Jan 27 02:40:54 2023
+++ pkgsrc/net/hs-recv/PLIST    Fri Jan 27 02:40:54 2023
@@ -0,0 +1,31 @@
+@comment $NetBSD: PLIST,v 1.1 2023/01/27 02:40:54 pho Exp $
+lib/recv-${PKGVERSION}/${HS_VERSION}/package-description
+lib/recv-${PKGVERSION}/${HS_VERSION}/package-id
+${PLIST.shlibs}lib/${HS_PLATFORM}/libHS${HS_PKGID}-${HS_VER}.so
+${PLIST.shlibs}lib/${HS_PLATFORM}/${HS_PKGID}/Network/Socket/BufferPool.dyn_hi
+lib/${HS_PLATFORM}/${HS_PKGID}/Network/Socket/BufferPool.hi
+${PLIST.prof}lib/${HS_PLATFORM}/${HS_PKGID}/Network/Socket/BufferPool.p_hi
+${PLIST.shlibs}lib/${HS_PLATFORM}/${HS_PKGID}/Network/Socket/BufferPool/Buffer.dyn_hi
+lib/${HS_PLATFORM}/${HS_PKGID}/Network/Socket/BufferPool/Buffer.hi
+${PLIST.prof}lib/${HS_PLATFORM}/${HS_PKGID}/Network/Socket/BufferPool/Buffer.p_hi
+${PLIST.shlibs}lib/${HS_PLATFORM}/${HS_PKGID}/Network/Socket/BufferPool/Recv.dyn_hi
+lib/${HS_PLATFORM}/${HS_PKGID}/Network/Socket/BufferPool/Recv.hi
+${PLIST.prof}lib/${HS_PLATFORM}/${HS_PKGID}/Network/Socket/BufferPool/Recv.p_hi
+${PLIST.shlibs}lib/${HS_PLATFORM}/${HS_PKGID}/Network/Socket/BufferPool/Types.dyn_hi
+lib/${HS_PLATFORM}/${HS_PKGID}/Network/Socket/BufferPool/Types.hi
+${PLIST.prof}lib/${HS_PLATFORM}/${HS_PKGID}/Network/Socket/BufferPool/Types.p_hi
+${PLIST.shlibs}lib/${HS_PLATFORM}/${HS_PKGID}/Network/Socket/BufferPool/Windows.dyn_hi
+lib/${HS_PLATFORM}/${HS_PKGID}/Network/Socket/BufferPool/Windows.hi
+${PLIST.prof}lib/${HS_PLATFORM}/${HS_PKGID}/Network/Socket/BufferPool/Windows.p_hi
+lib/${HS_PLATFORM}/${HS_PKGID}/libHS${HS_PKGID}.a
+${PLIST.prof}lib/${HS_PLATFORM}/${HS_PKGID}/libHS${HS_PKGID}_p.a
+${PLIST.doc}share/doc/${HS_PLATFORM}/recv-${PKGVERSION}/LICENSE
+${PLIST.doc}share/doc/${HS_PLATFORM}/recv-${PKGVERSION}/html/Network-Socket-BufferPool.html
+${PLIST.doc}share/doc/${HS_PLATFORM}/recv-${PKGVERSION}/html/doc-index.html
+${PLIST.doc}share/doc/${HS_PLATFORM}/recv-${PKGVERSION}/html/haddock-bundle.min.js
+${PLIST.doc}share/doc/${HS_PLATFORM}/recv-${PKGVERSION}/html/index.html
+${PLIST.doc}share/doc/${HS_PLATFORM}/recv-${PKGVERSION}/html/linuwial.css
+${PLIST.doc}share/doc/${HS_PLATFORM}/recv-${PKGVERSION}/html/meta.json
+${PLIST.doc}share/doc/${HS_PLATFORM}/recv-${PKGVERSION}/html/quick-jump.css
+${PLIST.doc}share/doc/${HS_PLATFORM}/recv-${PKGVERSION}/html/recv.haddock
+${PLIST.doc}share/doc/${HS_PLATFORM}/recv-${PKGVERSION}/html/synopsis.png
Index: pkgsrc/net/hs-recv/buildlink3.mk
diff -u /dev/null pkgsrc/net/hs-recv/buildlink3.mk:1.1
--- /dev/null   Fri Jan 27 02:40:54 2023
+++ pkgsrc/net/hs-recv/buildlink3.mk    Fri Jan 27 02:40:54 2023
@@ -0,0 +1,15 @@
+# $NetBSD: buildlink3.mk,v 1.1 2023/01/27 02:40:54 pho Exp $
+
+BUILDLINK_TREE+=       hs-recv
+
+.if !defined(HS_RECV_BUILDLINK3_MK)
+HS_RECV_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.hs-recv+=        hs-recv>=0.0.0
+BUILDLINK_ABI_DEPENDS.hs-recv+=        hs-recv>=0.0.0
+BUILDLINK_PKGSRCDIR.hs-recv?=  ../../net/hs-recv
+
+.include "../../net/hs-network/buildlink3.mk"
+.endif # HS_RECV_BUILDLINK3_MK
+
+BUILDLINK_TREE+=       -hs-recv
Index: pkgsrc/net/hs-recv/distinfo
diff -u /dev/null pkgsrc/net/hs-recv/distinfo:1.1
--- /dev/null   Fri Jan 27 02:40:54 2023
+++ pkgsrc/net/hs-recv/distinfo Fri Jan 27 02:40:54 2023
@@ -0,0 +1,5 @@
+$NetBSD: distinfo,v 1.1 2023/01/27 02:40:54 pho Exp $
+
+BLAKE2s (recv-0.0.0.tar.gz) = fdfe1f3f22f0153b7374ac75ae0e56427df2f951bd4497e37507f6e4d4cb8370
+SHA512 (recv-0.0.0.tar.gz) = 1f6ae75bf684710a07dd7580c3d066f2284a9cab8c7a0bd5b9ede114516273db36083a14ea44ce9e0832c3bf4fbca5d0173b40737c530c2502ac83949b081e7d
+Size (recv-0.0.0.tar.gz) = 5499 bytes



Home | Main Index | Thread Index | Old Index