7.x (rh7), RedHat 8.0 (rh8), RedHat 9 (rh9), Fedora Core (fc1), Whitebox
Enterprise Linux (RHEL) 3.0 (wb3), Mandrake 10.x (mdk) and SuSE 9.x (su9).
The package build is controlled by a mandatory define set at the beginning of
-the file. These defines basically just control the dependancy information that
+the file. These defines basically just control the dependency information that
gets coded into the finished rpm package.
The platform define may be edited in the spec file directly (by default all
-defines are set to 0 or ``not set''). For example, to build the RedHat 7.x
+defines are set to 0 or "not set"). For example, to build the RedHat 7.x
package find the line in the spec file which reads
\footnotesize
a regular user but you must make a few changes on your system to do this. If
you are building on your own system then the simplest method is to add write
permissions for all to the build directory (/usr/src/redhat/). To accomplish
-this execute the following command as root:
+this, execute the following command as root:
\footnotesize
\begin{verbatim}
\normalsize
If you are working on a shared system where you can not use the method above
-then you need to recreate the /usr/src/redhat directory tree with all of it's
+then you need to recreate the /usr/src/redhat directory tree with all of its
subdirectories inside your home directory. Then create a file named {\tt
.rpmmacros} in your home directory (or edit the file if it already exists)
and add the following line:
\item
\label{faq5}
{\bf I'm building my own rpms but on all platforms and compiles I get an
-unresolved dependancy for something called /usr/afsws/bin/pagsh.}
+unresolved dependency for something called /usr/afsws/bin/pagsh.}
This is a shell from the OpenAFS (Andrew File System). If you are seeing this
then you chose to include the docs/examples directory in your package. One of
the example scripts in this directory is a pagsh script. Rpmbuild, when
-scanning for dependancies, looks at the shebang line of all packaged scripts
+scanning for dependencies, looks at the shebang line of all packaged scripts
in addition to checking shared libraries. To avoid this do not package the
examples directory.
\end{enumerate}
+
+\item {\bf Support for RHEL4, CentOS 4 and x86_64}
+The examples below
+explicit build support for RHEL4 (I think) and CentOS 4. Build support
+for x86_64 has also been added. Test builds have been done on CentOS but
+not RHEL4.
+
+\footnotesize
+\begin{verbatim}
+Build with one of these 3 commands:
+
+rpmbuild --rebuild \
+ --define "build_rhel4 1" \
+ --define "build_sqlite 1" \
+ bacula-1.36.2-4.src.rpm
+
+rpmbuild --rebuild \
+ --define "build_rhel4 1" \
+ --define "build_postgresql 1" \
+ bacula-1.36.2-4.src.rpm
+
+rpmbuild --rebuild \
+ --define "build_rhel4 1" \
+ --define "build_mysql 1" \
+ --define "build_mysql4 1" \
+ bacula-1.36.2-4.src.rpm
+
+For CentOS substitute '--define "build_centos4 1"' in place of rhel4.
+
+For 64 bit support add '--define "build_x86_64 1"'
+\end{verbatim}
+\normalsize
+
+\subsection*{Build Options}
+\index[general]{Build Options}
+\addcontentsline{toc}{subsection}{Build Options}
+The spec file currently supports building on the following platforms:
+\footnotesize
+\begin{verbatim}
+# RedHat builds
+--define "build_rh8 1"
+--define "build_rh9 1"
+
+# Fedora Core build
+--define "build_fc1 1"
+--define "build_fc3 1"
+
+# Whitebox Enterprise build
+--define "build_wb3 1"
+
+# RedHat Enterprise builds
+--define "build_rhel3 1"
+--define "build_rhel4 1"
+
+# CentOS build
+--define "build_centos4 1"
+
+# SuSE build
+--define "build_su9 1"
+
+# Mandrake build
+--define "build_mdk 1"
+
+MySQL support:
+
+--define "build_mysql 1"
+# if using mysql 4.x define this and mysql above
+# currently: Mandrake 10.x, SuSE 9.x, RHEL4
+--define "build_mysql4 1"
+
+PostgreSQL support:
+--define "build_postgresql 1"
+
+Sqlite support:
+--define "build_sqlite 1"
+
+\end{verbatim}
+\normalsize
+
+