- perl, v5.6 or better
- make
- compiler
--- must be capable of building kernel modules for the target)
--- if using gcc, version 4.2 or better is recommended
+ * must be capable of building kernel modules for the target
+ * if using gcc, version 4.2 or better is recommended
- assembler (as)
- linker
- ranlib
> Note for RHEL users: RedHat Enterprise Linux 5.5 and less shipped with a
> version of autoconf too old to generate the OpenAFS configure script.
> Fortunately, the recently released RHEL 6.0 shipped with a more up to date
-> version of autoconf which mets the minimum version needed to generate th
+> version of autoconf which mets the minimum version needed to generate the
+> configure script.
The following development libraries are used to build OpenAFS:
Compressed tar files of the source tree are made available for each stable and
development release. The most recent release is located at
-http://openafs.org/release/latest.html. Archives for releases are located at
-/afs/openafs.org/software/openafs/ and http://dl.openafs.org/dl. For example,
+<http://openafs.org/release/latest.html>. Archives for releases are located at
+/afs/openafs.org/software/openafs/ and <http://dl.openafs.org/dl>. For example,
to download and uncompress version 1.4.14,
$ wget http://dl.openafs.org/dl/1.4.14/openafs-1.4.14-src.tar.bz2
### Kerberos 5 configuration
-Recent configure scripts will automatically find the location of the
-krb5-config script to configure kerberos. If you need to build an
-older version, use the --with-krb5-conf option.
+The 1.6.0 configure scripts should automatically find the kerberos 5
+libraries and headers.
+
+If you need to build 1.4.x, or if the krb5-config file is in a non-standard
+location, use the --with-krb5-conf option to specify the path to the krb5-config
+utility (part of the kerberos 5 development package).
+
+ --with-krb5-conf=/usr/bin/krb5-config
+
### Debugging Options
and safely used by a ptserver built
without this option.
+### Configure changes in 1.6.0
+
+If you have been building the 1.5.0 freatures branch, note the following configure
+options have been removed in 1.6.0. Each feature is now always on, except as noted:
+
+* --disable-afsdb
+* --disable-largefile-fileserver
+* --enable-bos-restricted
+* --enable-fast-restart (off, but the code is still there)
+* --disable-full-vos-listvol
+* --enable-disconnected
+* --enable-icmp-pmtu-discovery
+* --enable-demand-attach-fs (see below)
+
+In 1.5.x, the demand attach fileserver feature was enabld by the a configure
+switch. Starting in 1.6.0, both DAFS and legacy binaries are built. The
+DAFS binaries are prefixed with 'da', expect for the new salvageserver, since
+salvageserver is new with DAFS.
+
+
## Make
After a successful configure, run make to build OpenAFS. The
$ sudo cp -p -r lib /usr/afsws
$ sudo cp -p -r include /usr/afsws
-See Storing AFS Binaries in AFS
-http://docs.openafs.org/QuickStartUnix/ch02s29.html for instructions on
+See [Storing AFS Binaries in AFS](http://docs.openafs.org/QuickStartUnix/ch02s29.html) for instructions on
how to store the workstation binaries in AFS.
## Post build
- make tests - make the (old) afs test suite
-### Building RPM packages
+## Building RPM packages
+
+A script is provided to build RPM packages. This script will run the
+configure and make as part of the process. You'll need to get source
+and document tar archives of the version you want to build, and then
+use a script to build the source RPM, then use the rpmbuild tool to
+build the packages from that source RPM.
To build OpenAFS RPM packages, use the OpenAFS makesrpm.pl script to build a
source RPM, and then use the rpm tool rpmbuild to build the various packages.
$ tar cjf openafs-<version>-src.tar.bz2 openafs-<version> --exclude .git --exclude doc
$ tar cjf openafs-<version>-doc.tar.bz2 openafs-<version>/doc
-where <version> is the dotted OpenAFS version number, such as 1.6.0,
-and <tagname> is the git tag for the version, such as openafs-stable-1_6_0.
+where _version_ is the dotted OpenAFS version number, such as 1.6.0,
+and _tagname_ is the git tag for the version, such as openafs-stable-1_6_0.
Next run makesrpm.pl to build the source RPM, and then use rpmbuild to
build the binaries and packages. The resulting packages will be located
-in the $HOME/rpmbuild/RPMS/<arch> directory.
+in the $HOME/rpmbuild/RPMS/_arch_ directory.
$ openafs-<version>/src/packaging/RedHat/makesrpm.pl openafs-<version>-src.tar.bz2 openafs-<version>-doc.tar.bz2
$ rpmbuild --rebuild openafs-<version>-1.0.src.rpm