.PP
.SH DESCRIPTION
.PP
-The Autodist is a source distribution management system that allows
-powerful mechanisms to define what is included in and excluded from a
-distribution, and what license the distribution is released under. It is
-also used to create the actual distribution source packages. Autodist
-allows distribution management in file, directory and file content level.
-Different distributions may include different portions of files, for
-example, excluding certain features from certain distributions. It is
-always guaranteed that anything not defined for the distribution, is
-removed automatically (files, file content, directories), thus ensuring
+The Autodist is a source distribution management system that allows
+powerful mechanisms to define what is included in and excluded from a
+distribution, and what license the distribution is released under. It is
+also used to create the actual distribution source packages. Autodist
+allows distribution management in file, directory and file content level.
+Different distributions may include different portions of files, for
+example, excluding certain features from certain distributions. It is
+always guaranteed that anything not defined for the distribution, is
+removed automatically (files, file content, directories), thus ensuring
that nothing is accidentally included in the distribution.
.PP
-Autodist is closely related to the Autoconf and Automake tools, and
-complements the features Autoconf and Automake provides. It is especially
-targeted into circumstances where multiple distributions are created from
-one source tree. The Autoconf and Automake environment is mainly designed
-for one application per one source tree situations. Autodist provides
-mechanisms to create all kinds of distributions that can be created from
-one source tree. To be able to use Autodist, the Autoconf and Automake
+Autodist is closely related to the Autoconf and Automake tools, and
+complements the features Autoconf and Automake provides. It is especially
+targeted into circumstances where multiple distributions are created from
+one source tree. The Autoconf and Automake environment is mainly designed
+for one application per one source tree situations. Autodist provides
+mechanisms to create all kinds of distributions that can be created from
+one source tree. To be able to use Autodist, the Autoconf and Automake
must be installed into the system.
.PP
.SH OPTIONS
.PP
.TP
\fB\-p\fR, \fB\-\-process\fR \fB<type>\fR \fB<src>\fR \fB<dst>\fR
-Process file <src> into <dst> for distribution, <type> is 'makefile',
-'configure', 'non-source' or 'source' and defines the type of <src>.
+Process file <src> into <dst> for distribution, <type> is 'makefile', 'configure', 'non-source' or 'source' and defines the type of <src>.
.PP
.TP
\fB\-m\fR, \fB\-\-makedist\fR
Copyright \(co 2005 Pekka Riikonen, SILC Project
.br
This is free software; see the source for copying conditions. There is NO
-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
.SH "SEE ALSO"
.BR autoconf (1),
ending with '.ad' suffix will also be processed. The processed file will
have the '.ad' suffix removed (@pxref{Preparing source tree, , , , }).
Autodist also creates and packages the distribution using common GNU
-distribution creation process, specificly `make dist'. Autodist, however,
+distribution creation process, specifically `make dist'. Autodist, however,
controls this process and during packaging phase the Autodist processes
all files in the distribution (other than '*.ad' files, which has already
been processed earlier by Autodist). The resulted package is a processed
are removed. The distdefs are respected in source files by the
preprocessor.
-Autodist is not a binary packaging system. It is specificly used to
+Autodist is not a binary packaging system. It is specifically used to
create source distributions. A binary packaging system, however can be
hooked to the distribution creation process, if needed.
distribution creation. The Autodist attempts to provide a tool that any
size software project can effectively use to manage their distributions.
-Without a tool like Autodist, large software projects usually has to be
+Without a tool like Autodist, large software projects usually have to be
split into separate source trees, which may not always be possible because
they may share large portions of common code (which may further make
concurrent development of the applications hard), or multiple Autoconf and
In this example, if the text in the current header file is found in any
file in the distribution it will be replaced with the new header file.
-Notice that, both header files has same amount of lines (8 lines).
+Notice that, both header files have same amount of lines (8 lines).
Note that, the current header must match exactly the header used in
files. Otherwise the replacement will not be complete.
from these distributions are now also part this distribution.
The distribution that is being prepared or packaged take precedence when
-defining distdefs that were specificly undefined in the inherited
-distribution. This means that if the inherited distribution specificly
+defining distdefs that were specifically undefined in the inherited
+distribution. This means that if the inherited distribution specifically
undefines a distdefs but the inheriting distribution (one being prepared
-or packaged) specificly defines it, the distdef will be defined.
+or packaged) specifically defines it, the distdef will be defined.
Similarly, if the inherited distribution defines a distdef but the
inheriting distribution undefines it, the distdef will be undefined.
Note that, this precedence works only in the top distribution (the one
being prepared or packaged). If the inherited distribution inherits other
-distributions, all distdefs (defined and specificly undefined) will be
+distributions, all distdefs (defined and specifically undefined) will be
inherited as is. This means that if one inherited distribution defines a
distdef that other inherited distribution distdef undefines, it will be
undefined. However, the top distribution can then override them if
@section Directive: noprocess <filename> [...]
-The 'noprocess' directive can be used to tell Autodist specificly not to
+The 'noprocess' directive can be used to tell Autodist specifically not to
process files or directories. The Autodist will not process the files
during distribution packaging. This directive is optional. One or more
files can be specified in the 'noprocess' directive. Zero or more
client \
@end example
-The lines defined specificly for the SILC_DIST_TOOLKIT, which in our
-example was not defined, were removed. Also lines that specificly
+The lines defined specifically for the SILC_DIST_TOOLKIT, which in our
+example was not defined, were removed. Also lines that specifically
expected certain distdefs not to be defined ('#ifndef') were removed.
(Note the last remaining '\' in example above would be removed by the
Autodist automatically to avoid errors with Automake.)
'./configure' and continue to compile with 'make'.
If you do not wish to use the 'default' distribution, or you wish
-to do the development in a tree specificly prepared for some specific
+to do the development in a tree specifically prepared for some specific
distribution, or you are preparing to create a new distribution package,
you will need to run the Autodist with the distribution you wish to
prepare.
your sources the preprocessor, however, will respect your distdef
conditionals inside your source files if you '#include' the distdef header
file. This way, even the compiled binaries will be compiled for that
-distribution, even though the source files has not yet been processed
+distribution, even though the source files have not yet been processed
by the Autodist. Rest of the files in the distribution will be processed
when you create the actual distribution package. It is guaranteed that
the distribution you have prepared will behave in your source tree exactly
This will prepare your source tree for configuration and compilation. Since
the 'default' distribution inherits all distributions your development
source tree will have all of them included. If you do not want to do this
-then don't inherit them in the 'default', but run the autodist specificly
+then don't inherit them in the 'default', but run the autodist specifically
for the distributions, for example:
@example
Since all the distributions inherit the 'common' distribution they get
all the distdefs that the 'common' defines. In this example various distdefs
-has been defined. You would use them in your code and in your makefiles
+have been defined. You would use them in your code and in your makefiles
to control various things. For example, let's say the 'common' distdefs
control what directories distributions have. An example 'Makefile.ad'
file:
@example
autodist libfoozbar 1.0.5
makedist
+@end example
Nomad has also an RPM .spec file that you have written and a pre-dist-hook
that will replace the RPM release version with sed tool with the one you
give as extra parameter to autodist:
+@example
autodist nomad 2.0 0.fc7
makedist
@end example