ports/82696: New port: devel/goog-sparsehash: Google's hashtable implementations

Vasil Dimov vd at datamax.bg
Mon Jun 27 13:30:18 UTC 2005


>Number:         82696
>Category:       ports
>Synopsis:       New port: devel/goog-sparsehash: Google's hashtable implementations
>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:   Mon Jun 27 13:30:17 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Vasil Dimov
>Release:        FreeBSD 5.4-STABLE i386
>Organization:
DataMax
>Environment:

>Description:

Add Google's hashtable implementations optimized for space or speed to
the ports tree.

"An extremely memory-efficient hash_map implementation. 2 bits/entry overhead!"

>How-To-Repeat:

>Fix:

--- goog-sparsehash.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:
#
#	goog-sparsehash
#	goog-sparsehash/distinfo
#	goog-sparsehash/Makefile
#	goog-sparsehash/pkg-descr
#	goog-sparsehash/pkg-plist
#	goog-sparsehash/pkg-message
#
echo c - goog-sparsehash
mkdir -p goog-sparsehash > /dev/null 2>&1
echo x - goog-sparsehash/distinfo
sed 's/^X//' >goog-sparsehash/distinfo << 'END-of-goog-sparsehash/distinfo'
XMD5 (sparsehash-0.2.tar.gz) = a2b2a31886efe6e56bad8b2419609fff
XSIZE (sparsehash-0.2.tar.gz) = 227427
END-of-goog-sparsehash/distinfo
echo x - goog-sparsehash/Makefile
sed 's/^X//' >goog-sparsehash/Makefile << 'END-of-goog-sparsehash/Makefile'
X# New ports collection makefile for:	goog-sparsehash
X# Date created:				23 June 2005
X# Whom:					Vasil Dimov <vd at datamax.bg>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	goog-sparsehash
XPORTVERSION=	0.2
XDISTNAME=	sparsehash-${PORTVERSION}
XCATEGORIES=	devel
XMASTER_SITES=	${MASTER_SITE_SOURCEFORGE}
XMASTER_SITE_SUBDIR=	${PORTNAME}
X
XMAINTAINER=	vd at datamax.bg
XCOMMENT=	Google's hashtable implementations optimized for space or speed
X
XHAS_CONFIGURE=	yes
X
XCONFIGURE_ARGS+=	--prefix=${PREFIX}
X
X.if defined(SPARSEHASH_NAMESPACE) && ${SPARSEHASH_NAMESPACE} != ""
XCONFIGURE_ARGS+=	--enable-namespace=${SPARSEHASH_NAMESPACE}
X.elif defined(SPARSEHASH_DISABLE_NAMESPACE)
XCONFIGURE_ARGS+=	--disable-namespace
X.endif
X
XUSE_REINPLACE=	yes
X
Xpre-everything::
X	@${ECHO} ""
X	@${ECHO} "You can specify in what namespace the google hashtable routines"
X	@${ECHO} "(sparse_hash_map et al.) will be defined.  The default is to define"
X	@${ECHO} "them in \"google\". To define them in another namespace use"
X	@${ECHO} "SPARSEHASH_NAMESPACE=another_namespace"
X	@${ECHO} "To define the hashtable routines in the main namespace use"
X	@${ECHO} "SPARSEHASH_DISABLE_NAMESPACE=yes"
X	@${ECHO} ""
X
Xpre-configure:
X.if !defined(NOPORTDOCS)
X# spoil their intentions to install documentation in ${PREFIX}/doc
X# this saves us from pre-defining the do-install target.
X	${REINPLACE_CMD} -e \
X	's|$$(prefix)/doc/$$(PACKAGE)-$$(VERSION)|${DOCSDIR}|' \
X	${WRKSRC}/Makefile.in
X.else
X# gently skip installing documentation with minimum efforts
X	${REINPLACE_CMD} -e \
X	's|^install-data-am: install-dist_docDATA|install-data-am:|' \
X	${WRKSRC}/Makefile.in
X.endif
X
Xpost-build:
X	@${ECHO} ""
X	@${ECHO} "Build is done. You may optionally type make test to run the built-in tests"
X	@${ECHO} ""
X
Xtest: build
X	@(cd ${WRKSRC}; make check)
X
Xpost-install:
X	@${ECHO} ""
X	@${CAT} ${PKGMESSAGE}
X	@${ECHO} ""
X
X.include <bsd.port.mk>
END-of-goog-sparsehash/Makefile
echo x - goog-sparsehash/pkg-descr
sed 's/^X//' >goog-sparsehash/pkg-descr << 'END-of-goog-sparsehash/pkg-descr'
XAn extremely memory-efficient hash_map implementation. 2 bits/entry overhead!
XThe Google SparseHash project contains several hash-map implementations in use
Xat Google, with different performance characteristics, including an
Ximplementation that optimizes for space and one that optimizes for speed.
X
XWWW: http://goog-sparsehash.sf.net,
X     http://code.google.com
X
X- Vasil Dimov
Xvd at datamax.bg
END-of-goog-sparsehash/pkg-descr
echo x - goog-sparsehash/pkg-plist
sed 's/^X//' >goog-sparsehash/pkg-plist << 'END-of-goog-sparsehash/pkg-plist'
Xinclude/google/dense_hash_map
Xinclude/google/dense_hash_set
Xinclude/google/sparse_hash_map
Xinclude/google/sparse_hash_set
Xinclude/google/sparsetable
Xinclude/google/sparsehash/hash_fun.h
Xinclude/google/sparsehash/densehashtable.h
Xinclude/google/sparsehash/sparsehashtable.h
Xinclude/google/sparsehash/config.h
X%%PORTDOCS%%%%DOCSDIR%%/AUTHORS
X%%PORTDOCS%%%%DOCSDIR%%/COPYING
X%%PORTDOCS%%%%DOCSDIR%%/ChangeLog
X%%PORTDOCS%%%%DOCSDIR%%/INSTALL
X%%PORTDOCS%%%%DOCSDIR%%/NEWS
X%%PORTDOCS%%%%DOCSDIR%%/README
X%%PORTDOCS%%%%DOCSDIR%%/TODO
X%%PORTDOCS%%%%DOCSDIR%%/dense_hash_map.html
X%%PORTDOCS%%%%DOCSDIR%%/dense_hash_set.html
X%%PORTDOCS%%%%DOCSDIR%%/sparse_hash_map.html
X%%PORTDOCS%%%%DOCSDIR%%/sparse_hash_set.html
X%%PORTDOCS%%%%DOCSDIR%%/sparsetable.html
X%%PORTDOCS%%%%DOCSDIR%%/implementation.html
X%%PORTDOCS%%%%DOCSDIR%%/performance.html
X at dirrm include/google/sparsehash
X at dirrm include/google
X%%PORTDOCS%%@dirrm %%DOCSDIR%%
END-of-goog-sparsehash/pkg-plist
echo x - goog-sparsehash/pkg-message
sed 's/^X//' >goog-sparsehash/pkg-message << 'END-of-goog-sparsehash/pkg-message'
XNOTE: SparseHash is a template library; there were no binary libraries installed
END-of-goog-sparsehash/pkg-message
exit
--- goog-sparsehash.shar ends here ---

>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list