diff options
-rw-r--r-- | RELNOTES | 9 | ||||
-rwxr-xr-x | configure | 21 | ||||
-rw-r--r-- | configure.ac | 21 | ||||
-rw-r--r-- | util/Makefile.bind.in | 3 | ||||
-rw-r--r-- | util/bind.sh | 60 |
5 files changed, 71 insertions, 43 deletions
@@ -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. @@ -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 |