About
=====

This is the Dropline Build System, and is a set of scripts and
patches used to build Dropline GNOME.  It can easily be extended
for use with other packages.

Usage
=====

First you will *definitely* want to review the "config" file in the
root of this archive, as it contains a number of variables that you
might need to set pertaining to the architecture and so forth that
you are trying to build binaries for.

To compile a package, run the 'build' command in the root of the
Dropline Build System with the name of the package to compile as
the sole parameter.  For example, to build PAM, type 
'./build pam'.

It's possible to concatenate more than on package in a "meta"
package, to do so create a list (see the template for syntax)
of names then use './build -meta <name>'.
This will build and install/upgrade all of the packages in the given
order.

Layout
======

SCRIPTS: Each subdirectory is the name of a package.  Inside these
subdirectories is, at minimum, a 'build' and 'desc' file which contain
the information to build the particular package, as well as a short 
description of it.  Other files related to how a package is compiled
are also placed here.

   There are a number of significant files in the SCRIPTS directory:

   dropline-build.sh: The main build script.

   dropline-header: The settings that are valid for all packages, such as
   the default architecture and the packager string.

   dropline-postpkg: To be written by the user, contains command that
   are runned after the building of the slackware package.

   A package's scripts dir can contain other files that regulates the
   build process of that particular package, other that the previously
   mentioned "build" and "desc" file it's also possible to use:

   build.user: User's build file that will be used, if present,
   instead of the standard "build".

   doinst: This will override the default /install/doinst.sh in the
   final Slackware package.

   pre: This file will be run after the tarball has been decompressed
   and all patches have been applied, right before running the package
   configure script.

   post: This will be run after the building of the source archive and
   right before of the installation.

   fix: This will be run after the installation have taken place.

   In the "template" subdirectory there are useful examples of these
   files.

SOURCES: Each subdirectory is the name of a package, inside of which
exist the virgin source tarballs and, optionally, any patches which are
applied to the given package during compilation.

METAS: Each of the file in this directory contains a list of packages
to be built and installed/upgraded in the given order.

There are also some temporary directories which are created at build time
in /tmp/DLG:

BUILD: The source archive of the package (tarball) is decompressed, 
configured and built in this temporary directory.

STAGING: This is the temporary installation location where packages are
installed and refined before 'makepkg' is run to turn the collection of
software into a Slackware-formatted binary package.

PACKAGES: Successfully compiled packages are placed in this directory.

