# --- 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 - 2003 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 ---

# Here are the help text's for ROCKLinux build configuration.
# TODO: write more about help comments ... what to write and how much
# (please much ;-) ).

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 beautifull distribution
  build system.

ROCKCFG_ARCH
  This options 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_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.
   - Generic ROCK Linux:
	A generic, all-purpose distribution that has simply everything.
   - 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.

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_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 buids 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_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_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_PKGSEL
  If selected you can modify the package list for the build.

MENU_PKGSEL_RULES
  Here you can modify the package list for the build. You have the
  choice beween 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-Syste 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_OPT
  If this option is enabled binaries and libraries are optimised and
  debugging information are not build into those binaries and
  additionally stripped. That is non-vital information are removed from
  binaries. See `man strip` for details.  If disabled debugging
  informations are included into the binaries.

ROCKCFG_OPTSIZE
  Enable this option if you want to optimise binaries for file-size
  instead of performance. This is useful for embedded devices and
  other low-memory systems. (But on the other hand is also the
  best performance setting, too).

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_MULTILIB
  Enable installing several versions of the same library.

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.


