summaryrefslogtreecommitdiffstats
path: root/contrib/bind9/FREEBSD-Upgrade
diff options
context:
space:
mode:
authordougb <dougb@FreeBSD.org>2007-12-02 19:10:41 +0000
committerdougb <dougb@FreeBSD.org>2007-12-02 19:10:41 +0000
commita71024a14b827f5b701147352017a851b29079f1 (patch)
tree53a2dee8ac1ac0a8ab5297f2d49a8f8514d535f4 /contrib/bind9/FREEBSD-Upgrade
parente9f5980a15892cbb50c32cfaab95f2dcb23cebcd (diff)
downloadFreeBSD-src-a71024a14b827f5b701147352017a851b29079f1.zip
FreeBSD-src-a71024a14b827f5b701147352017a851b29079f1.tar.gz
Vendor import of BIND 9.4.2
Diffstat (limited to 'contrib/bind9/FREEBSD-Upgrade')
-rw-r--r--contrib/bind9/FREEBSD-Upgrade127
1 files changed, 115 insertions, 12 deletions
diff --git a/contrib/bind9/FREEBSD-Upgrade b/contrib/bind9/FREEBSD-Upgrade
index f590181..75efb09 100644
--- a/contrib/bind9/FREEBSD-Upgrade
+++ b/contrib/bind9/FREEBSD-Upgrade
@@ -1,17 +1,120 @@
-# $FreeBSD$
-#
-# Bug trhodes@ and des@ to actually throw some text in here.
-#
-while read pattern ; do rm -rf $pattern ; done <FREEBSD-Xlist
-sed -i.orig -e '/\/tests/d; /docutil/d;' configure.in Makefile.in */Makefile.in
+ FreeBSD maintainer's guide to updating BIND 9
+ =============================================
-autoconf253
+1) Obtain the latest source distribution from the ISC's FTP server
+ (ftp://ftp.isc.org/isc/bind9/)
-autoheader253
+2) Unpack the tarball in a suitable directory, and cd into the new
+ source directory.
-./configure --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man \
- --enable-threads --enable-libbind --disable-ipv6 \
- --enable-getifaddrs --disable-linux-caps \
- --with-openssl=/usr --with-randomdev=/dev/random
+3) Remove unwanted files and directories:
+
+ $ while read pattern ; do rm -rf $pattern ; done \
+ </usr/src/contrib/bind9/FREEBSD-Xlist
+
+ Make sure that took care of everything, and if it didn't, make sure
+ to update FREEBSD-Xlist so you won't miss it the next time. A good
+ way to do this is to run a test import and see if any new files
+ show up:
+
+ $ cvs -q -n import src/contrib/bind9 ISC x | grep \^N
+
+4) Import the sources:
+
+ $ cvs import -m "Vendor import of BIND 9.X.Y" \
+ src/contrib/bind9 ISC BIND_9_X_Y
+
+5) Resolve conflicts.
+
+ As of 2 June 2007, we have no local patches against BIND 9; thus
+ there are no conflicts to merge. This may change at a later date.
+
+5a) Remove any files that are no longer in the tarball from the vendor branch.
+
+6) Remove any references to the {bin,lib}/tests and docutil
+ directories from the configure and Makefile templates:
+
+ $ sed -i.orig -e '/\/tests/d; /docutil/d; /\/xsl/d;' \
+ configure.in Makefile.in */Makefile.in
+
+ Please do not commit this change, as it would unnecessarily take
+ files off the vendor branch. You only need this to generate
+ config.h.
+
+7) Generate and run configure:
+
+ $ aclocal
+ $ autoheader
+ $ autoconf
+ $ ./configure --prefix=/usr \
+ --infodir=/usr/share/info --mandir=/usr/share/man \
+ --enable-threads --enable-libbind --disable-ipv6 \
+ --enable-getifaddrs --disable-linux-caps \
+ --with-openssl=/usr --with-randomdev=/dev/random
+
+ Note that we intentionally disable IPv6 support on the configure
+ command line; src/lib/bind/config.mk will re-enable it at compile
+ time if WITHOUT_INET6 is not defined.
+
+8) Copy the following generated files to src/lib/bind and commit them:
+
+ Path in src/contrib/bind9 Path in src/lib/bind
+ ------------------------------------------------------------
+ s=/usr/src/lib/bind
+ cp config.h ${s}/config.h
+ cp lib/bind/config.h ${s}/bind/config.h
+ cp lib/bind/port_after.h ${s}/bind/port_after.h
+ cp lib/bind/port_before.h ${s}/bind/port_before.h
+ cp lib/isc/include/isc/platform.h ${s}/isc/isc/platform.h
+ cp lib/lwres/include/lwres/netdb.h ${s}/lwres/lwres/netdb.h
+ cp lib/lwres/include/lwres/platform.h ${s}/lwres/lwres/platform.h
+
+ Do not commit any other file that was modified or created in
+ steps 6) or 7).
+
+9) cd src/lib/bind/dns && make -DMAINTAINER_MODE generate && rm gen
+ Commit the new versions of the files generated.
+
+ The following directories contain Makefiles for bits and pieces of
+ BIND 9:
+
+ FreeBSD directory ISC directory
+ ========================================================
+ src/lib/bind bind9/lib
+ src/lib/bind/bind bind9/lib/bind
+ src/lib/bind/bind9 bind9/lib/bind9
+ src/lib/bind/dns bind9/lib/dns
+ src/lib/bind/isc bind9/lib/isc
+ src/lib/bind/isccc bind9/lib/isccc
+ src/lib/bind/isccfg bind9/lib/isccfg
+ src/lib/bind/lwres bind9/lib/lwres
+ src/share/doc/bind9 bind9/doc/{arm,misc}
+ src/usr.bin/dig bind9/bin/dig
+ src/usr.bin/host bind9/bin/dig
+ src/usr.bin/nslookup bind9/bin/dig
+ src/usr.bin/nsupdate bind9/bin/nsupdate
+ src/usr.sbin/dnssec-keygen bind9/bin/dnssec
+ src/usr.sbin/dnssec-signzone bind9/bin/dnssec
+ src/usr.sbin/named bind9/bin/named
+ src/usr.sbin/named-checkconf bind9/bin/check
+ src/usr.sbin/named-checkzone bind9/bin/check
+ src/usr.sbin/rndc bind9/bin/rndc
+ src/usr.sbin/rndc-confgen bind9/bin/rndc
+
+ Make sure that the lists of sources, headers and man pages in each
+ FreeBSD Makefile accurately reflects those in the corresponding ISC
+ Makefile. Please strive to keep those lists in the same order and
+ with line breaks in the same places to ease future comparisons.
+
+A) Build and test.
+
+B) Lather, rinse, repeat.
+
+C) Commit when everything builds cleanly and works properly.
+
+ -- des@FreeBSD.org
+ -- dougb@FreeBSD.org
+
+$FreeBSD$
OpenPOWER on IntegriCloud