3ce7d3
diff --git a/config.h.in b/config.h.in
3ce7d3
index e1364dd921..1dc65cfb21 100644
3ce7d3
--- a/config.h.in
3ce7d3
+++ b/config.h.in
3ce7d3
@@ -588,7 +588,7 @@ int sigwait(const unsigned int *set, int *sig);
3ce7d3
 #undef PREFER_GOSTASN1
bc5dde
 
bc5dde
 /* The size of `void *', as computed by sizeof. */
bc5dde
-#undef SIZEOF_VOID_P
bc5dde
+/* #undef SIZEOF_VOID_P */
bc5dde
 
bc5dde
 /* Define to 1 if you have the ANSI C header files. */
bc5dde
 #undef STDC_HEADERS
3ce7d3
diff --git a/configure.in b/configure.in
3ce7d3
index 73b1c8ccbb..129fc3f311 100644
3ce7d3
--- a/configure.in
3ce7d3
+++ b/configure.in
3ce7d3
@@ -3523,14 +3523,14 @@ AC_TRY_COMPILE([
3ce7d3
 #include <sys/socket.h>
3ce7d3
 #include <netdb.h>
3ce7d3
 int getnameinfo(const struct sockaddr *, socklen_t, char *,
3ce7d3
-		socklen_t, char *, socklen_t, unsigned int);],
3ce7d3
+		socklen_t, char *, socklen_t, int);],
bc5dde
 [ return (0);],
3ce7d3
-	[AC_MSG_RESULT(socklen_t for buflen; u_int for flags)
3ce7d3
+	[AC_MSG_RESULT(socklen_t for buflen; int for flags)
3ce7d3
 	 AC_DEFINE(IRS_GETNAMEINFO_SOCKLEN_T, socklen_t,
3ce7d3
 		   [Define to the sockaddr length type used by getnameinfo(3).])
3ce7d3
 	 AC_DEFINE(IRS_GETNAMEINFO_BUFLEN_T, socklen_t,
3ce7d3
 		   [Define to the buffer length type used by getnameinfo(3).])
3ce7d3
-	 AC_DEFINE(IRS_GETNAMEINFO_FLAGS_T, unsigned int,
3ce7d3
+	 AC_DEFINE(IRS_GETNAMEINFO_FLAGS_T, int,
3ce7d3
 		   [Define to the flags type used by getnameinfo(3).])],
3ce7d3
 [AC_TRY_COMPILE([
3ce7d3
 #include <sys/types.h>
3ce7d3
@@ -3557,7 +3557,7 @@ int getnameinfo(const struct sockaddr *, size_t, char *,
bc5dde
 [AC_MSG_RESULT(not match any subspecies; assume standard definition)
3ce7d3
 AC_DEFINE(IRS_GETNAMEINFO_SOCKLEN_T, socklen_t)
bc5dde
 AC_DEFINE(IRS_GETNAMEINFO_BUFLEN_T, socklen_t)
3ce7d3
-AC_DEFINE(IRS_GETNAMEINFO_FLAGS_T, int)])])])
3ce7d3
+AC_DEFINE(IRS_GETNAMEINFO_FLAGS_T, unsigned int)])])])
3ce7d3
 
3ce7d3
 #
3ce7d3
 # ...and same for gai_strerror().
3ce7d3
diff --git a/isc-config.sh.in b/isc-config.sh.in
3ce7d3
index a8a0a89e88..b5e94ed13e 100644
3ce7d3
--- a/isc-config.sh.in
3ce7d3
+++ b/isc-config.sh.in
3ce7d3
@@ -13,7 +13,18 @@ prefix=@prefix@
bc5dde
 exec_prefix=@exec_prefix@
bc5dde
 exec_prefix_set=
bc5dde
 includedir=@includedir@
bc5dde
-libdir=@libdir@
bc5dde
+arch=$(uname -m)
bc5dde
+
bc5dde
+case $arch in
bc5dde
+	x86_64 | amd64 | sparc64 | s390x | ppc64)
bc5dde
+		libdir=/usr/lib64
bc5dde
+		sec_libdir=/usr/lib
bc5dde
+		;;
bc5dde
+	* )
bc5dde
+		libdir=/usr/lib
bc5dde
+		sec_libdir=/usr/lib64
bc5dde
+		;;
bc5dde
+esac
bc5dde
 
bc5dde
 usage()
bc5dde
 {
3ce7d3
@@ -132,6 +143,16 @@ if test x"$echo_libs" = x"true"; then
bc5dde
 	if test x"${exec_prefix_set}" = x"true"; then
3ce7d3
 		libs="-L${exec_prefix}/lib"
bc5dde
 	else
bc5dde
+		if [ ! -x $libdir/libisc.so ] ; then
bc5dde
+			if [ ! -x $sec_libdir/libisc.so ] ; then
bc5dde
+				echo "Error: ISC libs not found in $libdir"
bc5dde
+				if [ -d $sec_libdir ] ; then
bc5dde
+					echo "Error: ISC libs not found in $sec_libdir"
bc5dde
+				fi
bc5dde
+				exit 1
bc5dde
+			fi
bc5dde
+			libdir=$sec_libdir
bc5dde
+		fi
bc5dde
 		libs="-L${libdir}"
bc5dde
 	fi
3ce7d3
 	if test x"$libirs" = x"true" ; then