$OpenBSD: patch-configure_ac,v 1.16 2019/07/22 16:10:27 robert Exp $

Index: configure.ac
--- configure.ac.orig
+++ configure.ac
@@ -109,14 +109,16 @@ abs_top_builddir=`pwd`
 ZCPPFLAGS=""
 AC_CANONICAL_HOST
 AS_CASE([$host_os],
-	[openbsd], [
+	[openbsd*], [
 		BUILDOS="openbsd"
 		ZCPPFLAGS="$ZCPPFLAGS -DOPENBSD"
+		TINFO_LIB=""
 		LN_TFSV="ln -fs"
 	],
 	[linux*], [
 		BUILDOS="linux"
 		ZCPPFLAGS="$ZCPPFLAGS -DLINUX"
+		TINFO_LIB="-ltinfo"
 		LN_TFSV="ln -Tfsv"
 	],
 	[*], [
@@ -149,6 +151,7 @@ AC_SUBST([ZPHPCXXFLAGS])
 ZCPPFLAGS="$ZCPPFLAGS \
 	-I\${top_builddir}/common/include \
 	-I\${top_srcdir}/common/include \
+	-I\${top_srcdir}/mapi4linux/include \
 	-I\${top_srcdir}/m4lcommon/include \
 	-I\${top_srcdir}/mapi4linux/include \
 	-I\${top_srcdir}/provider/common/include \
@@ -166,7 +169,7 @@ ZCPPFLAGS="$ZCPPFLAGS $LFS_CFLAGS"
 
 AC_MSG_CHECKING([available C++ standard])
 cxxmode=""
-for i in "c++17" "c++14"; do
+for i in "c++14"; do
 	CXXFLAGS="$CXXFLAGS_system -std=$i"
 	AC_COMPILE_IFELSE([AC_LANG_SOURCE([])], [cxxmode="$i"])
 	AS_IF([test -n "$cxxmode"], [break])
@@ -244,7 +247,7 @@ AC_DEFUN([LIBNCURSES_WITH_CONFIG],[
 		[
 			dnl just pick the lowest common denominator
 			NCURSES_FLAGS=""
-			NCURSES_LIBS="-lncurses -ltinfo"
+			NCURSES_LIBS="-lncurses ${TINFO_LIB}"
 		]
 	)
 	AC_CHECK_HEADERS([ncurses.h])
@@ -280,7 +283,12 @@ AS_IF([test "$with_php" != "no"], [
 PKG_CHECK_MODULES([libHX], [libHX >= 1.10])
 PKG_CHECK_MODULES([xapian], [xapian-core])
 PKG_CHECK_MODULES([XML2], [libxml-2.0])
+
+db_CPPFLAGS="-I/usr/local/include/db4"
+CPPFLAGS="$CPPFLAGS $db_CPPFLAGS"
 AC_CHECK_HEADERS([db_cxx.h], [], [AC_MSG_ERROR([Berkeley DB C++ interface required])])
+AC_SUBST([db_CPPFLAGS])
+CPPFLAGS="$CPPFLAGS_system"
 
 # Checks for MySQL 4.1 or better
 AC_DEFUN([MYSQL_WITH_MYSQL_CONFIG],[
@@ -406,7 +414,7 @@ PKG_CHECK_MODULES([jsoncpp], [jsoncpp >= 1.4.0], [], [
 #
 
 AC_CHECK_HEADERS([ldap.h],
-	[ LIBS="$LIBS -lldap_r"
+	[ LIBS="$LIBS -L/usr/local/lib -lldap_r"
 	  CXXFLAGS="$CXXFLAGS -pthread"
 	  AC_MSG_CHECKING([for -lldap_r without LDAP_DEPRECATED])
 	  AC_LINK_IFELSE([ AC_LANG_SOURCE([#include <ldap.h>
@@ -461,7 +469,7 @@ iconv_t i; i = iconv_open("", "");
 	[ AC_MSG_RESULT([yes]) ],
 	[ AC_MSG_RESULT([no])
 	  AC_MSG_CHECKING([for iconv in -liconv])
-	  LIBS="$LIBS -liconv"
+	  LIBS="$LIBS -L/usr/local/lib -liconv"
 	  AC_LINK_IFELSE([ AC_LANG_SOURCE([
 #include <stdlib.h>
 #include <iconv.h>
@@ -480,7 +488,7 @@ AC_SEARCH_LIBS([crypt_r], [crypt], [
 ])
 LIBS="$LIBS_system"
 AC_SEARCH_LIBS([clock_gettime], [rt], [
-	AS_IF([test "$LIBS" = "$LIBS_system"], [clock_LIBS=""], [clock_LIBS="-lrt"])
+	AS_IF([test "$LIBS" = "$LIBS_system"], [clock_LIBS=""], [clock_LIBS=""])
 ])
 LIBS="$LIBS_system"
 AC_SUBST([CRYPT_LIBS])
@@ -593,12 +601,14 @@ AC_CHECK_LIB([z], [gzopen], GZ_LIBS="-lz",
 )
 AC_SUBST(GZ_LIBS)
 
-AC_CHECK_FUNCS([gettext], INTL_LIBS="", dnl gettext in libc
-  AC_CHECK_LIB([intl], [gettext], INTL_LIBS="-lintl", dnl in -lintl
+LIBS="$LIBS -L/usr/local/lib"
+AC_CHECK_FUNCS([gettext], INTL_LIBS="-L/usr/local/lib -lintl", dnl gettext in libc
+  AC_CHECK_LIB([intl], [gettext], INTL_LIBS="-L/usr/local/lib -lintl", dnl in -lintl
     AC_MSG_ERROR([required library libintl missing or unusable])
   )
 )
 AC_SUBST(INTL_LIBS)
+LIBS=$LIBS_system
 
 # check epoll support
 AC_ARG_ENABLE([epoll], AS_HELP_STRING([--disable-epoll], [disable epoll and fallback to select]), [want_epoll=${enableval}], [want_epoll=yes])
@@ -653,6 +663,8 @@ AS_IF([test "$have_icu" = 0], [
 	AC_MSG_ERROR([ICU is required but not found])
 ])
 ZCPPFLAGS="$ZCPPFLAGS $icu_uc_CFLAGS $icu_i18n_CFLAGS"
+
+AC_CHECK_FUNCS([arc4random_buf])
 
 # done testing C++ requirements
 AC_LANG_POP
