2008-06-20 03:09:05 +02:00
|
|
|
# $NetBSD: Makefile,v 1.4 2008/06/20 01:09:11 joerg Exp $
|
Initial import of tinycdb-0.75, a very fast and simple package for
creating and reading constant data bases, a data structure introduced
by Dan J. Bernstein in his cdb package. It may be used to speed up
searches in a sequence of (key,value) pairs with very big number
of records. Example usage is indexing a big list of users - where
a search will require linear reading of a large /etc/passwd file,
and for many other tasks. It's usage/API is similar to ones found
in BerkeleyDB, gdbm and traditional *nix dbm/ndbm libraries, and
is compatible in great extent to cdb-0.75 package by Dan Bernstein.
CDB is a constant database, that is, it cannot be updated at a
runtime, only rebuilt. Rebuilding is atomic operation and is very
fast - much faster than of many other similar packages. Once created,
CDB may be queried, and a query takes very little time to complete.
2006-01-07 07:47:10 +01:00
|
|
|
#
|
|
|
|
|
Update to 0.76. From the changelog:
* manpage spelling fixes, from Claus Assmann <ca+tinycdb (at) esmtp.org>.
* little mods to allow compiling tinycdb by C++ compiler,
from Olly Betts <olly (at) survex.com>.
* use program_invocation_short_name on GLIBC, (modified) patch
from Dmitry V. Levin <ldv (at) altlinux.org>
* manpage fix (cdb_findnext() prototype),
from Dmitry V. Levin <ldv (at) altlinux.org>
* (somewhat silly) GCC-4.x "signedness" warnings fix, modified patch
from Dmitry V. Levin <ldv (at) altlinux.org>
* more signed vs unsigned char* fixes in various places
* Makefile: always build libnss_cdb.so with libcdb_pic.a, no nss-shared
target: to avoid extra dependency from /usr/lib/.
* Makefile: use map files for lib*.so, with explicit list of exported
symbols. This, in particular, avoids exporting of libcdb symbols by
libnss_cdb.so.
* mark all internal routines as internal_function (defined as
__attribute__((visibility("hidden"))) for GCC)
* Makefile: add tests-shared, to use cdb-shared for testing
* Makefile: allow to specify which binary (shared vs static) to install
in install target, by using INSTALLPROG variable
* Makefile: pass -DNSSCDB_DIR=... to compiler when building .lo files,
to allow setting of system config dir (/etc by default) on command line.
For nss_cdb module.
* Makefile: use $(CP) instead of cp, to be able to specify `cp' options
(CP="cp -p")
* Use unlink(tmpname) + open(O_CREAT|O_EXCL) instead of
open(O_CREAT|O_TRUNC) when creating the new CDB file.
And use O_NOFOLLOW if defined.
This also works around some (probably) possible symlink attacks.
* Add -p perms option for cdb utility, to specify mode (permission bits)
for newly created .cdb file (default is 0666&umask(), -p forces the given
mode).
* allow tmpname (cdb -t) to be `-', to mean no temp file gets created.
Also check if tmpname is the same as database name and don't try to
rename() if it is.
* rewrite nss_cdb-Makefile a bit: simplify it, and use more sane
permission scheme for /etc/shadow
* fixed a typo in cdb_seek.c, -- it segfaulted if passed NULL dlenp
pointer. Thanks Daiki for the patch. Closes: #383417
* use MAP_FAILED to test mmap() return value, instead of hardcoded -1.
* libcdb-dev replaces tinycdb<0.76
2007-01-18 23:46:12 +01:00
|
|
|
DISTNAME= tinycdb_0.76
|
Initial import of tinycdb-0.75, a very fast and simple package for
creating and reading constant data bases, a data structure introduced
by Dan J. Bernstein in his cdb package. It may be used to speed up
searches in a sequence of (key,value) pairs with very big number
of records. Example usage is indexing a big list of users - where
a search will require linear reading of a large /etc/passwd file,
and for many other tasks. It's usage/API is similar to ones found
in BerkeleyDB, gdbm and traditional *nix dbm/ndbm libraries, and
is compatible in great extent to cdb-0.75 package by Dan Bernstein.
CDB is a constant database, that is, it cannot be updated at a
runtime, only rebuilt. Rebuilding is atomic operation and is very
fast - much faster than of many other similar packages. Once created,
CDB may be queried, and a query takes very little time to complete.
2006-01-07 07:47:10 +01:00
|
|
|
PKGNAME= ${DISTNAME:S/_/-/}
|
|
|
|
CATEGORIES= databases
|
|
|
|
MASTER_SITES= http://www.corpit.ru/mjt/tinycdb/
|
|
|
|
|
|
|
|
MAINTAINER= schmonz@NetBSD.org
|
|
|
|
HOMEPAGE= http://www.corpit.ru/mjt/tinycdb.html
|
|
|
|
COMMENT= Create and read constant databases
|
|
|
|
|
2008-06-20 03:09:05 +02:00
|
|
|
PKG_DESTDIR_SUPPORT= user-destdir
|
|
|
|
|
Initial import of tinycdb-0.75, a very fast and simple package for
creating and reading constant data bases, a data structure introduced
by Dan J. Bernstein in his cdb package. It may be used to speed up
searches in a sequence of (key,value) pairs with very big number
of records. Example usage is indexing a big list of users - where
a search will require linear reading of a large /etc/passwd file,
and for many other tasks. It's usage/API is similar to ones found
in BerkeleyDB, gdbm and traditional *nix dbm/ndbm libraries, and
is compatible in great extent to cdb-0.75 package by Dan Bernstein.
CDB is a constant database, that is, it cannot be updated at a
runtime, only rebuilt. Rebuilding is atomic operation and is very
fast - much faster than of many other similar packages. Once created,
CDB may be queried, and a query takes very little time to complete.
2006-01-07 07:47:10 +01:00
|
|
|
CONFLICTS+= cdb-[0-9]*
|
|
|
|
|
|
|
|
WRKSRC= ${WRKDIR}/${PKGNAME_NOREV}
|
|
|
|
|
|
|
|
SUBST_CLASSES+= paths
|
|
|
|
SUBST_STAGE.paths= do-configure
|
|
|
|
SUBST_FILES.paths= Makefile
|
|
|
|
SUBST_SED.paths= -e 's|@PREFIX@|${PREFIX}|g'
|
|
|
|
SUBST_SED.paths+= -e 's|@PKG_SYSCONFDIR@|${PKG_SYSCONFDIR}|g'
|
|
|
|
SUBST_SED.paths+= -e 's|@PKGMANDIR@|${PKGMANDIR}|g'
|
2006-01-19 05:41:09 +01:00
|
|
|
SUBST_MESSAGE.paths= Configuring pkgsrc paths.
|
Initial import of tinycdb-0.75, a very fast and simple package for
creating and reading constant data bases, a data structure introduced
by Dan J. Bernstein in his cdb package. It may be used to speed up
searches in a sequence of (key,value) pairs with very big number
of records. Example usage is indexing a big list of users - where
a search will require linear reading of a large /etc/passwd file,
and for many other tasks. It's usage/API is similar to ones found
in BerkeleyDB, gdbm and traditional *nix dbm/ndbm libraries, and
is compatible in great extent to cdb-0.75 package by Dan Bernstein.
CDB is a constant database, that is, it cannot be updated at a
runtime, only rebuilt. Rebuilding is atomic operation and is very
fast - much faster than of many other similar packages. Once created,
CDB may be queried, and a query takes very little time to complete.
2006-01-07 07:47:10 +01:00
|
|
|
|
|
|
|
.include "../../mk/bsd.pkg.mk"
|