1 # --- T2-COPYRIGHT-NOTE-BEGIN ---
2 # This copyright note is auto-generated by scripts/Create-CopyPatch.
4 # T2 SDE: scripts/config.hlp
5 # Copyright (C) 2004 - 2021 The T2 SDE Project
6 # Copyright (C) 1998 - 2003 ROCK Linux Project
8 # More information can be found in the files COPYING and README.
10 # This program is free software; you can redistribute it and/or modify
11 # it under the terms of the GNU General Public License as published by
12 # the Free Software Foundation; version 2 of the License. A copy of the
13 # GNU General Public License can be found in the file COPYING.
14 # --- T2-COPYRIGHT-NOTE-END ---
17 In this section you are able to select the architecture, the CPU and
18 whether you are cross-building/porting to another architecture.
21 In this section you can select which distribution target you would like
25 This distribution may contain software that is not publicly
26 distributable. Please check the following to testify that you
27 are aware of this fact.
30 The user of the T2-SDE is responsible for himself to verify
31 that packages that carry a limitation for re-distribution
32 are not redistributed in any form (e.g. ISOs).
34 The developers of the T2-SDE deny any responsibility for
35 mis-use of these packages.
37 COMMENT_BUILD_SYS_CONF
38 Here you can set some basic options for our beautifull distribution
42 This options controls the target architecture like alpha, ia64, mips,
46 Enable this option to generate code for software floating point.
47 This option enables software floating point via a user-space library,
48 instead of a more expensive trap into the kernel for emulation.
51 This option needs to be selected to perform a cross-build to another
55 Please select the Target you want to build. Here's a short overview:
56 - Boot-, Install- and Rescue-System:
57 The boot-system. You need this if you want to install the system
58 you built with CD or floppy-disk.
60 Intended for use on workstations / desktops.
62 A distribution using Diet LibC instead of GLibC. DietLibC is
63 a light-weight C-Library useful for embedded systems and other
66 A generic, all-purpose distribution that has simply everything.
68 A basic system that has only minimally more than a LFS.
69 - Reference-Build for creating *.cache files:
70 This target is for internal use only. It's purpose is to create
71 package/*/*/*.cache files which are used to validate a package
72 and consolidate its various information.
74 This is a _very_ minimal system with only routing-capabilities.
77 This option specifes the amount of parallel build jobs that are tried
78 to be kept active. This option is used by make and scons - and should
79 also be defined when you use distcc to perform distributed builds.
81 SDECFG_CONTINUE_ON_ERROR_AFTER
82 Build stage the build will continue after a package build error.
85 This option controls whether the Build-System should try to build a
86 package that has not built flawlessly during the last build.
89 This option controls whether the Build-System should cleanup
90 the src.* directory a package is build in. Possible choices
91 include to never keep the src dirs, even not on build errors,
92 to keep the src dirs on build errors, and to keep src. dirs
93 for packages out of a list. The later is useful if packages
94 are actively developed and the the exact setup is used to
95 continue developing, e.g. with the T2 cross compiler setup.
98 The space (or comma, or collon) seperated list specifies which
99 packages the src dirs should be kept.
102 Please check here if you want additional (debug)-output in the build
106 Check here if you want package buids to use tmpfs instead of the regular
107 filesystem on which T2 resides.
110 Please enter the tmpfs mount options here. For example:
112 size=800M,nr_inodes=100k
113 will mount an 800 Megabyte tmp-filesystem with 100,000 inodes.
115 size=4G,nr_inodes=500k
116 will mount a 4 Gigabyte tmp-filesystem with 500,000 inodes.
118 Please make sure that the filesystem is big enough to hold
119 - package-sources (unpacked)
120 - compile-time binaries
121 - and the binary package
122 The filesystem size also must not be so big as to hog all your RAM or
123 else your system might crash or start swapping.
126 Please enter the path to the tmpfs-logfile.
129 This button will enable a lot of additional configuration options.
130 Some of these will make small changes to what the system will look
131 like while others will have a huge impact on performance, stability
132 and usability of the final system.
134 Don't touch these if you don't know what you are doing.
136 YOU HAVE BEEN WARNED!
139 The option allows to control the binary package format to be created.
140 The default is to create an ordenary .tar.bz2 - but tar.gz or .gem
141 are also among the options.
144 If selected the package version number will be added to the binary
148 If selected you can modify the package list for the build.
151 Here you can modify the package list for the build. You have the
152 choice between enable, disable or complete removal. A disabled
153 package can still be reenabled by a target, while a removed one
154 can not be selected by a target.
156 Use "X <pattern>" to enable packages
157 Use "O <pattern>" to disable packages
158 Use "- <pattern>" to remove packages
162 will not build Gnome at all.
165 This will display the complete, current package list.
167 SDECFG_CONFOPT_FILE:0
168 Here you can specify additional parameters passed to every ./configure
171 Use "--with-option" to enable a feature
172 Use "--without-option" to disable a feature
173 Use "--option[=value]" to specify a custom option
175 The Build-Syste will always check whether the configure script supports
176 the options before the options is really passed as argument.
179 Please see the help for the choice-menu.
182 The T2 build scripts auto-detect which files are created by a package
183 build and use this information to create the package file-list. There
184 are three techniques which can be used to auto-detect this file list
188 The flist-wrapper is the recommended way of doing it. It's an "elf
189 preload library". This is a library which is loaded _before_ the
190 c-library and so can overwrite functions of the c library. The
191 flist-wrapper lib is overwriting all functions which can be used
192 to create files and is writing the filenames to a log file before
193 running the original c library function.
194 This log file is used to create the package file list after the
195 build has been completed. The problem with the flist-wrapper lib is
196 that it doesn't work with statically built binaries or with non
197 glibc c libraries. In such environments (e.g. when building a
198 dietlibc based system), other techniques - such as those described
199 below - must be used for creating the file list.
203 This one is rather easy: The whole build is running in a process-
204 tree which is monitored by strace. The log file created by strace is
205 later used to create the package file list. However: this does only
206 work on architectures which do have an strace command - which is not
207 the case for all architectures the Linux kernel and glibc have been
212 This one is rather ugly (but sometimes the only alternative): When
213 the build is started, a 'timestamp-file' is created. After the build
214 has been completed, the find program is used to find all files which
215 are newer than the 'timestamp-file'. This is really slow now and has
216 the disadvantage that nothing else than the build process may create
217 or modify files while the build is running. This should only be used
218 if no other system for creating the file list can be used.
221 This option controls whether to bootstrap a new, clean and up-to-date
222 toolchain to bootstrap the target system - even for native (non cross)
223 builds. This is needed when the host and target compiler or C library
224 differ in the ABI. THIS IS STRONGLY RECOMMENDED!
226 SDECFG_DO_REBUILD_STAGE
227 This options controls whether to rebuild all packages in the final
229 Each and every package is rebuilt in Stage 9 once more and only then
230 are the binary-packages created. This has the advantage that
231 circular dependencies are resolved, but it also almost doubles the
233 In former times this was recommended - but nowadays this is only a
237 This options enables to run a make check / test target for packages
238 with support for this. This can be used as extended quality assurance
239 to make sure the resulting binaries work correct.
242 With this option, the level of optimization can be selected.
245 Enable this option if you want to have debug symbols in your binaries.
246 Setting it to 2 will create separate files with debugging symbols.
249 The path used to store the debugging information in. If the specified
250 path is relative, not starting with a slash (/), the new files will
251 be stored relative to the binary object being split.
254 Check here if you want to disable the C++ exceptions run-time type
255 identification. This can make the C++ binaries about 25% smaller,
256 but any C++ sources using exceptions or rtti, for example QT/KDE,
257 will fail to compile. If you don't know, don't touch.
260 Enable installing several versions of the same library.
263 Normally packages place static and shared libraries in the same
264 directory. However one might choose to only have files needed while
265 booting in the root (/) filesystem while the static libraries for
266 developemnt resist in the /usr file-system. This option enables to
267 generically move them from /lib* to /usr/lib*.
270 Enabling this option will enable passing -flto option to the compiler
271 and linker. This means compiling to an compiler internal intermediate
272 format and performing link-time-optimizations.
274 Currently this feature is considered experimental.
277 Enabling this option will enable passing the --as-needed option to
278 the linker, to only mark the relevant ELF section that are referenced
279 by the executable generated. This does often reduce the dependencies
280 of a binary quite a lot and can help speeding up application start-up
283 Currently this feature is considered experimental - if you do not
284 know what --as-needed is about, you probably do not want to enable
288 Enabling this option will enable passing -fPIE/-pie to the GCC
289 compiler in order to generate Position Independant Executables,
290 executables that can be loaded to arbitrary memory locations by
291 the kernel. This feature is mostly used to enhace system security
292 as attack vectors become more random.
294 Currently this feature is considered experimental - if you do not
295 know what PIE is about, you probably do not want to enable this
299 Please check here if you do not want to use Native Language Support.
302 Please check here if you want to create *.cache files after a build
303 has completed. This is the same as a reference build.
305 SDECFG_PARANOIA_CHECK
306 Please check here if you want to run sanity checks before building.
307 THIS IS STRONGLY RECOMMENDED!
310 Please check here if you want to use a checksum instead of the long
311 explanatory SDECFG-ID.