diff --git a/CHANGES b/CHANGES index 272f0859f2..c51e2c7a19 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,5 @@ +3460. [bug] Only link against readline where needed. [RT #29810] + 3458. [bug] Return FORMERR when presented with a overly long domain named in a request. [RT #29682] diff --git a/bin/dig/Makefile.in b/bin/dig/Makefile.in index 2a3bc5d6fe..7cd7b0e682 100644 --- a/bin/dig/Makefile.in +++ b/bin/dig/Makefile.in @@ -23,6 +23,8 @@ top_srcdir = @top_srcdir@ @BIND9_MAKE_INCLUDES@ +READLINE_LIB = @READLINE_LIB@ + CINCLUDES = -I${srcdir}/include ${DNS_INCLUDES} ${BIND9_INCLUDES} \ ${ISC_INCLUDES} ${LWRES_INCLUDES} ${ISCCFG_INCLUDES} @@ -78,7 +80,7 @@ host@EXEEXT@: host.@O@ dighost.@O@ ${UOBJS} ${DEPLIBS} ${FINALBUILDCMD} nslookup@EXEEXT@: nslookup.@O@ dighost.@O@ ${UOBJS} ${DEPLIBS} - export BASEOBJS="nslookup.@O@ dighost.@O@ ${UOBJS}"; \ + export BASEOBJS="${READLINE_LIB} nslookup.@O@ dighost.@O@ ${UOBJS}"; \ ${FINALBUILDCMD} doc man:: ${MANOBJS} diff --git a/bin/nsupdate/Makefile.in b/bin/nsupdate/Makefile.in index f62ee34866..2d156df009 100644 --- a/bin/nsupdate/Makefile.in +++ b/bin/nsupdate/Makefile.in @@ -23,6 +23,8 @@ top_srcdir = @top_srcdir@ @BIND9_MAKE_INCLUDES@ +READLINE_LIB = @READLINE_LIB@ + CINCLUDES = ${LWRES_INCLUDES} ${DNS_INCLUDES} ${BIND9_INCLUDES} \ ${ISC_INCLUDES} ${ISCCFG_INCLUDES} @DST_GSSAPI_INC@ @@ -72,7 +74,7 @@ nsupdate.@O@: nsupdate.c -c ${srcdir}/nsupdate.c nsupdate@EXEEXT@: nsupdate.@O@ ${UOBJS} ${DEPLIBS} - export BASEOBJS="nsupdate.@O@ ${UOBJS}"; \ + export BASEOBJS="${READLINE_LIB} nsupdate.@O@ ${UOBJS}"; \ ${FINALBUILDCMD} doc man:: ${MANOBJS} diff --git a/configure b/configure index 8f16553f51..4d3a34d43b 100755 --- a/configure +++ b/configure @@ -1,5 +1,5 @@ #! /bin/sh -# Copyright (C) 2004-2012 Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2004-2013 Internet Systems Consortium, Inc. ("ISC") # Copyright (C) 1996-2003 Internet Software Consortium. # # Permission to use, copy, modify, and/or distribute this software for any @@ -1226,6 +1226,7 @@ LWRES_PLATFORM_NEEDVSNPRINTF ISC_PLATFORM_NEEDVSNPRINTF LWRES_PLATFORM_NEEDSPRINTF ISC_PLATFORM_NEEDSPRINTF +READLINE_LIB ISC_PLATFORM_NEEDSTRLCAT ISC_PLATFORM_NEEDSTRLCPY GENRANDOMLIB @@ -17475,6 +17476,7 @@ fi + # Check whether --with-readline was given. if test "${with_readline+set}" = set; then : withval=$with_readline; readline="$withval" @@ -17490,7 +17492,7 @@ no) ;; readline=-lreadline fi saved_LIBS="$LIBS" - LIBS="$LIBS $readline" + LIBS="$readline" for ac_func in readline do : ac_fn_c_check_func "$LINENO" "readline" "ac_cv_func_readline" @@ -17502,14 +17504,14 @@ _ACEOF fi done - if test "$ac_cv_func_readline" = "no" + if test "$ac_cv_func_readline" = "yes" then - LIBS="$saved_LIBS" + READLINE_LIB="$readline" fi + LIBS="$saved_LIBS" ;; esac - ISC_PRINT_OBJS= ISC_PRINT_SRCS= { $as_echo "$as_me:${as_lineno-$LINENO}: checking sprintf" >&5 diff --git a/configure.in b/configure.in index f13f5c1f46..878dcc84c8 100644 --- a/configure.in +++ b/configure.in @@ -2363,6 +2363,7 @@ AC_CHECK_FUNC(strlcat, AC_SUBST(ISC_PLATFORM_NEEDSTRLCAT) +AC_SUBST(READLINE_LIB) AC_ARG_WITH(readline, [ --with-readline[=LIBSPEC] specify readline library [default -lreadline]], readline="$withval", readline="-lreadline") @@ -2374,16 +2375,16 @@ no) ;; readline=-lreadline fi saved_LIBS="$LIBS" - LIBS="$LIBS $readline" + LIBS="$readline" AC_CHECK_FUNCS(readline) - if test "$ac_cv_func_readline" = "no" + if test "$ac_cv_func_readline" = "yes" then - LIBS="$saved_LIBS" + READLINE_LIB="$readline" fi + LIBS="$saved_LIBS" ;; esac - ISC_PRINT_OBJS= ISC_PRINT_SRCS= AC_MSG_CHECKING(sprintf)