Bug 94114

Summary: [NEW PORT] net/hawknl: Portable networking library
Product: Ports & Packages Reporter: Jose Alonso Cardenas Marquez <acardenas>
Component: Individual Port(s)Assignee: Renato Botelho <garga>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
hawknl-1.68.shar none

Description Jose Alonso Cardenas Marquez 2006-03-05 22:50:03 UTC
HawkNL is a free, open source, game oriented network API released under the GNU Library General Public 
License (LGPL). HawkNL (NL) is a fairly low level API, a wrapper over Berkeley/Unix Sockets and Winsock. 

But NL also provides other features including support for many OSs, groups of sockets, socket statistics, 
high accuracy timer, CRC functions, macros to read and write data to packets with endian conversion, and 
support for multiple network transports. 

NL has been tested on Windows 9x/ME/NT/2000/XP/CE, Linux, Solaris, IRIX, AIX, BSDs, Mac OSX. 

WWW:	http://www.hawksoft.com/hawknl/
Comment 1 Renato Botelho freebsd_committer freebsd_triage 2006-03-22 15:38:36 UTC
* You are removing a file on post-install: target, it's not a good
practice. What do you think about patch Makefile to doesn't install
this file instead remove it? Or, simply leave the file installed?
Any problem with the .a file?

* pkg-descr has more than 80 columns

* files/patch-src_nlinternal.h just change /malloc.h/stdlib.h/, what
do you think about remove the patch and use REINPLACE_CMD instead

Could you take a look at these points?

Thanks for contributing
-- 
Renato Botelho <garga @ FreeBSD.org>
               <freebsd @ galle.com.br>
GnuPG Key: http://www.FreeBSD.org/~garga/pubkey.asc
Comment 2 Renato Botelho freebsd_committer freebsd_triage 2006-03-22 15:42:46 UTC
State Changed
From-To: open->feedback

Ask for submitter fix.
Comment 3 Jose Alonso Cardenas Marquez 2006-03-22 16:37:39 UTC
On Wed, 22 Mar 2006 12:38:36 -0300
Renato Botelho <garga@FreeBSD.org> wrote:

> * You are removing a file on post-install: target, it's not a good
> practice. What do you think about patch Makefile to doesn't install
> this file instead remove it? Or, simply leave the file installed?
> Any problem with the .a file?

Done

> * pkg-descr has more than 80 columns

Done

> * files/patch-src_nlinternal.h just change /malloc.h/stdlib.h/, what
> do you think about remove the patch and use REINPLACE_CMD instead

Done

See new PR:

--- hawknl-1.68.shar begins here ---
# 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:
#
#	hawknl
#	hawknl/pkg-descr
#	hawknl/Makefile
#	hawknl/pkg-plist
#	hawknl/distinfo
#	hawknl/files
#	hawknl/files/patch-src_makefile.linux
#
echo c - hawknl
mkdir -p hawknl > /dev/null 2>&1
echo x - hawknl/pkg-descr
sed 's/^X//' >hawknl/pkg-descr << 'END-of-hawknl/pkg-descr'
XHawkNL is a free, open source, game oriented network API released under the GNU
XLibrary General Public License (LGPL). HawkNL (NL) is a fairly low level API, 
Xa wrapper over Berkeley/Unix Sockets and Winsock. 
X
XBut NL also provides other features including support for many OSs, groups of 
Xsockets, socket statistics, high accuracy timer, CRC functions, macros to read
Xand write data to packets with endian conversion, and support for multiple 
Xnetwork transports. 
X
XNL has been tested on Windows 9x/ME/NT/2000/XP/CE, Linux, Solaris, IRIX, AIX, 
XBSDs, Mac OSX. 
X
XWWW:	http://www.hawksoft.com/hawknl/
END-of-hawknl/pkg-descr
echo x - hawknl/Makefile
sed 's/^X//' >hawknl/Makefile << 'END-of-hawknl/Makefile'
X# New ports collection makefile for:	hawknl
X# Date created:		2006-03-04
X# Whom:			Jose Alonso Cardenas Marquez <acardenas@bsd.org.pe>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	hawknl
XPORTVERSION=	1.68
XCATEGORIES=	net devel
XMASTER_SITES=	http://www.hawksoft.com/download/files/
XDISTNAME=	HawkNL168src
XDIST_SUBDIR=	${PORTNAME}
X
XMAINTAINER=	acardenas@bsd.org.pe
XCOMMENT=	Portable networking library
X
XUSE_DOS2UNIX=	yes
XUSE_GMAKE=	yes
XMAKEFILE=	makefile.linux
XINSTALLS_SHLIB=	yes
X
XLDFLAGS=	-L${LOCALBASE}/lib -L${X11BASE}/lib ${PTHREAD_LIBS}
XCPPFLAGS=	-I${LOCALBASE}/include -I${X11BASE}/include
XMAKE_ENV=	CC="${CC}" CFLAGS="${CFLAGS} ${OPTFLAGS}" LDFLAGS="${LDFLAGS}" CPPFLAGS="${CPPFLAGS}"
XWRKSRC=	${WRKDIR}/${PORTNAME}1.68
X
XOPTIONS=	OPTIMIZATION	"Enable optimization"	off
X
X.include <bsd.port.pre.mk>
X
X.if defined(WITH_OPTIMIZATION)
XCFLAGS+=	-funroll-all-loops -ffast-math -fomit-frame-pointer -D_GNU_SOURCE -D_REENTRANT
X.endif
X
Xpost-patch:
X	${REINPLACE_CMD} -e 's|make -f|gmake -f|g' ${WRKSRC}/${MAKEFILE}
X	${REINPLACE_CMD} -e 's|malloc.h|stdlib.h|g' ${WRKSRC}/src/nlinternal.h
X
Xpost-install:
X.if !defined(NOPORTDOCS)
X	@${MKDIR} ${DOCSDIR}
X.for FILE in readme.txt nlchanges.txt
X	@${INSTALL_DATA} ${WRKSRC}/src/${FILE} ${DOCSDIR}
X.endfor
X.endif
X
X.include <bsd.port.post.mk>
END-of-hawknl/Makefile
echo x - hawknl/pkg-plist
sed 's/^X//' >hawknl/pkg-plist << 'END-of-hawknl/pkg-plist'
Xinclude/nl.h
Xlib/libNL.a
Xlib/libNL.so.1.6.8
Xlib/libNL.so.1
Xlib/libNL.so
Xlib/NL.so
X%%PORTDOCS%%%%DOCSDIR%%/readme.txt
X%%PORTDOCS%%%%DOCSDIR%%/nlchanges.txt
X%%PORTDOCS%%@dirrm %%DOCSDIR%%
END-of-hawknl/pkg-plist
echo x - hawknl/distinfo
sed 's/^X//' >hawknl/distinfo << 'END-of-hawknl/distinfo'
XMD5 (hawknl/HawkNL168src.tar.gz) = 2e4971d422b8c5cadfe2a85527ff2fcf
XSHA256 (hawknl/HawkNL168src.tar.gz) = 31a2883dbfe02937c9c862bb1aac0b89e465bbab822513c06bffa3f13e4c3c2e
XSIZE (hawknl/HawkNL168src.tar.gz) = 181263
END-of-hawknl/distinfo
echo c - hawknl/files
mkdir -p hawknl/files > /dev/null 2>&1
echo x - hawknl/files/patch-src_makefile.linux
sed 's/^X//' >hawknl/files/patch-src_makefile.linux << 'END-of-hawknl/files/patch-src_makefile.linux'
X--- src/makefile.linux	Sun Mar  5 03:46:18 2006
X+++ src/makefile.linux	Sun Mar  5 03:51:02 2006
X@@ -1,19 +1,18 @@
X-CC = gcc
X+CC? = ${CC}
X AR = ar cru
X RANLIB = ranlib
X MAJOR_VERSION = 1
X MINOR_VERSION = 6
X PATCH_LEVEL = 8
X VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(PATCH_LEVEL)
X-LIBDIR = /usr/local/lib
X-INCDIR = /usr/local/include
X+LIBDIR = ${PREFIX}/lib
X+INCDIR = ${PREFIX}/include
X INCLUDE = -I../include
X OUTPUT = libNL.so.$(VERSION)
X LIBNAME = NL
X STATIC = libNL.a
X-OPTFLAGS = -funroll-all-loops -ffast-math -fomit-frame-pointer -O2 -D_GNU_SOURCE -D_REENTRANT
X-CFLAGS = -Wall -fPIC $(INCLUDE) $(OPTFLAGS)
X-LIBFLAGS = -shared -Wl,-soname,NL.so.$(MAJOR_VERSION).$(MINOR_VERSION) -rdynamic -lpthread
X+CFLAGS? = ${CFLAGS} -Wall -fPIC $(INCLUDE)
X+LIBFLAGS = -shared -Wl,-soname,NL.so.$(MAJOR_VERSION).$(MINOR_VERSION) -rdynamic ${LDFLAGS}
X OBJECTS = crc.o errorstr.o nl.o sock.o group.o loopback.o err.o thread.o mutex.o condition.o nltime.o
X 
X all: $(OBJECTS)
X@@ -37,20 +36,11 @@
X 	cp $(OUTPUT) $(LIBDIR)
X 	cp $(STATIC) $(LIBDIR)
X 	chmod 755 $(LIBDIR)/$(OUTPUT)
X-	ln -s $(LIBDIR)/$(OUTPUT) $(LIBDIR)/lib$(LIBNAME).so.$(MAJOR_VERSION).$(MINOR_VERSION)
X 	ln -s $(LIBDIR)/$(OUTPUT) $(LIBDIR)/lib$(LIBNAME).so.$(MAJOR_VERSION)
X 	ln -s $(LIBDIR)/$(OUTPUT) $(LIBDIR)/lib$(LIBNAME).so
X 	ln -s $(LIBDIR)/$(OUTPUT) $(LIBDIR)/$(LIBNAME).so
X 	cp ../include/nl.h $(INCDIR)/nl.h
X 	chmod 644 $(INCDIR)/nl.h
X-	@echo ""
X-	@echo "*************************************************"
X-	@echo "* Installed HawkNL.                             *"
X-	@echo "* Remember to run /sbin/ldconfig before using   *"
X-	@echo "* the library, you may also want to check that  *"
X-	@echo "* $(LIBDIR) is included in /etc/ld.so.conf      *"
X-	@echo "* You must be root to run ldconfig.             *"
X-	@echo "*************************************************"
X 
X uninstall:
X 	rm -f $(LIBDIR)/$(OUTPUT) $(LIBDIR)/lib$(LIBNAME).so.$(MAJOR_VERSION).$(MINOR_VERSION)
END-of-hawknl/files/patch-src_makefile.linux
exit
--- hawknl-1.68.shar ends here ---

Greetings
ACM
-- 
Grupo de Usuarios *BSD Peru - BSDPeru
http://www.bsd.org.pe
Comment 4 Renato Botelho freebsd_committer freebsd_triage 2006-03-22 17:23:41 UTC
Responsible Changed
From-To: freebsd-ports-bugs->garga

I'll take it.
Comment 5 Renato Botelho freebsd_committer freebsd_triage 2006-03-25 11:55:24 UTC
State Changed
From-To: feedback->closed

New port added. Thanks!