diff options
Diffstat (limited to 'util')
-rw-r--r-- | util/Makefile.git | 85 | ||||
-rw-r--r-- | util/bind.sh | 7 |
2 files changed, 90 insertions, 2 deletions
diff --git a/util/Makefile.git b/util/Makefile.git new file mode 100644 index 00000000..d681b387 --- /dev/null +++ b/util/Makefile.git @@ -0,0 +1,85 @@ +# +# Copyright (C) 2009-2012 Internet Systems Consortium, Inc. ("ISC") +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH +# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +# AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, +# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE +# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +# PERFORMANCE OF THIS SOFTWARE. + +# $Id: Makefile.bind,v 1.8 2012/04/05 22:16:47 sar Exp $ + +# bindvar.tmp is constructed by configure, it has the paths for +# if GMAKE is blank the shell script couldn't find a gmake to use. +# binddir= +# GMAKE= +include ./bindvar.tmp + +bindsrcdir=bind9 + +all: +# Extract the source from the tarball, if it hasn't been already. + @if test -d ${bindsrcdir} ; then \ + echo ${bindsrcdir} already unpacked... ; \ + else \ + gunzip -c bind.tar.gz | tar xf - ; \ + fi + + @if test -z "${GMAKE}"; then \ + echo "unable to find gmake" 1>&2 ; \ + exit 1; \ + fi + +# Configure the export libraries +# Currently disable the epoll and devpoll options as they don't interact +# well with the DHCP code. +# If the top-level Bind Makefile exists we skip the configuration step +# as we assume it's done and won't change. Doing a make clean will +# reset things if necessary. + @if test -f ${bindsrcdir}/Makefile ; then \ + echo Bind export libraries already configured ; \ + else \ + echo Configuring BIND Export libraries for DHCP. ; \ + rm -rf ./lib ./include ./configure.log ./build.log ./install.log ; \ + (cd ${bindsrcdir} && ./configure --disable-kqueue --disable-epoll --disable-devpoll --without-openssl --without-libxml2 --enable-exportlib --enable-threads=no --with-export-includedir=${binddir}/include --with-export-libdir=${binddir}/lib --with-gssapi=no > ${binddir}/configure.log); \ + fi + +# Build and install the export libraries +# No need to do anything if we already have something installed. + @if test -d ${binddir}/lib ; then \ + echo Bind export libraries already installed ; \ + else \ + echo Building BIND Export libraries - this takes some time. ;\ + (cd ${bindsrcdir}/lib/export ; \ + echo building in `pwd` ; \ + MAKE=${GMAKE} ${GMAKE} > ${binddir}/build.log) ; \ + \ + echo Installing BIND Export libraries to ${binddir}. ; \ + (cd ${bindsrcdir}/lib/export ; \ + MAKE=${GMAKE} ${GMAKE} install > ${binddir}/install.log) ; \ + fi + +clean: + @echo Cleaning BIND export library. + (cd ${bindsrcdir}; make -k clean ) + rm -rf ./lib ./include ./configure.log ./build.log \ + ./install.log + +# Include the following so that this Makefile is happy when the parent +# tries to use them. + +distdir: + +distclean: + +install: + +check: + +uninstall: diff --git a/util/bind.sh b/util/bind.sh index a66f8a64..494e2399 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=*) @@ -100,8 +100,11 @@ esac if test -d bind/bind9/.git then cp util/Makefile.git bind/Makefile.in + rm -rf bind/include bind/lib cd bind/bind9 - git checkout $BINDTAG && git pull + test -f Makefile && make distclean + git fetch + git checkout $BINDTAG && test -n "${noSNAP}" && git merge --ff-only else # Delete all previous bind stuff rm -rf bind |