summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDoug Barton <dougb@FreeBSD.org>2008-07-12 08:52:11 +0000
committerDoug Barton <dougb@FreeBSD.org>2008-07-12 08:52:11 +0000
commit82b3dc06d3dc3c698029580e543f22bad8d5f17b (patch)
treeeb65ad046618fab12b4a537d0d3cb613f80345a1
parent2c9d19ec6fc69356dc6c2cf65ba1e3ff662bf8be (diff)
downloadsrc-test2-82b3dc06d3dc3c698029580e543f22bad8d5f17b.tar.gz
src-test2-82b3dc06d3dc3c698029580e543f22bad8d5f17b.zip
Notes
-rw-r--r--FREEBSD-Upgrade61
1 files changed, 36 insertions, 25 deletions
diff --git a/FREEBSD-Upgrade b/FREEBSD-Upgrade
index 75efb09f1e62..7da86ec45ec1 100644
--- a/FREEBSD-Upgrade
+++ b/FREEBSD-Upgrade
@@ -1,49 +1,60 @@
-
FreeBSD maintainer's guide to updating BIND 9
=============================================
1) Obtain the latest source distribution from the ISC's FTP server
(ftp://ftp.isc.org/isc/bind9/)
-2) Unpack the tarball in a suitable directory, and cd into the new
- source directory.
+2) Check out the head of the subversion "vendor branch"
+
+ svn co $REPO/vendor/bind9/dist
+
+3) Unpack the tarball in a suitable directory:
+
+ tar zxvf bind-9.<x.y>.tar.gz -X dist/FREEBSD-Xlist
+
+4) Copy new files over the old ones:
-3) Remove unwanted files and directories:
+ cp -Rp bind-9.<x.y>/* dist/
- $ while read pattern ; do rm -rf $pattern ; done \
- </usr/src/contrib/bind9/FREEBSD-Xlist
+5) Check to see if any files have been added or deleted using 'svn status'
+ and 'diff -ur bind-9.<x.y> dist -x \.svn | grep 'Only in'
- 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:
+6) Use 'svn add' and 'svn rm' to bring dist up to date for files found above.
+ Update FREEBSD-Xlist as needed.
+ The files in vendor/bind9/dist should now look exactly like those in the
+ ISC sources, minus the files/directories in FREEBSD-Xlist above.
+ Carefully check the output of 'svn status' and 'svn diff'
+ It's not if you're paranoid, it's if you are paranoid enough
- $ cvs -q -n import src/contrib/bind9 ISC x | grep \^N
+7) Commit the update to the vendor files:
-4) Import the sources:
+ cd dist ; svn ci -m "Vendor import of BIND 9.X.Y"
+ svn cp $REPO/vendor/bind9/dist $REPO/vendor/bind9/${version}
+ (this is a server-side operation, you dont have to check it out)
- $ cvs import -m "Vendor import of BIND 9.X.Y" \
- src/contrib/bind9 ISC BIND_9_X_Y
+8) Update the files in src/contrib/bind9:
-5) Resolve conflicts.
+ cd head/contrib/bind9
- 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.
+ Make sure you are up to date:
+ svn update ; svn status
-5a) Remove any files that are no longer in the tarball from the vendor branch.
+ svn merge $REPO/vendor/bind9/dist .
+ Resolve conflicts (if any)
+ Carefully check the output of 'svn status' and 'svn diff'
+ Test build the updated files with a clean /usr/obj and empty src.conf
+ Commit
-6) Remove any references to the {bin,lib}/tests and docutil
+9) 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.
+ Please do not commit this change. You only need this to generate config.h.
-7) Generate and run configure:
+10) Generate and run configure:
$ aclocal
$ autoheader
@@ -58,7 +69,7 @@
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:
+11) Copy the following generated files to src/lib/bind and commit them:
Path in src/contrib/bind9 Path in src/lib/bind
------------------------------------------------------------
@@ -74,7 +85,7 @@
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
+12) 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