summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--RELNOTES9
-rwxr-xr-xconfigure21
-rw-r--r--configure.ac21
-rw-r--r--util/Makefile.bind.in3
-rw-r--r--util/bind.sh60
5 files changed, 71 insertions, 43 deletions
diff --git a/RELNOTES b/RELNOTES
index e4d6eb88..c7f58880 100644
--- a/RELNOTES
+++ b/RELNOTES
@@ -94,6 +94,15 @@ by Eric Young (eay@cryptsoft.com).
Soto from BlueCat Networks for reporting the issue and supplying a patch.
[ISC-Bugs #43262]
+- Added the support for git repositories in the util/bind.sh script.
+ When you build ISC DHCP from a git repo, i.e., without a "bind"
+ directory populated as in the release distribution file, you may now
+ create the bind directory, change to it and clone the private
+ (repo.isc.org/proj/git/prod/bind9.git) or the public
+ (https://source.isc.org/git/bind9.git) git repository into
+ bind/bind9 and then invoke the util/bind.sh script as usual.
+ [ISC-Bugs #43236]
+
Changes since 4.3.0 (bug fixes)
- Tidy up several small tickets.
diff --git a/configure b/configure
index 90335434..bb7c6b88 100755
--- a/configure
+++ b/configure
@@ -627,7 +627,7 @@ LTLIBOBJS
LIBOBJS
LDAP_CFLAGS
LDAP_LIBS
-BINDVERSION
+BINDBUILD
BINDBIND
BINDSRCDIR
BINDDIR
@@ -6910,7 +6910,7 @@ fi
BINDDIR=
BINDSRCDIR=
BINDBIND=
-BINDVERSION=
+BINDBUILD=
# Check whether --with-libbind was given.
if test "${with_libbind+set}" = set; then :
@@ -6926,16 +6926,21 @@ yes)
no)
BINDDIR="\${top_srcdir}/bind"
BINDSRCDIR="\${top_srcdir}/bind"
+ my_abs_srcdir=`cd $srcdir && pwd`
+ BINDBIND="${my_abs_srcdir}/bind"
if test ! -d "$srcdir/bind"; then
as_fn_error $? "Where to find or build bind includes and libraries must be specified" "$LINENO" 5
fi
- if test ! -f "$srcdir/bind/version.tmp"; then
- as_fn_error $? "Cannot find $srcdir/bind/version.tmp" "$LINENO" 5
+ if test -d "$srcdir/bind/bind9"; then
+ BINDBUILD="${my_abs_srcdir}/bind/bind9"
+ else
+ if test ! -f "$srcdir/bind/version.tmp"; then
+ as_fn_error $? "Cannot find $srcdir/bind/version.tmp" "$LINENO" 5
+ fi
+ . "$srcdir/bind/version.tmp"
+ bindversion=${MAJORVER}.${MINORVER}.${PATCHVER}${RELEASETYPE}${RELEASEVER}
+ BINDBUILD="${my_abs_srcdir}/bind/bind-$bindversion"
fi
- my_abs_srcdir=`cd $srcdir && pwd`
- BINDBIND="${my_abs_srcdir}/bind"
- . "$srcdir/bind/version.tmp"
- BINDVERSION=${MAJORVER}.${MINORVER}.${PATCHVER}${RELEASETYPE}${RELEASEVER}
ac_config_files="$ac_config_files $srcdir/bind/Makefile"
;;
diff --git a/configure.ac b/configure.ac
index c819eeb7..f5345550 100644
--- a/configure.ac
+++ b/configure.ac
@@ -735,7 +735,7 @@ AC_CHECK_MEMBER(struct tpacket_auxdata.tp_vlan_tci,
BINDDIR=
BINDSRCDIR=
BINDBIND=
-BINDVERSION=
+BINDBUILD=
AC_ARG_WITH(libbind,
AS_HELP_STRING([--with-libbind=PATH],[bind includes and libraries are in PATH]),
use_libbind="$withval", use_libbind="no")
@@ -746,16 +746,21 @@ yes)
no)
BINDDIR="\${top_srcdir}/bind"
BINDSRCDIR="\${top_srcdir}/bind"
+ my_abs_srcdir=`cd $srcdir && pwd`
+ BINDBIND="${my_abs_srcdir}/bind"
if test ! -d "$srcdir/bind"; then
AC_MSG_ERROR([Where to find or build bind includes and libraries must be specified])
fi
- if test ! -f "$srcdir/bind/version.tmp"; then
- AC_MSG_ERROR([Cannot find $srcdir/bind/version.tmp])
+ if test -d "$srcdir/bind/bind9"; then
+ BINDBUILD="${my_abs_srcdir}/bind/bind9"
+ else
+ if test ! -f "$srcdir/bind/version.tmp"; then
+ AC_MSG_ERROR([Cannot find $srcdir/bind/version.tmp])
+ fi
+ . "$srcdir/bind/version.tmp"
+ bindversion=${MAJORVER}.${MINORVER}.${PATCHVER}${RELEASETYPE}${RELEASEVER}
+ BINDBUILD="${my_abs_srcdir}/bind/bind-$bindversion"
fi
- my_abs_srcdir=`cd $srcdir && pwd`
- BINDBIND="${my_abs_srcdir}/bind"
- . "$srcdir/bind/version.tmp"
- BINDVERSION=${MAJORVER}.${MINORVER}.${PATCHVER}${RELEASETYPE}${RELEASEVER}
AC_CONFIG_FILES([$srcdir/bind/Makefile])
;;
*)
@@ -774,7 +779,7 @@ esac
AC_SUBST(BINDDIR)
AC_SUBST(BINDSRCDIR)
AC_SUBST(BINDBIND)
-AC_SUBST(BINDVERSION)
+AC_SUBST(BINDBUILD)
# OpenLDAP support.
AC_ARG_WITH(ldap,
diff --git a/util/Makefile.bind.in b/util/Makefile.bind.in
index eb500d5c..95880347 100644
--- a/util/Makefile.bind.in
+++ b/util/Makefile.bind.in
@@ -16,8 +16,7 @@
# Configure and build the bind libraries for use by DHCP
binddir=@BINDBIND@
-version=@BINDVERSION@
-bindsrcdir=bind-${version}
+bindsrcdir=@BINDBUILD@
bindconfig = --without-openssl --without-libxml2 \
--without-gssapi --disable-threads \
diff --git a/util/bind.sh b/util/bind.sh
index f1ceaa50..54f5778a 100644
--- a/util/bind.sh
+++ b/util/bind.sh
@@ -27,7 +27,7 @@
topdir=`pwd`
binddir=$topdir/bind
-remote=--remote=cvs.isc.org:/proj/git/prod/bind9.git
+remote=--remote=repo.isc.org:/proj/git/prod/bind9.git
case "${1:-}" in
--remote=*)
@@ -97,34 +97,44 @@ case $# in
;;
esac
-# Delete all previous bind stuff
-rm -rf bind
+if test -d bind/bind9/.git
+then
+ cp util/Makefile.bind.in bind/Makefile.in
+ rm -rf bind/include bind/lib
+ cd bind/bind9
+ test -f Makefile && make distclean
+ git fetch
+ git checkout $BINDTAG && test -n "${noSNAP}" && \
+ git merge --ff-only HEAD
+else
+ # Delete all previous bind stuff
+ rm -rf bind
-# Make and move to our directory for all things bind
-mkdir $binddir
-cp util/Makefile.bind.in bind/Makefile.in
-cd $binddir
+ # Make and move to our directory for all things bind
+ mkdir $binddir
+ cp util/Makefile.bind.in bind/Makefile.in
+ cd $binddir
-# Get the bind version file and move it to version.tmp
-git archive --format tar $remote $BINDTAG version | tar xf -
-mv version version.tmp
+ # Get the bind version file and move it to version.tmp
+ git archive --format tar $remote $BINDTAG version | tar xf -
+ mv version version.tmp
-# Get the bind release kit shell script
-git archive --format tar $remote master:util/ | tar xf - kit.sh
+ # Get the bind release kit shell script
+ git archive --format tar $remote master:util/ | tar xf - kit.sh
-# Create the bind tarball, which has the side effect of
-# setting up the bind directory we will use for building
-# the export libraries
-echo Creating tarball for $BINDTAG
-sh kit.sh $remote $SNAP $BINDTAG $binddir
+ # Create the bind tarball, which has the side effect of
+ # setting up the bind directory we will use for building
+ # the export libraries
+ echo Creating tarball for $BINDTAG
+ sh kit.sh $remote $SNAP $BINDTAG $binddir
-. ./version.tmp
+ . ./version.tmp
-version=${MAJORVER}.${MINORVER}.${PATCHVER}${RELEASETYPE}${RELEASEVER}
-bindsrcdir=bind-$version
-mm=${MAJORVER}.${MINORVER}
-
-# move the tar file to a known place for use by the make dist command
-echo Moving tar file to bind.tar.gz for distribution
-mv bind-${mm}*.tar.gz bind.tar.gz
+ version=${MAJORVER}.${MINORVER}.${PATCHVER}${RELEASETYPE}${RELEASEVER}
+ bindsrcdir=bind-$version
+ mm=${MAJORVER}.${MINORVER}
+ # move the tar file to a known place for use by the make dist command
+ echo Moving tar file to bind.tar.gz for distribution
+ mv bind-${mm}*.tar.gz bind.tar.gz
+fi