-# $Id: Makefile,v 1.419 2014/04/24 00:29:45 schwarze Exp $
+# $Id: Makefile,v 1.420 2014/06/20 02:55:49 schwarze Exp $
#
# Copyright (c) 2010, 2011, 2012 Kristaps Dzonsons <kristaps@bsd.lv>
# Copyright (c) 2011, 2013, 2014 Ingo Schwarze <schwarze@openbsd.org>
DBLIB = -L/usr/local/lib -lsqlite3
DBBIN = makewhatis manpage apropos
+# OpenBSD has the ohash functions in libutil.
+# Comment the following line if your system doesn't.
+DBLIB += -lutil
+
# === END OF USER SETTINGS =============================================
ALLBIN = mandoc preconv demandoc $(DBBIN)
CFLAGS="${CFLAGS} -Wno-unused -Werror"
runtest() {
- echo ${CC} ${CFLAGS} -o test-${1} test-${1}.c 1>&2
- ${CC} ${CFLAGS} -o "test-${1}" "test-${1}.c" 1>&2 || return 0
+ echo ${CC} ${CFLAGS} ${3} -o test-${1} test-${1}.c 1>&2
+ ${CC} ${CFLAGS} ${3} -o "test-${1}" "test-${1}.c" 1>&2 || return 0
"./test-${1}" && echo "#define HAVE_${2}" \
|| echo FAILURE: test-${1} returned $? 1>&2
rm "test-${1}"
runtest fgetln FGETLN
runtest getsubopt GETSUBOPT
runtest mmap MMAP
-runtest ohash OHASH
+runtest ohash OHASH -lutil
runtest reallocarray REALLOCARRAY
runtest strcasestr STRCASESTR
runtest strlcat STRLCAT
#include <stdlib.h>
#include <ohash.h>
-void *xalloc(size_t sz, void *arg) { return(calloc(sz,1)); }
-void xfree(void *p, size_t sz, void *arg) { free(p); }
+void *xmalloc(size_t sz, void *arg) { return(calloc(1,sz)); }
+void *xcalloc(size_t nmemb, size_t sz, void *arg) { return(calloc(nmemb,sz)); }
+void xfree(void *p, void *arg) { free(p); }
int
main(void)
{
struct ohash h;
struct ohash_info i;
- i.halloc = i.alloc = xalloc;
- i.hfree = xfree;
+ i.alloc = xmalloc;
+ i.calloc = xcalloc;
+ i.free = xfree;
ohash_init(&h, 2, &i);
ohash_delete(&h);
return 0;