[e5d44f5] | 1 | menu "BOOK Settings"
|
---|
| 2 |
|
---|
| 3 | #--- BOOK/script
|
---|
| 4 | choice
|
---|
| 5 | prompt "Use BOOK"
|
---|
| 6 | default BOOK_LFS
|
---|
| 7 | help
|
---|
| 8 | Select the book where build instructions are retrieved.
|
---|
| 9 |
|
---|
| 10 | config BOOK_LFS
|
---|
| 11 | bool "Linux From Scratch System V"
|
---|
| 12 | help
|
---|
[706e5bf] | 13 | Set up the tools to build LFS with SysV init.
|
---|
[e5d44f5] | 14 |
|
---|
| 15 | config BOOK_LFS_SYSD
|
---|
| 16 | bool "Linux From Scratch systemd"
|
---|
| 17 | help
|
---|
| 18 | Set up the tools to build LFS with systemd init.
|
---|
| 19 |
|
---|
| 20 | config BOOK_BLFS
|
---|
| 21 | bool "Beyond Linux From Scratch (see help)"
|
---|
| 22 | help
|
---|
[e3f41e33] | 23 | if the LFS system has already been built, install the tools
|
---|
[e5d44f5] | 24 | to build BLFS packages.
|
---|
| 25 | endchoice
|
---|
| 26 |
|
---|
[39dc04a] | 27 | choice
|
---|
[f596dde] | 28 | depends on BOOK_BLFS
|
---|
[39dc04a] | 29 | prompt "Init system"
|
---|
| 30 |
|
---|
| 31 | config BLFS_SYSV
|
---|
[706e5bf] | 32 | bool "BLFS SysV"
|
---|
[39dc04a] | 33 | help
|
---|
[706e5bf] | 34 | Extract the SysV flavour of the BLFS book
|
---|
[39dc04a] | 35 |
|
---|
| 36 | config BLFS_SYSD
|
---|
| 37 | bool "BLFS systemd"
|
---|
| 38 | help
|
---|
| 39 | Extract the systemd flavour of the BLFS book
|
---|
| 40 |
|
---|
| 41 | endchoice
|
---|
| 42 |
|
---|
[e5d44f5] | 43 | config INITSYS
|
---|
| 44 | string
|
---|
[39dc04a] | 45 | default "sysv" if BOOK_LFS || BLFS_SYSV
|
---|
| 46 | default "systemd" if BOOK_LFS_SYSD || BLFS_SYSD
|
---|
[e5d44f5] | 47 |
|
---|
| 48 | config RUN_ME
|
---|
| 49 | string
|
---|
[e3f41e33] | 50 | default "./jhalfs run" if BOOK_LFS || BOOK_LFS_SYSD
|
---|
[e5d44f5] | 51 | default "./install-blfs-tools.sh auto" if BOOK_BLFS
|
---|
| 52 | #--- End BOOK/script
|
---|
| 53 |
|
---|
| 54 | #--- Book version
|
---|
| 55 | choice
|
---|
[f45af2c] | 56 | prompt "Book version"
|
---|
| 57 | default BRANCH
|
---|
[e5d44f5] | 58 |
|
---|
[f45af2c] | 59 | config BRANCH
|
---|
| 60 | bool "Branch (default to trunk) or any commit"
|
---|
[e5d44f5] | 61 | help
|
---|
[a2917ed] | 62 | Use an LFS book downloaded from the git repository, and
|
---|
| 63 | checked out at any commit (branch/tag/sha)
|
---|
[e5d44f5] | 64 |
|
---|
| 65 | config WORKING_COPY
|
---|
| 66 | bool "Working Copy"
|
---|
| 67 | help
|
---|
[a2917ed] | 68 | Use a local working copy of the LFS book
|
---|
[e5d44f5] | 69 | endchoice
|
---|
| 70 |
|
---|
[f45af2c] | 71 | config COMMIT
|
---|
| 72 | string "Branch, tag, or any commit"
|
---|
| 73 | default "trunk"
|
---|
[f596dde] | 74 | depends on BRANCH
|
---|
[e5d44f5] | 75 | help
|
---|
[f45af2c] | 76 | Enter a branch, a tag, or an abbreviated commit sha.
|
---|
| 77 | The tool will clone the LFS repository and checkout
|
---|
| 78 | that commit
|
---|
[e5d44f5] | 79 |
|
---|
| 80 | config BOOK
|
---|
| 81 | string "Loc of working copy (mandatory)"
|
---|
| 82 | default "**EDIT ME**"
|
---|
[f596dde] | 83 | depends on WORKING_COPY
|
---|
[e5d44f5] | 84 | help
|
---|
[a2917ed] | 85 | The full path to a local copy of the LFS book XML sources
|
---|
[e5d44f5] | 86 |
|
---|
[13e52a5] | 87 | choice
|
---|
[a2917ed] | 88 | depends on (BOOK_LFS || BOOK_LFS_SYSD)
|
---|
[13e52a5] | 89 | prompt "Mutilib"
|
---|
| 90 | default LFS_MULTILIB_NO
|
---|
| 91 | config LFS_MULTILIB_NO
|
---|
| 92 | bool "Standard LFS on i686 or amd64"
|
---|
| 93 | help
|
---|
[b6e981a] | 94 | Use standard LFS book (choose this if not multilib source)
|
---|
[13e52a5] | 95 |
|
---|
| 96 | config LFS_MULTILIB_I686
|
---|
| 97 | bool "Multilib LFS on amd64 with i686 libraries"
|
---|
| 98 | help
|
---|
| 99 | Use Multilib LFS book with i686 libraries
|
---|
| 100 |
|
---|
| 101 | config LFS_MULTILIB_X32
|
---|
| 102 | bool "Multilib LFS on amd64 with x32 libraries"
|
---|
| 103 | help
|
---|
| 104 | Use Multilib LFS book with x32 libraries
|
---|
| 105 |
|
---|
| 106 | config LFS_MULTILIB_ALL
|
---|
| 107 | bool "Multilib LFS on amd64 with i686 and x32 libraries"
|
---|
| 108 | help
|
---|
| 109 | Use Multilib LFS book with i686 and x32 libraries
|
---|
| 110 |
|
---|
| 111 | endchoice
|
---|
| 112 |
|
---|
| 113 | config MULTILIB
|
---|
| 114 | string
|
---|
| 115 | default "default" if LFS_MULTILIB_NO
|
---|
| 116 | default "ml_32" if LFS_MULTILIB_I686
|
---|
| 117 | default "ml_x32" if LFS_MULTILIB_X32
|
---|
| 118 | default "ml_all" if LFS_MULTILIB_ALL
|
---|
| 119 |
|
---|
[e5d44f5] | 120 | #--- End BOOK version
|
---|
| 121 |
|
---|
| 122 | choice
|
---|
| 123 | prompt "Build method"
|
---|
[e3f41e33] | 124 | default BUILD_CHROOT
|
---|
[a2917ed] | 125 | depends on (BOOK_LFS || BOOK_LFS_SYSD)
|
---|
[e5d44f5] | 126 | help
|
---|
| 127 | What build method should be used: a chroot jail or minimal boot
|
---|
[e3f41e33] | 128 | system. Review the clfs-ng branch chap6 "TO BOOT OR CHROOT" for
|
---|
[e5d44f5] | 129 | a full explanation.
|
---|
| 130 |
|
---|
| 131 | config BUILD_CHROOT
|
---|
| 132 | bool "chroot"
|
---|
| 133 |
|
---|
| 134 | config BUILD_BOOT
|
---|
| 135 | bool "boot"
|
---|
| 136 | endchoice
|
---|
| 137 |
|
---|
| 138 | config METHOD
|
---|
| 139 | string
|
---|
| 140 | default "chroot" if BUILD_CHROOT
|
---|
| 141 | default "boot" if BUILD_BOOT
|
---|
| 142 |
|
---|
| 143 | config BOOT_CONFIG
|
---|
| 144 | string "BOOT kernel config file (mandatory)"
|
---|
| 145 | default "***EDIT ME***"
|
---|
| 146 | depends on BUILD_BOOT
|
---|
| 147 | help
|
---|
| 148 | If METHOD=boot, location of boot-kernel config file
|
---|
| 149 | The config file will be copied to ${BUILD_DIR}/sources
|
---|
| 150 | and renamed 'bootkernel-config'
|
---|
| 151 | NOTE: this setting is required
|
---|
| 152 |
|
---|
| 153 | #--- blfs-tool Support
|
---|
| 154 | config BLFS_TOOL
|
---|
| 155 | bool "Add blfs-tool support"
|
---|
| 156 | default n
|
---|
[e3f41e33] | 157 | depends on !BOOK_BLFS
|
---|
[e5d44f5] | 158 | help
|
---|
| 159 | Activating this option will install additional packages needed
|
---|
| 160 | to use blfs tools after booting the new system.
|
---|
| 161 | The blfs-tool files will be installed under $BUILD_DIR/blfs_root
|
---|
| 162 | (see below).
|
---|
| 163 | After booting the new xLFS system, but before using the blfs tools,
|
---|
| 164 | you should create a user account, move the /blfs_root directory
|
---|
| 165 | to that user's home, and change its ownership to that of the user.
|
---|
| 166 | Also, be sure to give the user read and write access on the
|
---|
| 167 | $TRACKING_DIR directory and the files that it contains.
|
---|
| 168 | Don't forget to configure sudo properly on the new system.
|
---|
| 169 |
|
---|
| 170 | config DUMMY # Avoid indenting the items below
|
---|
| 171 | bool
|
---|
| 172 |
|
---|
| 173 | if BLFS_TOOL
|
---|
| 174 | menu "blfs-tool dependencies"
|
---|
| 175 |
|
---|
| 176 | config DEP_LIBXML
|
---|
| 177 | bool "libxml2 (required)"
|
---|
| 178 | default y
|
---|
| 179 |
|
---|
| 180 | config DEP_LIBXSLT
|
---|
| 181 | bool "libxslt (required)"
|
---|
| 182 | default y
|
---|
| 183 |
|
---|
| 184 | config DEP_DBXML
|
---|
| 185 | bool "DocBook XML DTD (required)"
|
---|
| 186 | default y
|
---|
| 187 |
|
---|
| 188 | config DEP_LYNX
|
---|
| 189 | bool "lynx (optional, for reading the generated book)"
|
---|
| 190 | default y
|
---|
| 191 |
|
---|
[7f25c70] | 192 | config DEP_SUDO
|
---|
| 193 | bool "sudo (recommended)"
|
---|
| 194 | default y
|
---|
| 195 |
|
---|
[e5d44f5] | 196 | config DEP_WGET
|
---|
| 197 | bool "wget (recommended)"
|
---|
| 198 | default y
|
---|
| 199 |
|
---|
| 200 | config DEP_GPM
|
---|
| 201 | bool "GPM (optional, see help)"
|
---|
| 202 | default n
|
---|
| 203 | help
|
---|
| 204 | if you install gpm, it will be started
|
---|
[90f5b6d] | 205 | automatically on boot. It allows copy-paste
|
---|
| 206 | while Xorg is not installed.
|
---|
[e5d44f5] | 207 |
|
---|
[1e686d1] | 208 | config DEP_GIT
|
---|
| 209 | bool "GIT client (optional, see help)"
|
---|
[e5d44f5] | 210 | default n
|
---|
| 211 | help
|
---|
[1e686d1] | 212 | Git is needed for updating the book
|
---|
[90f5b6d] | 213 | sources. You do not need it if building a
|
---|
| 214 | stable book.
|
---|
[e5d44f5] | 215 |
|
---|
| 216 | endmenu
|
---|
| 217 |
|
---|
| 218 | choice
|
---|
[9b99ada] | 219 | prompt "BLFS book version"
|
---|
| 220 | default BLFS_BRANCH
|
---|
[e5d44f5] | 221 |
|
---|
[9b99ada] | 222 | config BLFS_BRANCH
|
---|
| 223 | bool "BLFS Branch (default trunk) or any commit"
|
---|
[e5d44f5] | 224 | help
|
---|
[9b99ada] | 225 | Use a BLFS book downloaded from the git repository, and
|
---|
| 226 | checked out at any commit (branch/tag/sha).
|
---|
[e5d44f5] | 227 |
|
---|
| 228 | config BLFS_WORKING_COPY
|
---|
| 229 | bool "BLFS working copy"
|
---|
| 230 | help
|
---|
[9b99ada] | 231 | Use a local working copy of the BLFS book.
|
---|
[e5d44f5] | 232 | endchoice
|
---|
| 233 |
|
---|
| 234 | config BLFS_WC_LOCATION
|
---|
| 235 | string "Location of the local BLFS working copy (mandatory)"
|
---|
| 236 | default "**EDIT ME**"
|
---|
| 237 | depends on BLFS_WORKING_COPY
|
---|
| 238 | help
|
---|
[506120ee] | 239 | Full path to the BLFS book working copy
|
---|
[e5d44f5] | 240 |
|
---|
[9b99ada] | 241 | config BLFS_COMMIT
|
---|
| 242 | string "BLFS Book commit (branch/tag/sha)"
|
---|
| 243 | default "trunk"
|
---|
[e5d44f5] | 244 | depends on BLFS_BRANCH
|
---|
| 245 | help
|
---|
[f45af2c] | 246 | Can be any branch, tag, or abbreviated (or not) commit sha.
|
---|
[e5d44f5] | 247 | endif
|
---|
| 248 | #--- End blfs-tool Support
|
---|
| 249 |
|
---|
| 250 | #--- BLFS params (Used for installing the tools, either after a jhalfs run
|
---|
| 251 | # or directly)
|
---|
| 252 | config BLFS_ROOT
|
---|
| 253 | string "Root of the tools directory (see help)"
|
---|
| 254 | default "/blfs_root"
|
---|
| 255 | depends on BLFS_TOOL || BOOK_BLFS
|
---|
| 256 | help
|
---|
| 257 | Path to the directory where all required files and scripts
|
---|
| 258 | will be stored.
|
---|
| 259 |
|
---|
| 260 | This path must begin with a slash, and:
|
---|
| 261 | - is relative to the user's HOME directory when installing the
|
---|
| 262 | blfs tools on an already existing LFS system.
|
---|
| 263 | - is relative to the root of the build directory (`/' in chroot)
|
---|
| 264 | when adding the tools after a jhalfs run
|
---|
| 265 |
|
---|
| 266 | CAUTION: this directory will be removed if it already exists.
|
---|
| 267 |
|
---|
| 268 | config BLFS_XML
|
---|
| 269 | string "BLFS sources directory (internal parameter)"
|
---|
| 270 | default "blfs-xml"
|
---|
[f596dde] | 271 | depends on BLFS_TOOL || BOOK_BLFS
|
---|
[e5d44f5] | 272 | help
|
---|
| 273 | The directory name under $BLFS_ROOT where the BLFS
|
---|
| 274 | book sources will be copied or checked out. Do not change that
|
---|
| 275 | unless you know what you are doing...
|
---|
[506120ee] | 276 |
|
---|
[f733772] | 277 | config LFS_XML
|
---|
| 278 | string "LFS sources directory (internal parameter)"
|
---|
| 279 | default "lfs-xml"
|
---|
[f596dde] | 280 | depends on BLFS_TOOL || BOOK_BLFS
|
---|
[f733772] | 281 | help
|
---|
| 282 | The directory name under $BLFS_ROOT where the LFS
|
---|
| 283 | book sources will be copied or checked out. Do not change that
|
---|
| 284 | unless you know what you are doing...
|
---|
| 285 |
|
---|
[506120ee] | 286 | choice
|
---|
[9b99ada] | 287 | prompt "LFS book version"
|
---|
| 288 | default LFS_BRANCH
|
---|
[f596dde] | 289 | depends on BOOK_BLFS
|
---|
[506120ee] | 290 |
|
---|
[9b99ada] | 291 | config LFS_BRANCH
|
---|
| 292 | bool "LFS branch (default trunk) or any commit"
|
---|
[506120ee] | 293 | help
|
---|
[9b99ada] | 294 | Use an LFS book downloaded from the git repository and
|
---|
| 295 | checked out at any commit (branch/tag/sha).
|
---|
[506120ee] | 296 |
|
---|
| 297 | config LFS_WORKING_COPY
|
---|
| 298 | bool "LFS working copy"
|
---|
| 299 | help
|
---|
[9b99ada] | 300 | Use a local working copy of the LFS book.
|
---|
[506120ee] | 301 | endchoice
|
---|
| 302 |
|
---|
| 303 | config BLFS_LFS_BOOK
|
---|
| 304 | string "Location of the local LFS working copy (mandatory)"
|
---|
| 305 | default "**EDIT ME**"
|
---|
| 306 | depends on LFS_WORKING_COPY
|
---|
| 307 | help
|
---|
| 308 | Full path to the LFS book working copy"
|
---|
| 309 |
|
---|
[9b99ada] | 310 | config BLFS_LFS_COMMIT
|
---|
| 311 | string "LFS Book Commit (mandatory)"
|
---|
| 312 | default "trunk"
|
---|
[506120ee] | 313 | depends on LFS_BRANCH
|
---|
| 314 | help
|
---|
[f45af2c] | 315 | Any branch, tag or abbreviated (or not) commit sha.
|
---|
[e5d44f5] | 316 | # End of BLFS parameters
|
---|
| 317 |
|
---|
| 318 | #--- Custom Tools support
|
---|
| 319 | config CUSTOM_TOOLS
|
---|
[f596dde] | 320 | depends on !BOOK_BLFS
|
---|
[e5d44f5] | 321 | bool "Add custom tools support"
|
---|
| 322 | default n
|
---|
| 323 | help
|
---|
| 324 | Activating this option additional packages you create
|
---|
| 325 | will be installed after finished the xLFS system build.
|
---|
| 326 | #--- End Custom Tools support
|
---|
| 327 |
|
---|
[e3ccc27] | 328 | #--- This directory is needed for blfs tools installation and custom tools
|
---|
[e5d44f5] | 329 | # As well.
|
---|
| 330 | config TRACKING_DIR
|
---|
| 331 | string "Installed packages database directory"
|
---|
| 332 | default "/var/lib/jhalfs/BLFS"
|
---|
| 333 | depends on BOOK_BLFS || BLFS_TOOL || CUSTOM_TOOLS
|
---|
| 334 | help
|
---|
| 335 | Full path to the directory where the database of
|
---|
| 336 | installed packages will be created.
|
---|
| 337 |
|
---|
| 338 | If the blfs tools are installed on a running xLFS system,
|
---|
| 339 | the user must have enough privileges to create this directory.
|
---|
| 340 | It may be necessary to create the /var/lib/jhalfs directory as
|
---|
| 341 | root, and make it writable by the user before running this tool.
|
---|
| 342 |
|
---|
| 343 | If you are installing the blfs tools as part of an xLFS build
|
---|
| 344 | and/or using the customized scripts feature, you will
|
---|
| 345 | need to fix this directory's permissions after booting
|
---|
| 346 | the new system.
|
---|
| 347 |
|
---|
[f45af2c] | 348 | Note that the user who will build the packages must
|
---|
[e5d44f5] | 349 | have read and write access to this directory.
|
---|
[53f291f] | 350 |
|
---|
[a705708] | 351 | #--- End BOOK Settings
|
---|
| 352 | endmenu
|
---|
| 353 |
|
---|
[e5d44f5] | 354 | menu "General Settings"
|
---|
[e3ccc27] | 355 | depends on !BOOK_BLFS
|
---|
[e5d44f5] | 356 |
|
---|
[f45af2c] | 357 | #--- LFS User Account
|
---|
[b7583ec] | 358 |
|
---|
| 359 | config LUSER
|
---|
[e5d44f5] | 360 | string
|
---|
[f45af2c] | 361 | default "lfs"
|
---|
[e5d44f5] | 362 |
|
---|
| 363 | config LGROUP
|
---|
| 364 | string
|
---|
[b7583ec] | 365 | default LUSER
|
---|
[e5d44f5] | 366 |
|
---|
| 367 | config LHOME
|
---|
| 368 | string
|
---|
[b7583ec] | 369 | default "/home"
|
---|
| 370 |
|
---|
[e5d44f5] | 371 | #--- End Set User Account
|
---|
| 372 |
|
---|
| 373 | config BUILDDIR
|
---|
| 374 | string "Build Directory"
|
---|
| 375 | default "/mnt/build_dir"
|
---|
| 376 | help
|
---|
| 377 | #-- The directory where the created system will be located.
|
---|
| 378 | # NOTE: A working directory named jhalfs will be created
|
---|
| 379 | # here, so ensure this does not conflict with the jhalfs
|
---|
| 380 | # source directory.
|
---|
| 381 |
|
---|
| 382 | config GETPKG
|
---|
| 383 | bool "Retrieve source files"
|
---|
| 384 | default n
|
---|
| 385 | help
|
---|
| 386 | #-- Download all packages and patches required by the selected book
|
---|
| 387 | # NOTE: Looks for files in the local archive defined by SRC_ARCHIVE
|
---|
| 388 | # first and if necessary retrieves them from the 'net.
|
---|
| 389 | # Files will be transferred to $BUILDDIR/sources.
|
---|
| 390 |
|
---|
| 391 | config SRC_ARCHIVE
|
---|
| 392 | string "Package Archive Directory"
|
---|
| 393 | default "$SRC_ARCHIVE"
|
---|
[f596dde] | 394 | depends on GETPKG
|
---|
[e5d44f5] | 395 | help
|
---|
| 396 | #-- A local archive for packages/files (not $BUILDDIR/sources)
|
---|
| 397 | # Any missing file will be downloaded and archived here,
|
---|
| 398 | # if the user has the right privileges.
|
---|
| 399 |
|
---|
| 400 | config RETRYSRCDOWNLOAD
|
---|
| 401 | bool "Retry on 'connection refused' failure"
|
---|
| 402 | default n
|
---|
[f596dde] | 403 | depends on GETPKG
|
---|
[e5d44f5] | 404 | help
|
---|
| 405 | #-- Attempt to download a source package again if it fails
|
---|
| 406 | # with a 'connection refused' error. This can happen on
|
---|
| 407 | # servers that are overloaded.
|
---|
| 408 |
|
---|
| 409 | config RETRYDOWNLOADCNT
|
---|
| 410 | int "Number of retry attempts on download failures"
|
---|
| 411 | default 20
|
---|
[f596dde] | 412 | depends on GETPKG
|
---|
[e5d44f5] | 413 | help
|
---|
| 414 | #-- Number of times to retry a failed download.
|
---|
| 415 |
|
---|
| 416 | config DOWNLOADTIMEOUT
|
---|
| 417 | int "Download timeout (in seconds)"
|
---|
| 418 | default 30
|
---|
[f596dde] | 419 | depends on GETPKG
|
---|
[e5d44f5] | 420 | help
|
---|
| 421 | #-- Number of seconds to wait for a download to start before
|
---|
| 422 | # timing out.
|
---|
| 423 |
|
---|
| 424 | config SERVER
|
---|
| 425 | string "FTP mirror"
|
---|
| 426 | default "http://ftp.osuosl.org"
|
---|
[f596dde] | 427 | depends on GETPKG
|
---|
[e5d44f5] | 428 | help
|
---|
| 429 | #-- FTP mirror to download packages and patches if not found
|
---|
| 430 | # in $SRC_ARCHIVE
|
---|
| 431 | # As a last resort, the files will downloaded from upstream,
|
---|
| 432 | # if possible.
|
---|
| 433 |
|
---|
| 434 | config RUNMAKE
|
---|
| 435 | bool "Run the makefile"
|
---|
| 436 | default n
|
---|
| 437 | help
|
---|
| 438 | #-- Automatically run the makefile once it has been created
|
---|
| 439 |
|
---|
| 440 | config CLEAN
|
---|
| 441 | bool "Rebuild files"
|
---|
| 442 | default n
|
---|
| 443 | help
|
---|
| 444 | #-- Clean the build directory before performing any other task.
|
---|
| 445 | # The directory is cleaned only if it was populated by a
|
---|
| 446 | # previous JHALFS run.
|
---|
[a705708] | 447 |
|
---|
| 448 | #--- End General Settings
|
---|
| 449 | endmenu
|
---|
| 450 |
|
---|
[e5d44f5] | 451 | menu "Build Settings"
|
---|
[e3ccc27] | 452 | depends on !BOOK_BLFS
|
---|
[e5d44f5] | 453 |
|
---|
| 454 | #--- Test Suites
|
---|
| 455 | config CONFIG_TESTS
|
---|
| 456 | bool "Run testsuites"
|
---|
| 457 | default y
|
---|
| 458 | help
|
---|
| 459 | #-- Run test suites
|
---|
[1d5f3e3] | 460 | # If you select 'y' here:
|
---|
[e5d44f5] | 461 | # You will have to select between:
|
---|
[945ccaa] | 462 | # - Only critical final system testsuites
|
---|
[e5d44f5] | 463 | # - All final system testsuites
|
---|
| 464 | #
|
---|
[1d5f3e3] | 465 | # Note that in any case, all the test instructions will
|
---|
| 466 | # be generated. Those which are not wanted will be commented
|
---|
| 467 | # out. If you select 'n' here, the commented test instructions
|
---|
| 468 | # do not stop on test suite failures.
|
---|
[e5d44f5] | 469 |
|
---|
[945ccaa] | 470 | menu "Test settings"
|
---|
[f596dde] | 471 | depends on CONFIG_TESTS
|
---|
[e5d44f5] | 472 | choice
|
---|
| 473 | prompt "Tests level"
|
---|
| 474 | default TST_1
|
---|
| 475 |
|
---|
| 476 | config TST_1
|
---|
[945ccaa] | 477 | bool "Only final system critical testsuites"
|
---|
| 478 | help
|
---|
| 479 | #-- Critical tests:
|
---|
| 480 | # Only Glibc, Binutils, GMP, MPFR, MPC and GCC
|
---|
[1d5f3e3] | 481 | # testsuites for final system. The others are commented
|
---|
| 482 | # out.
|
---|
[e5d44f5] | 483 |
|
---|
| 484 | config TST_2
|
---|
| 485 | bool "All final system testsuites"
|
---|
[1d5f3e3] | 486 | help
|
---|
| 487 | #-- All final system test suites:
|
---|
| 488 | # Test instructions for the temporary tools (if available)
|
---|
| 489 | # are commented out.
|
---|
[e5d44f5] | 490 |
|
---|
| 491 | endchoice
|
---|
| 492 |
|
---|
[30a8961] | 493 | endmenu # test settings
|
---|
| 494 |
|
---|
[945ccaa] | 495 | config TEST
|
---|
| 496 | int
|
---|
| 497 | default "0" if !CONFIG_TESTS
|
---|
| 498 | default "1" if TST_1
|
---|
| 499 | default "2" if TST_2
|
---|
[d54e3c9] | 500 | #--- End Test Suites
|
---|
[e5d44f5] | 501 |
|
---|
| 502 | #--- Package Management
|
---|
| 503 | config PKGMNGT
|
---|
| 504 | bool "Package management"
|
---|
[f596dde] | 505 | depends on BOOK_LFS || BOOK_LFS_SYSD
|
---|
[e5d44f5] | 506 | default n
|
---|
| 507 | help
|
---|
| 508 | #-- Use package management
|
---|
| 509 | #
|
---|
[945ccaa] | 510 | # If set, you'll have to choose between
|
---|
| 511 | # two package management styles:
|
---|
| 512 | # - Build and install:
|
---|
| 513 | # the packages in the final phase are built
|
---|
| 514 | # in a separate directory, PKG_DEST.
|
---|
| 515 | # You should provide a bash function for
|
---|
[4b2a5fd] | 516 | # packaging and installing the package.
|
---|
[945ccaa] | 517 | # - Preload a library before install:
|
---|
| 518 | # Run the install instructions inside a
|
---|
| 519 | # wrapper command, which monitors the
|
---|
| 520 | # installed files.
|
---|
| 521 | #
|
---|
[e5d44f5] | 522 | # Also, you have to provide the instructions
|
---|
| 523 | # to build the package manager during the
|
---|
| 524 | # temporary tools phase, in the form of a
|
---|
| 525 | # sect1 of the book identical to a package
|
---|
| 526 | # sect1. See README.PACKAGE_MANAGEMENT
|
---|
[945ccaa] | 527 | choice
|
---|
[f596dde] | 528 | depends on PKGMNGT
|
---|
[945ccaa] | 529 | prompt "Package management style"
|
---|
| 530 | default PKG_PACK
|
---|
| 531 |
|
---|
| 532 | config PKG_PACK
|
---|
| 533 | bool "Build and pack (pacman or dpkg style)"
|
---|
[e5d44f5] | 534 |
|
---|
[945ccaa] | 535 | config LIB_LOAD
|
---|
| 536 | bool "Preload a library before installing (porg style)"
|
---|
| 537 | endchoice
|
---|
| 538 |
|
---|
| 539 | config WRAP_INSTALL
|
---|
| 540 | bool
|
---|
| 541 | default y if LIB_LOAD
|
---|
| 542 | default n if PKG_PACK
|
---|
[e5d44f5] | 543 | #--- End package management
|
---|
| 544 |
|
---|
| 545 | #--- Installed files logs
|
---|
| 546 | config INSTALL_LOG
|
---|
| 547 | bool "Create a log of installed files for each package"
|
---|
| 548 | default n
|
---|
| 549 | help
|
---|
| 550 | #-- Select this if you want to create logs of the files
|
---|
| 551 | # installed by each package on the final system.
|
---|
| 552 |
|
---|
| 553 | #--- End Installed files logs
|
---|
| 554 |
|
---|
[945ccaa] | 555 | config STRIP
|
---|
| 556 | bool "Strip Installed Binaries/Libraries"
|
---|
| 557 | default n
|
---|
| 558 |
|
---|
[dc7fd7b] | 559 | config DEL_LA_FILES
|
---|
[d2a7ec8] | 560 | bool "Remove libtool .la files"
|
---|
[dc7fd7b] | 561 | default y
|
---|
| 562 | help
|
---|
| 563 | #-- Remove files libxxx.la installed by libtool. For a rationale
|
---|
| 564 | # see https://blog.flameeyes.eu/tags/lafiles/
|
---|
| 565 |
|
---|
[945ccaa] | 566 | config NO_PROGRESS_BAR
|
---|
[f596dde] | 567 | bool "DO NOT use/display progress_bar"
|
---|
[945ccaa] | 568 | default n
|
---|
| 569 | help
|
---|
| 570 | #-- Do not use the progress bar routine. On slower machines
|
---|
| 571 | # this function consumes precious CPU cycles.
|
---|
| 572 |
|
---|
| 573 | #--- End Build Settings
|
---|
| 574 | endmenu
|
---|
| 575 |
|
---|
[6990d80] | 576 | menu "System configuration"
|
---|
[e3ccc27] | 577 | depends on !BOOK_BLFS
|
---|
[945ccaa] | 578 |
|
---|
[e5d44f5] | 579 | #--- FSTAB
|
---|
| 580 | config HAVE_FSTAB
|
---|
| 581 | bool "Use a custom fstab file"
|
---|
| 582 | default n
|
---|
| 583 | help
|
---|
| 584 | #-- Select this if you have an fstab file with entries
|
---|
[945ccaa] | 585 | # for the target system
|
---|
[a705708] | 586 |
|
---|
[e5d44f5] | 587 | config FSTAB
|
---|
| 588 | string "Fstab file (optional)"
|
---|
| 589 | default "***EDIT ME***"
|
---|
| 590 | depends on HAVE_FSTAB
|
---|
| 591 | help
|
---|
| 592 | #-- The location of fstab file (if empty, a template is created)
|
---|
| 593 | #--- End FSTAB
|
---|
| 594 |
|
---|
| 595 | #--- Kernel
|
---|
| 596 | config CONFIG_BUILD_KERNEL
|
---|
| 597 | bool "Build the kernel"
|
---|
| 598 | default n
|
---|
| 599 | help
|
---|
| 600 | #-- Select this option if you wish to build the kernel.
|
---|
| 601 | #
|
---|
| 602 | # You will be prompted for the full path to the .config
|
---|
| 603 | # file. It will be copied to the 'sources' directory and
|
---|
| 604 | # renamed kernel-config
|
---|
| 605 |
|
---|
| 606 | config CONFIG
|
---|
| 607 | string "Kernel config file"
|
---|
| 608 | default "***EDIT ME***"
|
---|
| 609 | depends on CONFIG_BUILD_KERNEL
|
---|
| 610 | help
|
---|
| 611 | #-- Fully qualified path to a kernel config file
|
---|
| 612 | # The config file will be copied to ${BUILD_DIR}/sources
|
---|
| 613 | # and renamed 'kernel-config'
|
---|
| 614 | #--- End Kernel
|
---|
| 615 |
|
---|
[085435e] | 616 | config NCURSES5
|
---|
| 617 | bool "Install non-wide-character ncurses"
|
---|
[e5d44f5] | 618 | default n
|
---|
[085435e] | 619 | depends on BOOK_LFS || BOOK_LFS_SYSD
|
---|
[e5d44f5] | 620 | help
|
---|
[085435e] | 621 | #-- Install the optional non wide character ncurses5 library
|
---|
[e5d44f5] | 622 |
|
---|
| 623 | config TIMEZONE
|
---|
| 624 | string "TimeZone"
|
---|
| 625 | default "GMT"
|
---|
| 626 | help
|
---|
| 627 | #-- The timezone as output by tzselect
|
---|
| 628 | # This will be copied to /etc/localtime
|
---|
| 629 |
|
---|
| 630 | config LANG
|
---|
| 631 | string "Language"
|
---|
| 632 | default "$LANG"
|
---|
| 633 | help
|
---|
| 634 | #-- LANG variable set in /etc/profile
|
---|
| 635 | # See http://sourceware.org/git/?p=glibc.git;a=blob;f=localedata/SUPPORTED
|
---|
| 636 | # for values (or the file localedata/SUPPORTED in glibc tarball)
|
---|
| 637 |
|
---|
| 638 | config FULL_LOCALE
|
---|
| 639 | bool "Install the full set of locales"
|
---|
| 640 | default n
|
---|
| 641 | help
|
---|
| 642 | #-- If set to y, the full set of supported locales
|
---|
| 643 | # will be installed. Otherwise, only the minimal set
|
---|
| 644 | # necessary for the tests will be installed,
|
---|
| 645 | # together with the locale associated with the
|
---|
| 646 | # LANG you have chosen, if not in the minimal set.
|
---|
| 647 |
|
---|
| 648 | #--- Groff page
|
---|
| 649 | choice
|
---|
| 650 | prompt "Groff page size"
|
---|
| 651 | default PAGE_LETTER
|
---|
| 652 | help
|
---|
| 653 | #-- Page definition for groff: letter or A4
|
---|
| 654 |
|
---|
| 655 | config PAGE_LETTER
|
---|
| 656 | bool "letter"
|
---|
| 657 |
|
---|
| 658 | config PAGE_A4
|
---|
| 659 | bool "A4"
|
---|
| 660 | endchoice
|
---|
| 661 |
|
---|
| 662 | config PAGE
|
---|
| 663 | string
|
---|
| 664 | default "letter" if PAGE_LETTER
|
---|
| 665 | default "A4" if PAGE_A4
|
---|
| 666 | #--- End Groff page
|
---|
[a705708] | 667 |
|
---|
[945ccaa] | 668 | config HOSTNAME
|
---|
[6990d80] | 669 | string "Hostname (see help)"
|
---|
[945ccaa] | 670 | default "**EDITME**"
|
---|
[6990d80] | 671 | help
|
---|
| 672 | If you are on a public network, use the hostname given to you by
|
---|
| 673 | your institution, or corporation, etc. If your network is private,
|
---|
| 674 | that is, behind a firewall such as a box to connect to your ISP,
|
---|
| 675 | you can choose anything you'd like. Combined with the domain name
|
---|
| 676 | "local", you have the possibility to access your computer by name
|
---|
| 677 | instead of address on the private network (see RFC 6762 and
|
---|
| 678 | https://www.howtogeek.com/167190/).
|
---|
[945ccaa] | 679 |
|
---|
| 680 | menu "Network configuration"
|
---|
| 681 | config INTERFACE
|
---|
| 682 | string "netword card name"
|
---|
| 683 | default "eth0"
|
---|
[6990d80] | 684 | help
|
---|
[48700c3] | 685 | eth0 is used in most cases. Virtual interfaces may get other
|
---|
[6990d80] | 686 | names (for example enp0s3 for the default network stack in qemu).
|
---|
| 687 | Systemd may also rename network interfaces according to their
|
---|
| 688 | bus addresses.
|
---|
[945ccaa] | 689 | config IP_ADDR
|
---|
| 690 | string "Static IP address"
|
---|
| 691 | default "10.0.2.9"
|
---|
[6990d80] | 692 | help
|
---|
| 693 | The default here is for a virtual interface in qemu. Private
|
---|
[f45af2c] | 694 | networks have addresses in the range 10.x.x.x or 192.168.x.x.
|
---|
[6990d80] | 695 | You have to know your network prefix. Then the last figure
|
---|
| 696 | may be anything you like.
|
---|
| 697 |
|
---|
[945ccaa] | 698 | config GATEWAY
|
---|
| 699 | string "Gateway"
|
---|
| 700 | default "10.0.2.2"
|
---|
[6990d80] | 701 | help
|
---|
| 702 | Again, this default is for a qemu network stack. Usually, the
|
---|
| 703 | gateway is the address of your firewall.
|
---|
[945ccaa] | 704 | config PREFIX
|
---|
| 705 | string "Subnet prefix"
|
---|
| 706 | default "24"
|
---|
[6990d80] | 707 | help
|
---|
| 708 | Again, this default is for a qemu network stack, but is also
|
---|
| 709 | the most used in private networks.
|
---|
[945ccaa] | 710 | config BROADCAST
|
---|
| 711 | string "Broadcast address"
|
---|
| 712 | default "10.0.2.255"
|
---|
| 713 | config DOMAIN
|
---|
[6990d80] | 714 | string "Domain name (see help)"
|
---|
| 715 | default "local"
|
---|
| 716 | help
|
---|
| 717 | Domain Name:
|
---|
| 718 | Doamin names are registered, so if your computer is on a public
|
---|
| 719 | network, you cannot use any name you'd like. On a public
|
---|
| 720 | network, you should have been given a domain name by
|
---|
| 721 | your corporation, institution, etc.
|
---|
| 722 | If your network is really private, that is behind a firewall
|
---|
| 723 | such as a box for connecting to an ISP, you can choose any
|
---|
| 724 | domain you'd like. You can also opt for "local", see RFC 6762,
|
---|
| 725 | or "something.test", see RFC 6761.
|
---|
[945ccaa] | 726 | config DNS1
|
---|
| 727 | string "Primary Name server"
|
---|
| 728 | default "10.0.2.3"
|
---|
| 729 | config DNS2
|
---|
| 730 | string "Secondary Name server"
|
---|
| 731 | default "8.8.8.8"
|
---|
| 732 | endmenu # Network configuration
|
---|
| 733 |
|
---|
| 734 | menu "Console configuration"
|
---|
| 735 | config FONT
|
---|
| 736 | string "Console font"
|
---|
| 737 | default "lat0-16"
|
---|
[3b43e17b] | 738 | help
|
---|
| 739 | Unicode mode is set by default. Setting FONT_MAP, FONT_UNIMAP,
|
---|
| 740 | etc, must be done manually.
|
---|
[945ccaa] | 741 | config KEYMAP
|
---|
| 742 | string "Keymap name"
|
---|
| 743 | default "us"
|
---|
[3b43e17b] | 744 | config LOCAL
|
---|
| 745 | boolean "Hardware clock is set to local time"
|
---|
| 746 | default n
|
---|
| 747 | help
|
---|
| 748 | If the harware clock is set to local time, answer yes,
|
---|
| 749 | If it is set to UTC, answer no
|
---|
| 750 | config LOG_LEVEL
|
---|
| 751 | string "Default log level (1-8)"
|
---|
| 752 | default "4"
|
---|
[f596dde] | 753 | depends on BOOK_LFS
|
---|
[3b43e17b] | 754 | help
|
---|
| 755 | This can be changed using dmesg. 1 means "no message",
|
---|
| 756 | 8 shows every message sent by the kernel, which is very
|
---|
| 757 | noisy. The default at boot time is 7, which is quite
|
---|
| 758 | noisy too.
|
---|
[945ccaa] | 759 | endmenu # Console configuration
|
---|
| 760 |
|
---|
| 761 | endmenu #--- System configuration
|
---|
[a705708] | 762 |
|
---|
[e5d44f5] | 763 | menu "Advanced Features"
|
---|
[e3ccc27] | 764 | depends on !BOOK_BLFS
|
---|
[e5d44f5] | 765 |
|
---|
| 766 | config REPORT
|
---|
| 767 | bool "Create SBU and disk usage report"
|
---|
| 768 | default y
|
---|
| 769 |
|
---|
[f5ecc28] | 770 | config SAVE_CH5
|
---|
| 771 | bool "Save Chapter 5 work"
|
---|
| 772 | depends on BOOK_LFS || BOOK_LFS_SYSD
|
---|
| 773 | default n
|
---|
| 774 | help
|
---|
| 775 | Save the state of jhalfs at the end of chapter 5:
|
---|
| 776 |
|
---|
| 777 | if you tick this item, the whole $LFS directory is
|
---|
| 778 | saved when chapter 5 is finished. It'll be in an xz
|
---|
| 779 | compressed tarball in the $LFS/jhalfs directory
|
---|
| 780 |
|
---|
[f596dde] | 781 | #--- ICA
|
---|
[e5d44f5] | 782 | config COMPARE
|
---|
| 783 | bool "Run comparison analysis on final stage"
|
---|
| 784 | default n
|
---|
| 785 | help
|
---|
| 786 | #-- Should an iterative comparison analysis be performed?
|
---|
| 787 | #
|
---|
[f596dde] | 788 | # Unless you are familiar with ICA, do not
|
---|
[e5d44f5] | 789 | # select this option
|
---|
| 790 | #
|
---|
[f596dde] | 791 | # ICA is an analysis tool for comparing one
|
---|
[e5d44f5] | 792 | # build to the next. Builds mays differ from one iteration
|
---|
[f596dde] | 793 | # to another due to the build order and this tool try
|
---|
[e5d44f5] | 794 | # to ferret out those differences by examining the stored
|
---|
| 795 | # build logs and binary files.
|
---|
| 796 | #
|
---|
| 797 | # The scripts are well commented and can be found in ./extras/*
|
---|
| 798 | #
|
---|
| 799 |
|
---|
| 800 | config ITERATIONS
|
---|
| 801 | int "Number of test runs (2,3,4,5)" if COMPARE
|
---|
| 802 | depends on COMPARE
|
---|
| 803 | range 2 5
|
---|
| 804 | default 3
|
---|
| 805 |
|
---|
| 806 | config RUN_ICA
|
---|
[f596dde] | 807 | bool
|
---|
| 808 | default y if COMPARE
|
---|
[e5d44f5] | 809 |
|
---|
[f596dde] | 810 | #--- End ICA
|
---|
[e5d44f5] | 811 |
|
---|
| 812 | #--- Optimizations
|
---|
| 813 | config CONFIG_OPTIMIZE
|
---|
| 814 | bool "Optimization and parallelization"
|
---|
| 815 | default n
|
---|
| 816 | help
|
---|
| 817 | # Opens a menu for various optimization settings:
|
---|
| 818 | # Actual optimization flags MUST be defined in ./optimize/*
|
---|
| 819 | # before activating this option.
|
---|
| 820 | #
|
---|
| 821 | # WARNING: The use of build optimizations may lead to build issues.
|
---|
| 822 | # If the system doesn't work as expected, please rebuild
|
---|
| 823 | # without optimizations before asking for support.
|
---|
| 824 | menu "Optimization settings"
|
---|
| 825 | depends on CONFIG_OPTIMIZE
|
---|
| 826 |
|
---|
| 827 | config N_PARALLEL
|
---|
| 828 | int "Number of parallel `make' jobs"
|
---|
| 829 | default 1
|
---|
| 830 | help
|
---|
| 831 | #-- The usual recommandation is (number of CPU cores)+1
|
---|
| 832 | # Do not set for meaningful SBU calculations.
|
---|
| 833 |
|
---|
| 834 | choice
|
---|
[f596dde] | 835 | prompt "Optimization level"
|
---|
[e5d44f5] | 836 | default OPT_1
|
---|
| 837 | help
|
---|
| 838 | #-- Optimization values are set in optimize/* files
|
---|
| 839 |
|
---|
| 840 | config OPT_1
|
---|
| 841 | bool "Final system only"
|
---|
| 842 |
|
---|
| 843 | config OPT_2
|
---|
| 844 | bool "Both temp tools and final system"
|
---|
| 845 |
|
---|
| 846 | endchoice
|
---|
[84a3fda] | 847 |
|
---|
| 848 | config REALSBU
|
---|
| 849 | bool "Build Binutls pass1 without optimization (Real SBU)"
|
---|
[f45af2c] | 850 | depends on OPT_2
|
---|
[84a3fda] | 851 | default n
|
---|
| 852 | help
|
---|
| 853 | #-- Use -j1 in make invokation for Binutils pass1 to
|
---|
| 854 | # get a valid SBU value.
|
---|
| 855 |
|
---|
[9d665db] | 856 | endmenu # Optimization settings
|
---|
[e5d44f5] | 857 | config OPTIMIZE
|
---|
| 858 | int
|
---|
| 859 | default "0" if !CONFIG_OPTIMIZE
|
---|
| 860 | default "1" if OPT_1
|
---|
| 861 | default "2" if OPT_2
|
---|
[84a3fda] | 862 |
|
---|
[e5d44f5] | 863 | #--- End Optimizations
|
---|
[a705708] | 864 |
|
---|
[e5d44f5] | 865 | #-- Internal Settings
|
---|
| 866 | menu "Internal Settings (WARNING: for jhalfs developers only)"
|
---|
[4da2512] | 867 |
|
---|
[e5d44f5] | 868 | config SCRIPT_ROOT
|
---|
| 869 | string "Scripts root"
|
---|
| 870 | default "jhalfs"
|
---|
[4da2512] | 871 |
|
---|
[e5d44f5] | 872 | config JHALFSDIR
|
---|
| 873 | string "jhalfs directory"
|
---|
| 874 | default "$BUILDDIR/$SCRIPT_ROOT"
|
---|
[4da2512] | 875 |
|
---|
[e5d44f5] | 876 | config LOGDIRBASE
|
---|
| 877 | string "Build logs directory basename"
|
---|
| 878 | default "logs"
|
---|
[93346ee] | 879 |
|
---|
[e5d44f5] | 880 | config LOGDIR
|
---|
| 881 | string "Build logs directory"
|
---|
| 882 | default "$JHALFSDIR/$LOGDIRBASE"
|
---|
[93346ee] | 883 |
|
---|
[e5d44f5] | 884 | config TESTLOGDIRBASE
|
---|
| 885 | string "Test suites logs directory basename"
|
---|
| 886 | default "test-logs"
|
---|
[4da2512] | 887 |
|
---|
[e5d44f5] | 888 | config TESTLOGDIR
|
---|
| 889 | string "Test suites logs directory"
|
---|
| 890 | default "$JHALFSDIR/$TESTLOGDIRBASE"
|
---|
[93346ee] | 891 |
|
---|
[e5d44f5] | 892 | config FILELOGDIRBASE
|
---|
| 893 | string "Installed files logs directory basename"
|
---|
| 894 | default "installed-files"
|
---|
[93346ee] | 895 |
|
---|
[e5d44f5] | 896 | config FILELOGDIR
|
---|
| 897 | string "Installed files logs directory"
|
---|
| 898 | default "$JHALFSDIR/$FILELOGDIRBASE"
|
---|
[4da2512] | 899 |
|
---|
[e5d44f5] | 900 | config ICALOGDIR
|
---|
| 901 | string "ICA logs directory"
|
---|
| 902 | default "$LOGDIR/ICA"
|
---|
[4da2512] | 903 |
|
---|
[e5d44f5] | 904 | config MKFILE
|
---|
| 905 | string "Makefile"
|
---|
| 906 | default "$JHALFSDIR/Makefile"
|
---|
[4da2512] | 907 |
|
---|
[e5d44f5] | 908 | config XSL
|
---|
| 909 | string "XSL stylesheet"
|
---|
[8825e69] | 910 | default "lfs.xsl"
|
---|
[4da2512] | 911 |
|
---|
[e5d44f5] | 912 | config PKG_LST
|
---|
| 913 | string "Package contents list"
|
---|
| 914 | default "unpacked"
|
---|
[4da2512] | 915 |
|
---|
[e5d44f5] | 916 | #--- End Internal Settings
|
---|
| 917 | endmenu
|
---|
[4da2512] | 918 |
|
---|
[a705708] | 919 | #--- End Advanced Features
|
---|
| 920 | endmenu
|
---|
[7b6ecc5] | 921 |
|
---|
[a16f769] | 922 | config REBUILD_MAKEFILE
|
---|
[06eddf4] | 923 | # depends on !BOOK_BLFS
|
---|
[e5d44f5] | 924 | bool "Rebuild the Makefile (see help)"
|
---|
| 925 | default n
|
---|
| 926 | help
|
---|
| 927 | #-- Rebuild the Makefile
|
---|
| 928 | #
|
---|
| 929 | # This option allows to rebuild the Makefile after
|
---|
| 930 | # customizing the base system build scripts.
|
---|
| 931 | #
|
---|
| 932 | # See README.CUSTOM for more info about this feature.
|
---|
[06eddf4] | 933 | # Note that you should do that after configuring a jhalfs
|
---|
| 934 | # build, and only if you need changing the build scripts order
|
---|
| 935 | # or add a new one.
|
---|