mirror of the now-defunct rocklinux.org
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

397 lines
14 KiB

# --- ROCK-COPYRIGHT-NOTE-BEGIN ---
#
# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
# Please add additional copyright information _after_ the line containing
# the ROCK-COPYRIGHT-NOTE-END tag. Otherwise it might get removed by
# the ./scripts/Create-CopyPatch script. Do not edit this copyright text!
#
# ROCK Linux: rock-src/scripts/config.hlp
# ROCK Linux is Copyright (C) 1998 - 2006 Clifford Wolf
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version. A copy of the GNU General Public
# License can be found at Documentation/COPYING.
#
# Many people helped and are helping developing ROCK Linux. Please
# have a look at http://www.rocklinux.org/ and the Documentation/TEAM
# file for details.
#
# --- ROCK-COPYRIGHT-NOTE-END ---
COMMENT_ARCHCPUOPT
In this section you are able to select the architecture, the CPU and
whether you are cross-building/porting to another architecture.
COMMENT_TARGET
In this section you can select which distribution target you would like
to use.
COMMENT_BUILD_SYS_CONF
Here you can set some basic options for our beautiful distribution
build system.
ROCKCFG_ARCH
This option controls the target architecture like alpha, ia64, mips,
ppc, sparc or x86.
ROCKCFG_CROSSBUILD
This option needs to be selected to perform a cross-build to another
architecture.
ROCKCFG_CROSS_TESTALL
If enabled, try to cross-build packages which are not known to support
cross-compilation.
USE WITH CARE: cross-building packages which don't support cross-compilation
might overwrite files on your real root filesystem, rendering your system
unusable!
ROCKCFG_PSEUDONATIVE
Many packages cannot be cross-build, but building them natively might
considerably slow down the build process (e.g. on old hardware).
Pseudo-native builds combine the advantages of cross-builds (fast hardware)
and native builds (being able to execute compiled programs): like in
cross-builds, most of the build is done on a non-native machine; programs
that require native execution, however, are transparently run on another,
native machine.
ROCKCFG_PSEUDONATIVE_NATIVEHOST
The IP adress of the native host for pseudo-native builds.
ROCKCFG_PSEUDONATIVE_NFSROOT
The NFS root to be mounted on the native host for pseudo-native builds.
ROCKCFG_DISABLE_BROKEN
If you select this option packages that have not built in the last
referency build will not be built.
ROCKCFG_TARGET
Please select the Target you want to build. Here's a short overview:
- Boot-, Install- and Rescue-System:
The boot-system. You need this if you want to install the system
you built with CD or floppy-disk.
- Desktop ROCK Linux:
Intended for use on workstations / desktops.
- Diet LibC based ROCK Linux:
A distribution using Diet LibC instead of GLibC. DietLibC is
a light-weight C-Library useful for embedded systems and other
low-memory devices.
- Epiam ROCK Linux:
A distribution specially for VIA Epiam processors.
- Generic ROCK Linux:
A generic, all-purpose distribution that has simply everything.
- ROCK Linux LiveCD:
A system that can boot and run directly from CD without the need
to install anything on a hard disk.
- ROCK Linux Video Player (lvp):
A distribution that works as a video player and boots from CD.
- Minimal ROCK Linux:
A basic system that has only minimally more than a LFS.
- Reference-Build for creating *.cache files:
This target is for internal use only. It's purpose is to create
package/*/*/*.cache files which are used to validate a package
and consolidate its various information.
- ROCK Router Linux:
This is a _very_ minimal system with only routing-capabilities.
- ROCK Linux Server:
This target is intended to build a not blown up server distribution
to install web-, mail-, fileserver or similar.
ROCKCFG_LINGUAS
Here you can choose the languages for which message translation
catalogs should be installed.
Note that not all programs provide translations for each language.
If set to 'all', all available translations will be installed, and
none if set to 'none'.
ROCKCFG_PARALLEL
Select this option if you want to perform a parallel build on several
machines or if you build on a multiprocessor machine.
See Documentation/BUILD-CLUSTER for more details.
ROCKCFG_PARALLEL_MAX
This options controls the maximum number of simultaneous build jobs.
ROCKCFG_PARALLEL_ADDJOB
If you're using an external command scheduler, enter it here.
See Documentation/BUILD-CLUSTER for more details.
ROCKCFG_ABORT_ON_ERROR
If selected the build will stop on each package build error.
ROCKCFG_RETRY_BROKEN
This options controls whether the Build-System should try to build a
package that has not built flawlessly during the last build.
ROCKCFG_DISABLE_BROKEN
Please check here if you want to skip building packages which are marked
as broken. Note that this differs from ROCKCFG_RETRY_BROKEN. The reason
a package is deemed 'broken' can also be missing *.cache file or others.
ROCKCFG_NOBROKENDEPS
Do not try building packages if any of their build-time dependencies failed.
ROCKCFG_ALWAYS_CLEAN
When a package built flawlessly then the temporary directory which was
used for building is deleted. Select this options if you also want this
cleanup for packages with build error. (This safes disk-space but makes
debugging hard ...)
ROCKCFG_XTRACE
Please check here if you want additional (debug)-output in the build
log-files.
ROCKCFG_SRC_TMPFS
Check here if you want package builds to use tmpfs instead of the regular
filesystem on which ROCK resides.
ROCKCFG_SRC_TMPFS_OPT
Please enter the tmpfs mount options here. For example:
size=800M,nr_inodes=100k
will mount an 800 Megabyte tmp-filesystem with 100,000 inodes.
size=4G,nr_inodes=500k
will mount a 4 Gigabyte tmp-filesystem with 500,000 inodes.
Please make sure that the filesystem is big enough to hold
- package-sources (unpacked)
- compile-time binaries
- and the binary package
The filesystem size also must not be so big as to hog all your RAM or
else your system might crash or start swapping.
ROCKCFG_SRC_TMPFS_LOG
Please enter the path to the tmpfs logfile.
ROCKCFG_SENDMAIL
If enabled, Build-Target will send emails when special events happen,
currently on failed package builds and on completed target builds.
ROCKCFG_SENDMAIL_BIN
The program used by the build scripts for sending email notifications.
ROCKCFG_SENDMAIL_TO
Email notifications about build events will be sent to this email address.
ROCKCFG_MYTHTVOSD
Use a Myth TV on-screen display for certain output of the build scripts.
ROCKCFG_OUTPUT_HTML
Write the output of the build scripts to HTML files.
ROCKCFG_OUTPUT_HTML_DIR
The directory which build output should be written to.
ROCKCFG_OUTPUT_TTS
Use a text-to-speech system for certain output of the build scripts.
ROCKCFG_OUTPUT_TERM_COLOR
Use ANSI colors for output to a terminal.
ROCKCFG_VERBOSE
If enabled, all output during builds is not only written to the respective
build log but also displayed on the console.
ROCKCFG_EXPERT
This button will enable a lot of additional configuration options.
Some of these will make small changes to what the system will look
like while others will have a huge impact on performance, stability
and usability of the final system.
Don't touch these if you don't know what you are doing.
YOU HAVE BEEN WARNED!
ROCKCFG_CREATE_CKSUM
Disable Checksum creation. Leave this enabled unless you know why you
want to disable it.
ROCKCFG_CREATE_TARBZ2
If selected binary packages in .tar.bz2 format will be created.
ROCKCFG_CREATE_GEM
If selected binary packages in .gem format will be created.
ROCKCFG_PKGFILE_VER
If selected the package version number will be added to the binary
package filenme.
ROCKCFG_SPLIT_DOC
If enabled, each binary package is split, with one split containing
only documentation files, e.g. kdelibs.gem and kdelibs:doc.gem. This
allows to easily distribute and install package splits separately.
Altough man and info pages are documentation files as well, they are
not included in :doc splits because they are considered too important.
ROCKCFG_SPLIT_DEV
If enabled, each binary package is split, with one split containing
only files required for software development, e.g. kdelibs.gem and
kdelibs:dev.gem. This allows to easily distribute and install package
splits separately.
Files required solely for the purpose of software development include
static libraries and C header files.
ROCKCFG_PKGSEL
If selected you can modify the package list for the build.
ROCKCFG_PKGSEL_TPL
Package preselection templates are sets of package selection rules, where
each template is used for a distinct set of packages.
Package preselection templates (together with the default package
selections of each target) can be seen as starting points for creating
your own package selection (using "Custom package selection").
MENU_PKGSEL_RULES
Here you can modify the package list for the build. You have the
choice between enable, disable or complete removal. A disabled
package can still be reenabled by a target, while a removed one
can not be selected by a target.
Use "X <pattern>" to enable packages
Use "O <pattern>" to disable packages
Use "- <pattern>" to remove packages
For example:
"- gnome*"
will not build Gnome at all.
ROCKCFG_SHOW_PKGLIST
This will display the complete, current package list.
ROCKCFG_CONFOPT_FILE:0
Here you can specify additional parameters passed to every ./configure
script.
Use "--with-option" to enable a feature
Use "--without-option" to disable a feature
Use "--option[=value]" to specify a custom option
The Build-System will always check whether the configure script supports
the options before the options is really passed as argument.
COMMENT_FLIST
Please see the help for the choice menu.
ROCKCFG_FLIST
This help is taken from Rolling ROCK Issue #2 2003
The ROCK Linux build scripts auto-detect which files are created
by a package build and use this information to create the package
file list. There are three techniques which can be used to auto-detect
this file list
* flist-wrapper
The flist-wrapper is the recommended way of doing it. It's an "elf
preload library". This is a library which is loaded _before_ the
c-library and so can overwrite functions of the c library. The
flist-wrapper lib is overwriting all functions which can be used
to create files and is writing the filenames to a log file before
running the original c library function.
This log file is used to create the package file list after the
build has been completed. The problem with the flist-wrapper lib is
that it doesn't work with statically built binaries or with non
glibc c libraries. In such environments (e.g. when building a
dietlibc based system), other techniques - such as those described
below - must be used for creating the file list.
* strace
This one is rather easy: The whole build is running in a process-
tree which is monitored by strace. The log file created by strace is
later used to create the package file list. However: this does only
work on architectures which do have an strace command - which is not
the case for all architectures the Linux kernel and glibc have been
ported to.
* find
This one is rather ugly (but sometimes the only alternative): When
the build is started, a 'timestamp-file' is created. After the build
has been completed, the find program is used to find all files which
are newer than the 'timestamp-file'. This is really slow now and has
the disadvantage that nothing else than the build process may create
or modify files while the build is running. This should only be used
if no other system for creating the file list can be used.
ROCKCFG_USE_CROSSCC
This option controls whether to use a pseudo-cross compiler even
for native (non-cross) builds. This is needed when the host and
target gcc or glibc differ in the ABI.
THIS IS STRONGLY RECOMMENDED!
ROCKCFG_DO_REBUILD_STAGE
This options controls whether to rebuild all packages in the final
rebuild stage.
Each and every package is rebuilt in stage 9 once more and only then
are the binary packages created. This has the advantage that
circular dependencies are resolved, but it also almost doubles the
build time.
In former times this was recommended - but nowadays this is only a
paranoia thing.
ROCKCFG_DO_CHECK
This options enables to run a make check / test target for packages
with support for this. This can be used as extended quality assurance
to make sure the resulting binaries work correct.
ROCKCFG_OPT
With this option, the type of optimisation can be selected.
ROCKCFG_C_FLAGS
These parameters (flags) will be used for every invocation of gcc.
ROCKCFG_CONFIGURE_OPTS
These parameters will be used for every invocation of GNU configure.
ROCKCFG_CREATE_DOCS
If enabled, the build scripts will automatically install documentation files
like README, INSTALL and Changelog, contained in each packages sources.
ROCKCFG_DEBUG
Enable this option if you want to have debug symbols in your binaries.
ROCKCFG_LIMITCXX
Check here if you want to disable the C++ exceptions run-time type
identification. This can make the C++ binaries about 25% smaller,
but any C++ sources using exceptions or rtti, for example QT/KDE,
will fail to compile. If you don't know, don't touch.
ROCKCFG_STATIC
Create statically linked binaries.
ROCKCFG_MULTILIB
Enable installing several versions of the same library.
ROCKCFG_AUTOPCH
Compiling C++ headers more than once (e.g. when included from different
files) often causes a significant increase in build time.
Enable this option and a wrapper for the C++ compiler will try to make
sure the time-expensive part of compiling C++ headers is done only once
at most.
ROCKCFG_DISABLE_NLS
Please check here if you do not want to use Native Language Support.
ROCKCFG_CREATE_CACHE
Please check here if you want to create *.cache files after a build
has completed. This is the same as a reference build.
ROCKCFG_PARANOIA_CHECK
Please check here if you want to run sanity checks before building.
THIS IS STRONGLY RECOMMENDED!
ROCKCFG_IDCKSUM
Please check here if you want to use a checksum instead of the long
explanatory ROCKCFG-ID.