diff options
author | Pádraig Brady <P@draigBrady.com> | 2009-07-02 09:51:34 +0100 |
---|---|---|
committer | Pádraig Brady <P@draigBrady.com> | 2009-07-03 16:47:17 +0100 |
commit | 3e565eb3a6a6d8992489195f5c0fd84d4246b800 (patch) | |
tree | dad8e83a156cfa0d8f59c6ef2d5651877aeb18c5 | |
parent | 6d0d1c47b28ea4989a6608e9f7d51218ee0c89ef (diff) | |
download | coreutils-3e565eb3a6a6d8992489195f5c0fd84d4246b800.tar.xz |
maint: generalize the development prerequisites docs
* README-hacking: Add a little more high level info and
merge notes on specific developer prerequisites into README-prereq
* README-prereq: Remove the Fedora 8 specific information
and generalize the information to be applicable to any system.
-rw-r--r-- | README-hacking | 28 | ||||
-rw-r--r-- | README-prereq | 92 |
2 files changed, 61 insertions, 59 deletions
diff --git a/README-hacking b/README-hacking index 555128f31..b72e54c82 100644 --- a/README-hacking +++ b/README-hacking @@ -9,33 +9,15 @@ See also HACKING for more detailed coreutils contribution guidelines. We've opted to keep only the highest-level sources in the GIT repository. This eases our maintenance burden, (fewer merges etc.), but imposes more requirements on anyone wishing to build from the just-checked-out sources. -Specific tools and versions will be checked for and listed by the -bootstrap script shown below, and will include: - -- Automake <http://www.gnu.org/software/automake/> -- Autoconf <http://www.gnu.org/software/autoconf/> -- Bison <http://www.gnu.org/software/bison/> -- Gettext <http://www.gnu.org/software/gettext/> -- Git <http://git.or.cz/> -- Gperf <http://www.gnu.org/software/gperf/> -- Gzip <http://www.gnu.org/software/gzip/> -- Perl <http://www.cpan.org/> -- Rsync <http://samba.anu.edu.au/rsync/> -- Tar <http://www.gnu.org/software/tar/> - -- Valgrind +Note the requirements to build the released archive are much less and +are just the requirements of the standard ./configure && make procedure. +Specific development tools and versions will be checked for and listed by +the bootstrap script. See README-prereq for specific notes on obtaining +these prerequisite tools. Valgrind <http://valgrind.org/> is also highly recommended, if Valgrind supports your architecture. See also README-valgrind. -- XZ utils (successor to LZMA) - -This package's build procedure uses XZ to create a compressed -distribution tarball. Using this feature of Automake requires -version 1.10a or newer, as well as the xz program itself. -Make sure you have the latest version of the XZ Utils from -<http://tukaani.org/xz/> - While building from a just-cloned source tree may require installing a few prerequisites, later, a plain `git pull && make' should be sufficient. diff --git a/README-prereq b/README-prereq index f0504109c..686160ae5 100644 --- a/README-prereq +++ b/README-prereq @@ -1,36 +1,56 @@ -Detailed below are concrete examples for -getting the prerequisites for particular systems. - -- GNU/Linux - fedora - - This shows the steps for getting the tools required to build coreutils - on a Fedora 8 system. We try to use official packages where possible. - The three methods described for making these required packages available - should help clarify build requirements on GNU/Linux systems. - - 1. Make sure the official distro git package is installed: - # yum install git - - 2. The distro autoconf is too old, but there is a newer one available - so we rebuild that and make it available to the full system: - # yum install emacs #autoconf build requires emacs (20MB) - # rpmbuild --rebuild http://download.fedora.redhat.com/pub/fedora/linux/development/source/SRPMS/autoconf-2.63-1.fc10.src.rpm - # rpm -Uvh /usr/src/redhat/RPMS/noarch/autoconf-2.63-1.fc8.noarch.rpm - Note Autoconf 2.62 or newer is needed to build automake-1.11 in step 3. - Apply the same method to build and install "xz". - - 3. The latest stable automake (1.10.1) was not new enough, so we download - and build automake-1.11 or newer from its repository and make it available - just to coreutils: - # yum install help2man #required to build automake fully - $ git clone git://git.sv.gnu.org/automake.git - $ cd automake - $ git checkout -b branch-1.11 --track origin/branch-1.11 - $ ./bootstrap - $ ./configure --prefix=$HOME/coreutils/deps - $ make install - - Now we can build coreutils as described in README-hacking - as long as $PATH starts with $HOME/coreutils/deps/bin, which - one can set for the current shell like: - $ export PATH=$HOME/coreutils/deps/bin:$PATH +This gives some notes on obtaining the tools required for development. +I.E. the tools checked for by the bootstrap script and include: + +- Autoconf <http://www.gnu.org/software/autoconf/> +- Automake <http://www.gnu.org/software/automake/> +- Bison <http://www.gnu.org/software/bison/> +- Gettext <http://www.gnu.org/software/gettext/> +- Git <http://git.or.cz/> +- Gperf <http://www.gnu.org/software/gperf/> +- Gzip <http://www.gnu.org/software/gzip/> +- Perl <http://www.cpan.org/> +- Rsync <http://samba.anu.edu.au/rsync/> +- Tar <http://www.gnu.org/software/tar/> +- Texinfo <http://www.gnu.org/software/texinfo/> + +Note please try to install/build official packages for your system. +If these are not available then one can make them available only to +the coreutils build using the following instructions. Even if the +official packages for your system are too old, please install them +as they may be required to build the newer versions. + +* autoconf * + + # Note Autoconf 2.62 or newer is needed to build automake-1.11 + git clone --depth=1 git://git.sv.gnu.org/autoconf.git + git checkout v2.62 + autoreconf -vi + ./configure --prefix=$HOME/coreutils/deps + make install + +* automake * + + # Note help2man is required to build automake fully + git clone git://git.sv.gnu.org/automake.git + cd automake + git checkout -b branch-1.11 --track origin/branch-1.11 + ./bootstrap + ./configure --prefix=$HOME/coreutils/deps + make install + +coreutils uses XZ utils (successor to LZMA) to create +a compressed distribution tarball. Using this feature of Automake +requires version 1.10a or newer, as well as the xz program itself. + +* xz * + + git clone git://ctrl.tukaani.org/xz.git + cd xz + ./autogen.sh + ./configure --prefix=$HOME/coreutils/deps + make install + +Now we can build coreutils as described in README-hacking +as long as $PATH starts with $HOME/coreutils/deps/bin, which +one can set for the current shell like: + $ export PATH=$HOME/coreutils/deps/bin:$PATH |