706e5bf46a
- Prefer SysV over Sys V in Config.in - do not generate the package list for lfs, it is not needed anymore - prevent an (ignored) error in LFS/master.sh - log new files under the scriptlet name (allows to log files for the same package from different builds) - keep the full name in log_new_file functions (fix a undetected bug in CLFS/HLFS)
1257 lines
41 KiB
Text
1257 lines
41 KiB
Text
# $Id$
|
|
menu "BOOK Settings"
|
|
|
|
depends on !REBUILD_MAKEFILE
|
|
|
|
#--- BOOK/script
|
|
choice
|
|
prompt "Use BOOK"
|
|
default BOOK_LFS
|
|
help
|
|
Select the book where build instructions are retrieved.
|
|
|
|
config BOOK_LFS
|
|
bool "Linux From Scratch System V"
|
|
help
|
|
Set up the tools to build LFS with SysV init.
|
|
|
|
config BOOK_LFS_SYSD
|
|
bool "Linux From Scratch systemd"
|
|
help
|
|
Set up the tools to build LFS with systemd init.
|
|
|
|
config BOOK_CLFS
|
|
bool "Cross-Compiled Linux From Scratch"
|
|
help
|
|
Set up the tools to build CLFS.
|
|
|
|
config BOOK_CLFS2
|
|
bool "Cross-Compiled Linux From Scratch (Sysroot method)"
|
|
help
|
|
Set up the tools to build CLFS by the sysroot method.
|
|
|
|
config BOOK_CLFS3
|
|
bool "Cross-Compiled Linux From Scratch (Embedded Systems)"
|
|
help
|
|
Set up the tools to build CLFS with tools for embedded systems.
|
|
|
|
config BOOK_BLFS
|
|
bool "Beyond Linux From Scratch (see help)"
|
|
help
|
|
if the (C)LFS system has already been built, install the tools
|
|
to build BLFS packages.
|
|
endchoice
|
|
|
|
choice
|
|
depends on BOOK_BLFS
|
|
prompt "Init system"
|
|
|
|
config BLFS_SYSV
|
|
bool "BLFS SysV"
|
|
help
|
|
Extract the SysV flavour of the BLFS book
|
|
|
|
config BLFS_SYSD
|
|
bool "BLFS systemd"
|
|
help
|
|
Extract the systemd flavour of the BLFS book
|
|
|
|
endchoice
|
|
|
|
config INITSYS
|
|
string
|
|
default "sysv" if BOOK_LFS || BLFS_SYSV
|
|
default "systemd" if BOOK_LFS_SYSD || BLFS_SYSD
|
|
|
|
config PROGNAME
|
|
string
|
|
default "lfs" if BOOK_LFS || BOOK_LFS_SYSD
|
|
default "clfs" if BOOK_CLFS
|
|
default "clfs2" if BOOK_CLFS2
|
|
default "clfs3" if BOOK_CLFS3
|
|
|
|
config RUN_ME
|
|
string
|
|
default "./jhalfs run" if BOOK_LFS || BOOK_LFS_SYSD || BOOK_CLFS || \
|
|
BOOK_CLFS2 || BOOK_CLFS_3
|
|
default "./install-blfs-tools.sh auto" if BOOK_BLFS
|
|
#--- End BOOK/script
|
|
|
|
#--- Book version
|
|
choice
|
|
prompt "Release"
|
|
default relSVN if BOOK_LFS || BOOK_LFS_SYSD || BOOK_BLFS
|
|
default relGIT if BOOK_CLFS || BOOK_CLFS2 || BOOK_CLFS3
|
|
|
|
config relSVN
|
|
bool "SVN"
|
|
depends on BOOK_LFS || BOOK_BLFS || BOOK_LFS_SYSD
|
|
help
|
|
Current development version as in trunk
|
|
|
|
config relGIT
|
|
bool "GIT"
|
|
depends on BOOK_CLFS || BOOK_CLFS2 || BOOK_CLFS3
|
|
help
|
|
Current development git master branch
|
|
|
|
config WORKING_COPY
|
|
bool "Working Copy"
|
|
help
|
|
A local working copy
|
|
|
|
config BRANCH
|
|
bool "Branch or stable book" if !BOOK_CLFS2 && !BOOK_CLFS3
|
|
help
|
|
A supported SVN/GIT branch or stable released book
|
|
endchoice
|
|
|
|
config BRANCH_ID
|
|
string "Branch (preceded by \"branch-\"), stable Version, or tag"
|
|
default "**EDIT ME**"
|
|
depends on BRANCH
|
|
help
|
|
A list of valid branches and stable book IDs is available at
|
|
http://wiki.linuxfromscratch.org/alfs/wiki/SupportedBooks
|
|
|
|
Enter "branch-XXX" for branch XXX, or just "YYY" for stable (or tag)
|
|
YYY version.
|
|
|
|
config BOOK
|
|
string "Loc of working copy (mandatory)"
|
|
default "**EDIT ME**"
|
|
depends on WORKING_COPY
|
|
help
|
|
The full path to a local copy of the book XML sources
|
|
|
|
#--- End BOOK version
|
|
|
|
#--- CLFS specific params
|
|
choice
|
|
prompt "Target architecture"
|
|
default ARCH_X86
|
|
depends on BOOK_CLFS || BOOK_CLFS2 || BOOK_CLFS3
|
|
help
|
|
Choose the target system base architecture
|
|
|
|
config ARCH_X86
|
|
bool "x86"
|
|
|
|
config ARCH_MIPS
|
|
bool "mips" if !BOOK_CLFS2
|
|
|
|
config ARCH_PPC
|
|
bool "ppc" if BOOK_CLFS
|
|
|
|
config ARCH_SPARC
|
|
bool "sparc" if BOOK_CLFS
|
|
|
|
config ARCH_ALPHA
|
|
bool "alpha" if !BOOK_CLFS3
|
|
|
|
config ARCH_ARM
|
|
bool "arm" if !BOOK_CLFS
|
|
|
|
config ARCH_HPPA
|
|
bool "hppa" if BOOK_CLFS2
|
|
endchoice
|
|
|
|
choice
|
|
prompt "Hardware Platform"
|
|
depends on BOOK_CLFS3 && ARCH_MIPS
|
|
default PLATFORM_GENERIC
|
|
help
|
|
Choose a destination platform
|
|
Platform specific files will be included
|
|
|
|
config PLATFORM_GENERIC
|
|
bool "Generic platform"
|
|
|
|
config PLATFORM_WRT
|
|
bool "WRT - MIPS based wireless router" if ARCH_MIPS
|
|
endchoice
|
|
|
|
choice
|
|
prompt "Library"
|
|
depends on (BOOK_CLFS && !ARCH_ALPHA) || (BOOK_CLFS3 && ARCH_MIPS)
|
|
default DATA_32
|
|
help
|
|
Choose the target system libraries type
|
|
|
|
config DATA_32
|
|
bool "32-bit"
|
|
|
|
config DATA_64
|
|
bool "64-bit"
|
|
|
|
config DATA_MULTI
|
|
bool "multilib" if !(BOOK_CLFS3 && ARCH_MIPS )
|
|
endchoice
|
|
|
|
choice
|
|
prompt "Processor type"
|
|
depends on (BOOK_CLFS || BOOK_CLFS2 || BOOK_CLFS3) && ((ARCH_X86 && !(DATA_64 || DATA_MULTI)) || ARCH_MIPS || ARCH_HPPA || ARCH_ALPHA || (ARCH_SPARC && (DATA_64 || DATA_MULTI)) || (ARCH_ARM && BOOK_CLFS3))
|
|
help
|
|
Choose the target system processor
|
|
|
|
config PROC_i486
|
|
bool "486 Compatibles" if ARCH_X86
|
|
|
|
config PROC_i586
|
|
bool "Pentium, K6, 586 Compatibles" if ARCH_X86
|
|
|
|
config PROC_i686
|
|
bool "Pentium II, Pentium III, Pentium 4, Athlon, Duron" if ARCH_X86
|
|
|
|
config PROC_mipsel
|
|
bool "MIPS Little Endian" if ARCH_MIPS
|
|
|
|
config PROC_mips
|
|
bool "MIPS Big Endian" if ARCH_MIPS
|
|
|
|
config PROC_unknown
|
|
bool "Unknown" if ARCH_HPPA || ARCH_ALPHA
|
|
|
|
config PROC_hppa1
|
|
bool "PA 7000 Series" if ARCH_HPPA
|
|
|
|
config PROC_hppa2
|
|
bool "PA 8000 Series" if ARCH_HPPA
|
|
|
|
config PROC_EV5
|
|
bool "EV5 Series" if ARCH_ALPHA
|
|
|
|
config PROC_EV56
|
|
bool "EV56 Series" if ARCH_ALPHA
|
|
|
|
config PROC_PCA56
|
|
bool "PCA56 Series" if ARCH_ALPHA
|
|
|
|
config PROC_PCA57
|
|
bool "PCA57 Series" if ARCH_ALPHA
|
|
|
|
config PROC_EV6
|
|
bool "EV6 Series" if ARCH_ALPHA
|
|
|
|
config PROC_EV67
|
|
bool "EV67 Series" if ARCH_ALPHA
|
|
|
|
config PROC_EV68
|
|
bool "EV68 Series" if ARCH_ALPHA
|
|
|
|
config PROC_ARM
|
|
bool "Generic arm, little endian" if ARCH_ARM
|
|
|
|
config PROC_ARM5L
|
|
bool "Generic arm, version 5, little endian" if ARCH_ARM
|
|
|
|
config PROC_ARM5B
|
|
bool "Generic arm, version 5, big endian" if ARCH_ARM
|
|
|
|
config PROC_ULTRA1
|
|
bool "UtraSparc" if ARCH_SPARC && (DATA_64 || DATA_MULTI)
|
|
|
|
config PROC_ULTRA2
|
|
bool "UtraSparc2" if ARCH_SPARC && (DATA_64 || DATA_MULTI)
|
|
|
|
config PROC_ULTRA3
|
|
bool "UtraSparc3" if ARCH_SPARC && (DATA_64 || DATA_MULTI)
|
|
endchoice
|
|
|
|
choice
|
|
prompt "MIPS 64 ABI"
|
|
depends on BOOK_CLFS3 && ARCH_MIPS && DATA_64
|
|
default ABI_64
|
|
help
|
|
Choose the target system ABI to use
|
|
|
|
config ABI_32
|
|
bool "o32"
|
|
|
|
config ABI_N32
|
|
bool "n32"
|
|
|
|
config ABI_64
|
|
bool "n64"
|
|
endchoice
|
|
|
|
config TARGET
|
|
string
|
|
default "i486-pc-linux-gnu" if !BOOK_CLFS3 && PROC_i486
|
|
default "i586-pc-linux-gnu" if !BOOK_CLFS3 && PROC_i586
|
|
default "i686-pc-linux-gnu" if !BOOK_CLFS3 && PROC_i686
|
|
|
|
default "i486-pc-linux-uclibc" if BOOK_CLFS3 && PROC_i486
|
|
default "i586-pc-linux-uclibc" if BOOK_CLFS3 && PROC_i586
|
|
default "i686-pc-linux-uclibc" if BOOK_CLFS3 && PROC_i686
|
|
|
|
default "x86_64-unknown-linux-gnu" if ARCH_X86 && (DATA_64 || DATA_MULTI)
|
|
|
|
default "mipsel-unknown-linux-gnu" if !BOOK_CLFS3 && PROC_mipsel && DATA_32
|
|
default "mips-unknown-linux-gnu" if !BOOK_CLFS3 && PROC_mips && DATA_32
|
|
default "mips64el-unknown-linux-gnu" if !BOOK_CLFS3 && PROC_mipsel && (DATA_64 || DATA_MULTI)
|
|
default "mips64-unknown-linux-gnu" if !BOOK_CLFS3 && PROC_mips && (DATA_64 || DATA_MULTI)
|
|
|
|
default "mipsel-unknown-linux-uclibc" if BOOK_CLFS3 && PROC_mipsel && DATA_32
|
|
default "mips-unknown-linux-uclibc" if BOOK_CLFS3 && PROC_mips && DATA_32
|
|
default "mips64el-unknown-linux-uclibc" if BOOK_CLFS3 && PROC_mipsel && DATA_64
|
|
default "mips64-unknown-linux-uclibc" if BOOK_CLFS3 && PROC_mips && DATA_64
|
|
|
|
default "powerpc-unknown-linux-gnu" if ARCH_PPC && DATA_32
|
|
default "powerpc64-unknown-linux-gnu" if ARCH_PPC && (DATA_MULTI || DATA_64)
|
|
|
|
default "sparc-unknown-linux-gnu" if ARCH_SPARC && DATA_32
|
|
default "sparc64-unknown-linux-gnu" if ARCH_SPARC && (DATA_64 || DATA_MULTI)
|
|
|
|
default "hppa-unknown-linux-gnu" if PROC_unknown && ARCH_HPPA
|
|
default "hppa1.1-unknown-linux-gnu" if PROC_hppa1
|
|
default "hppa2.0-unknown-linux-gnu" if PROC_hppa2
|
|
|
|
default "arm-unknown-linux-gnueabi" if ARCH_ARM && BOOK_CLFS2
|
|
|
|
default "arm-unknown-linux-uclibc" if PROC_ARM
|
|
default "armv5l-unknown-linux-uclibc" if PROC_ARM5L
|
|
default "armv5b-unknown-linux-uclibc" if PROC_ARM5B
|
|
|
|
default "alpha-unknown-linux-gnu" if PROC_unknown && ARCH_ALPHA
|
|
default "alphaev5-unknown-linux-gnu" if PROC_EV5
|
|
default "alphaev56-unknown-linux-gnu" if PROC_EV56
|
|
default "alphapca56-unknown-linux-gnu" if PROC_PCA56
|
|
default "alphapca57-unknown-linux-gnu" if PROC_PCA57
|
|
default "alphaev6-unknown-linux-gnu" if PROC_EV6
|
|
default "alphaev67-unknown-linux-gnu" if PROC_EV67
|
|
default "alphaev68-unknown-linux-gnu" if PROC_EV68
|
|
|
|
config TARGET32
|
|
string
|
|
depends on DATA_MULTI
|
|
default "i686-pc-linux-gnu" if ARCH_X86
|
|
default "mipsel-unknown-linux-gnu" if PROC_mipsel
|
|
default "mips-unknown-linux-gnu" if PROC_mips
|
|
default "sparc-unknown-linux-gnu" if ARCH_SPARC
|
|
default "powerpc-unknown-linux-gnu" if ARCH_PPC
|
|
|
|
config PLATFORM
|
|
string
|
|
default "GENERIC" if (!BOOK_CLFS3) || PLATFORM_GENERIC
|
|
default "WRT - Wireless Router" if PLATFORM_WRT
|
|
|
|
config SPARC64_PROC
|
|
string
|
|
default "none" if !(ARCH_SPARC && (DATA_64 || DATA_MULTI))
|
|
default "1" if PROC_ULTRA1
|
|
default "2" if PROC_ULTRA2
|
|
default "3" if PROC_ULTRA3
|
|
|
|
config ARCH
|
|
string
|
|
default "x86" if ARCH_X86 && (DATA_32 || BOOK_CLFS2 || BOOK_CLFS3)
|
|
default "x86_64" if ARCH_X86 && DATA_MULTI
|
|
default "x86_64-64" if ARCH_X86 && DATA_64
|
|
|
|
default "wrt" if PLATFORM_WRT && BOOK_CLFS3
|
|
|
|
default "mips" if ARCH_MIPS && (DATA_32 || BOOK_CLFS3)
|
|
default "mips64" if ARCH_MIPS && DATA_MULTI
|
|
default "mips64-64" if ARCH_MIPS && DATA_64 && BOOK_CLFS
|
|
|
|
|
|
default "ppc" if ARCH_PPC && DATA_32
|
|
default "ppc64" if ARCH_PPC && DATA_MULTI
|
|
default "ppc64-64" if ARCH_PPC && DATA_64
|
|
|
|
default "sparc" if ARCH_SPARC && DATA_32
|
|
default "sparc64" if ARCH_SPARC && DATA_MULTI
|
|
default "sparc64-64" if ARCH_SPARC && DATA_64
|
|
|
|
default "alpha" if ARCH_ALPHA
|
|
default "arm" if ARCH_ARM
|
|
default "hppa" if ARCH_HPPA
|
|
|
|
config MIPS_LEVEL
|
|
string
|
|
depends on BOOK_CLFS3 && ARCH_MIPS
|
|
default "1" if DATA_32
|
|
default "3" if DATA_64
|
|
|
|
config ABI
|
|
string
|
|
depends on BOOK_CLFS3
|
|
default "-m32" if ARCH_X86 || ARCH_ARM
|
|
# default "-m64" if NO USED YET IN THE BOOK
|
|
default "-mabi=32" if ABI_32 || (ARCH_MIPS && DATA_32)
|
|
default "-mabi=n32" if ABI_N32
|
|
default "-mabi=64" if ABI_64
|
|
|
|
config ENDIAN
|
|
string
|
|
depends on BOOK_CLFS3 && (ARCH_MIPS || ARCH_ARM)
|
|
default "little" if PROC_mipsel || PROC_ARM || PROC_ARM5L
|
|
default "big" if PROC_mips || PROC_ARM5B
|
|
|
|
choice
|
|
prompt "Build method"
|
|
depends on BOOK_CLFS
|
|
help
|
|
What build method should be used: a chroot jail or minimal boot
|
|
system. Review the Cross-LFS book chap6 "TO BOOT OR CHROOT" for
|
|
a full explanation.
|
|
|
|
config BUILD_CHROOT
|
|
bool "chroot"
|
|
|
|
config BUILD_BOOT
|
|
bool "boot"
|
|
endchoice
|
|
|
|
config METHOD
|
|
string
|
|
default "chroot" if BUILD_CHROOT
|
|
default "boot" if BUILD_BOOT
|
|
|
|
config BOOT_CONFIG
|
|
string "BOOT kernel config file (mandatory)"
|
|
default "***EDIT ME***"
|
|
depends on BUILD_BOOT
|
|
help
|
|
If METHOD=boot, location of boot-kernel config file
|
|
The config file will be copied to ${BUILD_DIR}/sources
|
|
and renamed 'bootkernel-config'
|
|
NOTE: this setting is required
|
|
#--- End CLFS specific params
|
|
|
|
#--- blfs-tool Support
|
|
config BLFS_TOOL
|
|
bool "Add blfs-tool support"
|
|
default n
|
|
depends on !BOOK_CLFS3 && !BOOK_BLFS
|
|
help
|
|
Activating this option will install additional packages needed
|
|
to use blfs tools after booting the new system.
|
|
The blfs-tool files will be installed under $BUILD_DIR/blfs_root
|
|
(see below).
|
|
After booting the new xLFS system, but before using the blfs tools,
|
|
you should create a user account, move the /blfs_root directory
|
|
to that user's home, and change its ownership to that of the user.
|
|
Also, be sure to give the user read and write access on the
|
|
$TRACKING_DIR directory and the files that it contains.
|
|
Don't forget to configure sudo properly on the new system.
|
|
|
|
config DUMMY # Avoid indenting the items below
|
|
bool
|
|
|
|
if BLFS_TOOL
|
|
menu "blfs-tool dependencies"
|
|
|
|
config DEP_LIBXML
|
|
bool "libxml2 (required)"
|
|
default y
|
|
|
|
config DEP_LIBXSLT
|
|
bool "libxslt (required)"
|
|
default y
|
|
|
|
config DEP_DBXML
|
|
bool "DocBook XML DTD (required)"
|
|
default y
|
|
|
|
config DEP_LYNX
|
|
bool "lynx (optional, for reading the generated book)"
|
|
default y
|
|
|
|
config DEP_SUDO
|
|
bool "sudo (recommended)"
|
|
default y
|
|
|
|
config DEP_WGET
|
|
bool "wget (recommended)"
|
|
default y
|
|
|
|
config DEP_GPM
|
|
bool "GPM (optional, see help)"
|
|
default n
|
|
help
|
|
if you install gpm, it will be started
|
|
automatically on boot. It allows copy-paste
|
|
while Xorg is not installed.
|
|
|
|
config DEP_SVN
|
|
bool "SVN client (optional, see help)"
|
|
default n
|
|
help
|
|
Subversion is needed for updating the book
|
|
sources. You do not need it if building a
|
|
stable book.
|
|
|
|
endmenu
|
|
|
|
choice
|
|
prompt "BLFS Release"
|
|
default BLFS_SVN
|
|
|
|
config BLFS_SVN
|
|
bool "BLFS SVN"
|
|
help
|
|
Current development version as in trunk
|
|
|
|
config BLFS_WORKING_COPY
|
|
bool "BLFS working copy"
|
|
help
|
|
A local working copy of the BLFS book.
|
|
|
|
config BLFS_BRANCH
|
|
bool "BLFS Branch or stable book"
|
|
help
|
|
A supported SVN branch or stable book release
|
|
endchoice
|
|
|
|
config BLFS_WC_LOCATION
|
|
string "Location of the local BLFS working copy (mandatory)"
|
|
default "**EDIT ME**"
|
|
depends on BLFS_WORKING_COPY
|
|
help
|
|
Full path to the BLFS book working copy
|
|
|
|
config BLFS_BRANCH_ID
|
|
string "BLFS Book Version (mandatory)"
|
|
default "**EDIT ME**"
|
|
depends on BLFS_BRANCH
|
|
help
|
|
A list of valid branches and stable book IDs is available at
|
|
http://wiki.linuxfromscratch.org/alfs/wiki/SupportedBooks.
|
|
endif
|
|
#--- End blfs-tool Support
|
|
|
|
#--- BLFS params (Used for installing the tools, either after a jhalfs run
|
|
# or directly)
|
|
config BLFS_ROOT
|
|
string "Root of the tools directory (see help)"
|
|
default "/blfs_root"
|
|
depends on BLFS_TOOL || BOOK_BLFS
|
|
help
|
|
Path to the directory where all required files and scripts
|
|
will be stored.
|
|
|
|
This path must begin with a slash, and:
|
|
- is relative to the user's HOME directory when installing the
|
|
blfs tools on an already existing LFS system.
|
|
- is relative to the root of the build directory (`/' in chroot)
|
|
when adding the tools after a jhalfs run
|
|
|
|
CAUTION: this directory will be removed if it already exists.
|
|
|
|
config BLFS_XML
|
|
string "BLFS sources directory (internal parameter)"
|
|
default "blfs-xml"
|
|
depends on BLFS_TOOL || BOOK_BLFS
|
|
help
|
|
The directory name under $BLFS_ROOT where the BLFS
|
|
book sources will be copied or checked out. Do not change that
|
|
unless you know what you are doing...
|
|
|
|
config LFS_XML
|
|
string "LFS sources directory (internal parameter)"
|
|
default "lfs-xml"
|
|
depends on BLFS_TOOL || BOOK_BLFS
|
|
help
|
|
The directory name under $BLFS_ROOT where the LFS
|
|
book sources will be copied or checked out. Do not change that
|
|
unless you know what you are doing...
|
|
|
|
choice
|
|
prompt "LFS Release"
|
|
default LFS_relSVN
|
|
depends on BOOK_BLFS
|
|
|
|
config LFS_relSVN
|
|
bool "LFS SVN"
|
|
help
|
|
Current development version as in trunk
|
|
|
|
config LFS_WORKING_COPY
|
|
bool "LFS working copy"
|
|
help
|
|
A local working copy of the LFS book.
|
|
|
|
config LFS_BRANCH
|
|
bool "LFS Branch or stable book"
|
|
help
|
|
A supported SVN branch or stable book release
|
|
endchoice
|
|
|
|
config BLFS_LFS_BOOK
|
|
string "Location of the local LFS working copy (mandatory)"
|
|
default "**EDIT ME**"
|
|
depends on LFS_WORKING_COPY
|
|
help
|
|
Full path to the LFS book working copy"
|
|
|
|
config BLFS_LFS_BRANCH_ID
|
|
string "LFS Book Version (mandatory)"
|
|
default "**EDIT ME**"
|
|
depends on LFS_BRANCH
|
|
help
|
|
A list of valid branches and stable book IDs is available at
|
|
http://wiki.linuxfromscratch.org/alfs/wiki/SupportedBooks.
|
|
# End of BLFS parameters
|
|
|
|
#--- Custom Tools support
|
|
config CUSTOM_TOOLS
|
|
depends on !BOOK_BLFS
|
|
bool "Add custom tools support"
|
|
default n
|
|
help
|
|
Activating this option additional packages you create
|
|
will be installed after finished the xLFS system build.
|
|
#--- End Custom Tools support
|
|
|
|
#--- This direcotry is needed for blfs tools installation and custom tools
|
|
# As well.
|
|
config TRACKING_DIR
|
|
string "Installed packages database directory"
|
|
default "/var/lib/jhalfs/BLFS"
|
|
depends on BOOK_BLFS || BLFS_TOOL || CUSTOM_TOOLS
|
|
help
|
|
Full path to the directory where the database of
|
|
installed packages will be created.
|
|
|
|
If the blfs tools are installed on a running xLFS system,
|
|
the user must have enough privileges to create this directory.
|
|
It may be necessary to create the /var/lib/jhalfs directory as
|
|
root, and make it writable by the user before running this tool.
|
|
|
|
If you are installing the blfs tools as part of an xLFS build
|
|
and/or using the customized scripts feature, you will
|
|
need to fix this directory's permissions after booting
|
|
the new system.
|
|
|
|
Note that the user that will build the packages must
|
|
have read and write access to this directory.
|
|
|
|
#--- End BOOK Settings
|
|
endmenu
|
|
|
|
menu "General Settings"
|
|
depends on !BOOK_BLFS && !REBUILD_MAKEFILE
|
|
|
|
#--- {C,H,}LFS User Account
|
|
|
|
config LUSER
|
|
string
|
|
default "lfs" if BOOK_LFS || BOOK_LFS_SYSD
|
|
default "clfs" if BOOK_CLFS || BOOK_CLFS2 || BOOK_CLFS3
|
|
default "hlfs" if BOOK_HLFS
|
|
|
|
config LGROUP
|
|
string
|
|
default LUSER
|
|
|
|
config LHOME
|
|
string
|
|
default "/home"
|
|
|
|
#--- End Set User Account
|
|
|
|
config BUILDDIR
|
|
string "Build Directory"
|
|
default "/mnt/build_dir"
|
|
help
|
|
#-- The directory where the created system will be located.
|
|
# NOTE: A working directory named jhalfs will be created
|
|
# here, so ensure this does not conflict with the jhalfs
|
|
# source directory.
|
|
|
|
config GETPKG
|
|
bool "Retrieve source files"
|
|
default n
|
|
help
|
|
#-- Download all packages and patches required by the selected book
|
|
# NOTE: Looks for files in the local archive defined by SRC_ARCHIVE
|
|
# first and if necessary retrieves them from the 'net.
|
|
# Files will be transferred to $BUILDDIR/sources.
|
|
|
|
config SRC_ARCHIVE
|
|
string "Package Archive Directory"
|
|
default "$SRC_ARCHIVE"
|
|
depends on GETPKG
|
|
help
|
|
#-- A local archive for packages/files (not $BUILDDIR/sources)
|
|
# Any missing file will be downloaded and archived here,
|
|
# if the user has the right privileges.
|
|
|
|
config RETRYSRCDOWNLOAD
|
|
bool "Retry on 'connection refused' failure"
|
|
default n
|
|
depends on GETPKG
|
|
help
|
|
#-- Attempt to download a source package again if it fails
|
|
# with a 'connection refused' error. This can happen on
|
|
# servers that are overloaded.
|
|
|
|
config RETRYDOWNLOADCNT
|
|
int "Number of retry attempts on download failures"
|
|
default 20
|
|
depends on GETPKG
|
|
help
|
|
#-- Number of times to retry a failed download.
|
|
|
|
config DOWNLOADTIMEOUT
|
|
int "Download timeout (in seconds)"
|
|
default 30
|
|
depends on GETPKG
|
|
help
|
|
#-- Number of seconds to wait for a download to start before
|
|
# timing out.
|
|
|
|
config SERVER
|
|
string "FTP mirror"
|
|
default "http://ftp.osuosl.org"
|
|
depends on GETPKG
|
|
help
|
|
#-- FTP mirror to download packages and patches if not found
|
|
# in $SRC_ARCHIVE
|
|
# As a last resort, the files will downloaded from upstream,
|
|
# if possible.
|
|
|
|
config RUNMAKE
|
|
bool "Run the makefile"
|
|
default n
|
|
help
|
|
#-- Automatically run the makefile once it has been created
|
|
|
|
config CLEAN
|
|
bool "Rebuild files"
|
|
default n
|
|
help
|
|
#-- Clean the build directory before performing any other task.
|
|
# The directory is cleaned only if it was populated by a
|
|
# previous JHALFS run.
|
|
|
|
#--- End General Settings
|
|
endmenu
|
|
|
|
menu "Build Settings"
|
|
depends on !BOOK_BLFS && !REBUILD_MAKEFILE
|
|
|
|
#--- Test Suites
|
|
config CONFIG_TESTS
|
|
bool "Run testsuites"
|
|
depends on !BOOK_CLFS2 && !BOOK_CLFS3
|
|
default y
|
|
help
|
|
#-- Run test suites
|
|
# If you select 'y' here:
|
|
# You will have to select between:
|
|
# - Only critical final system testsuites
|
|
# - All final system testsuites
|
|
# - Both temporary tools and final system testsuites
|
|
# You will be prompted also about the "flavour" of the
|
|
# testsuites run:
|
|
# - Don't stop on test suite failures
|
|
# - Abort the build at the first test suite failure
|
|
#
|
|
# Note that in any case, all the test instructions will
|
|
# be generated. Those which are not wanted will be commented
|
|
# out. If you select 'n' here, the commented test instructions
|
|
# do not stop on test suite failures.
|
|
#
|
|
# HLFS and CLFS have no testsuites available in the
|
|
# temporary tools phase
|
|
|
|
menu "Test settings"
|
|
depends on CONFIG_TESTS
|
|
choice
|
|
prompt "Tests level"
|
|
default TST_1
|
|
|
|
config TST_1
|
|
bool "Only final system critical testsuites"
|
|
help
|
|
#-- Critical tests:
|
|
# Only Glibc, Binutils, GMP, MPFR, MPC and GCC
|
|
# testsuites for final system. The others are commented
|
|
# out.
|
|
|
|
config TST_2
|
|
bool "All final system testsuites"
|
|
help
|
|
#-- All final system test suites:
|
|
# Test instructions for the temporary tools (if available)
|
|
# are commented out.
|
|
|
|
config TST_3
|
|
bool "All testsuites" if !BOOK_HLFS && !BOOK_CLFS
|
|
help
|
|
#-- All tests:
|
|
# Runs all the testsuites for both temporary tools (if
|
|
# available) and final system
|
|
endchoice
|
|
|
|
choice
|
|
prompt "Flavour"
|
|
|
|
config NO_BOMB
|
|
bool "Don't stop on test failures"
|
|
|
|
config BOMB
|
|
bool "Abort the build on the first test failure"
|
|
endchoice
|
|
|
|
endmenu # test settings
|
|
|
|
config TEST
|
|
int
|
|
default "0" if !CONFIG_TESTS
|
|
default "1" if TST_1
|
|
default "2" if TST_2
|
|
default "3" if TST_3
|
|
|
|
config BOMB_TEST
|
|
bool
|
|
default n if NO_BOMB
|
|
default y if BOMB
|
|
#--- End Test Suites
|
|
|
|
#--- Package Management
|
|
config PKGMNGT
|
|
bool "Package management"
|
|
depends on BOOK_LFS || BOOK_LFS_SYSD
|
|
default n
|
|
help
|
|
#-- Use package management
|
|
#
|
|
# If set, you'll have to choose between
|
|
# two package management styles:
|
|
# - Build and install:
|
|
# the packages in the final phase are built
|
|
# in a separate directory, PKG_DEST.
|
|
# You should provide a bash function for
|
|
# packaging and installing the package.
|
|
# - Preload a library before install:
|
|
# Run the install instructions inside a
|
|
# wrapper command, which monitors the
|
|
# installed files.
|
|
#
|
|
# Also, you have to provide the instructions
|
|
# to build the package manager during the
|
|
# temporary tools phase, in the form of a
|
|
# sect1 of the book identical to a package
|
|
# sect1. See README.PACKAGE_MANAGEMENT
|
|
#
|
|
# For now, this only works with LFS
|
|
choice
|
|
depends on PKGMNGT
|
|
prompt "Package management style"
|
|
default PKG_PACK
|
|
|
|
config PKG_PACK
|
|
bool "Build and pack (pacman or dpkg style)"
|
|
|
|
config LIB_LOAD
|
|
bool "Preload a library before installing (porg style)"
|
|
endchoice
|
|
|
|
config WRAP_INSTALL
|
|
bool
|
|
default y if LIB_LOAD
|
|
default n if PKG_PACK
|
|
#--- End package management
|
|
|
|
#--- Installed files logs
|
|
config INSTALL_LOG
|
|
bool "Create a log of installed files for each package"
|
|
default n
|
|
help
|
|
#-- Select this if you want to create logs of the files
|
|
# installed by each package on the final system.
|
|
|
|
#--- End Installed files logs
|
|
|
|
config STRIP
|
|
bool "Strip Installed Binaries/Libraries"
|
|
default n
|
|
depends on !BOOK_CLFS3
|
|
|
|
config DEL_LA_FILES
|
|
bool "Remove libtool .la files"
|
|
default y
|
|
help
|
|
#-- Remove files libxxx.la installed by libtool. For a rationale
|
|
# see https://blog.flameeyes.eu/tags/lafiles/
|
|
|
|
config NO_PROGRESS_BAR
|
|
bool "DO NOT use/display progress_bar"
|
|
default n
|
|
help
|
|
#-- Do not use the progress bar routine. On slower machines
|
|
# this function consumes precious CPU cycles.
|
|
|
|
#--- End Build Settings
|
|
endmenu
|
|
|
|
menu "System configuration"
|
|
depends on !BOOK_BLFS && !REBUILD_MAKEFILE
|
|
|
|
#--- FSTAB
|
|
config HAVE_FSTAB
|
|
bool "Use a custom fstab file"
|
|
default n
|
|
help
|
|
#-- Select this if you have an fstab file with entries
|
|
# for the target system
|
|
|
|
config FSTAB
|
|
string "Fstab file (optional)"
|
|
default "***EDIT ME***"
|
|
depends on HAVE_FSTAB
|
|
help
|
|
#-- The location of fstab file (if empty, a template is created)
|
|
#--- End FSTAB
|
|
|
|
#--- Kernel
|
|
config CONFIG_BUILD_KERNEL
|
|
bool "Build the kernel"
|
|
default n
|
|
help
|
|
#-- Select this option if you wish to build the kernel.
|
|
#
|
|
# You will be prompted for the full path to the .config
|
|
# file. It will be copied to the 'sources' directory and
|
|
# renamed kernel-config
|
|
|
|
config CONFIG
|
|
string "Kernel config file"
|
|
default "***EDIT ME***"
|
|
depends on CONFIG_BUILD_KERNEL
|
|
help
|
|
#-- Fully qualified path to a kernel config file
|
|
# The config file will be copied to ${BUILD_DIR}/sources
|
|
# and renamed 'kernel-config'
|
|
#--- End Kernel
|
|
|
|
config NCURSES5
|
|
bool "Install non-wide-character ncurses"
|
|
default n
|
|
depends on BOOK_LFS || BOOK_LFS_SYSD
|
|
help
|
|
#-- Install the optional non wide character ncurses5 library
|
|
|
|
config TIMEZONE
|
|
string "TimeZone"
|
|
default "GMT"
|
|
help
|
|
#-- The timezone as output by tzselect
|
|
# This will be copied to /etc/localtime
|
|
|
|
config LANG
|
|
string "Language"
|
|
default "$LANG"
|
|
help
|
|
#-- LANG variable set in /etc/profile
|
|
# See http://sourceware.org/git/?p=glibc.git;a=blob;f=localedata/SUPPORTED
|
|
# for values (or the file localedata/SUPPORTED in glibc tarball)
|
|
|
|
config FULL_LOCALE
|
|
bool "Install the full set of locales"
|
|
default n
|
|
help
|
|
#-- If set to y, the full set of supported locales
|
|
# will be installed. Otherwise, only the minimal set
|
|
# necessary for the tests will be installed,
|
|
# together with the locale associated with the
|
|
# LANG you have chosen, if not in the minimal set.
|
|
|
|
#--- Groff page
|
|
choice
|
|
prompt "Groff page size"
|
|
default PAGE_LETTER
|
|
help
|
|
#-- Page definition for groff: letter or A4
|
|
|
|
config PAGE_LETTER
|
|
bool "letter"
|
|
|
|
config PAGE_A4
|
|
bool "A4"
|
|
endchoice
|
|
|
|
config PAGE
|
|
string
|
|
default "letter" if PAGE_LETTER
|
|
default "A4" if PAGE_A4
|
|
#--- End Groff page
|
|
|
|
config HOSTNAME
|
|
string "Hostname (see help)"
|
|
default "**EDITME**"
|
|
help
|
|
If you are on a public network, use the hostname given to you by
|
|
your institution, or corporation, etc. If your network is private,
|
|
that is, behind a firewall such as a box to connect to your ISP,
|
|
you can choose anything you'd like. Combined with the domain name
|
|
"local", you have the possibility to access your computer by name
|
|
instead of address on the private network (see RFC 6762 and
|
|
https://www.howtogeek.com/167190/).
|
|
|
|
menu "Network configuration"
|
|
config INTERFACE
|
|
string "netword card name"
|
|
default "eth0"
|
|
help
|
|
eth0 is used in most cases. Virtual insterfaces may get other
|
|
names (for example enp0s3 for the default network stack in qemu).
|
|
Systemd may also rename network interfaces according to their
|
|
bus addresses.
|
|
config IP_ADDR
|
|
string "Static IP address"
|
|
default "10.0.2.9"
|
|
help
|
|
The default here is for a virtual interface in qemu. Private
|
|
networks have addresses in the range 10.x.x.x or 192.169.x.x.
|
|
You have to know your network prefix. Then the last figure
|
|
may be anything you like.
|
|
|
|
config GATEWAY
|
|
string "Gateway"
|
|
default "10.0.2.2"
|
|
help
|
|
Again, this default is for a qemu network stack. Usually, the
|
|
gateway is the address of your firewall.
|
|
config PREFIX
|
|
string "Subnet prefix"
|
|
default "24"
|
|
help
|
|
Again, this default is for a qemu network stack, but is also
|
|
the most used in private networks.
|
|
config BROADCAST
|
|
string "Broadcast address"
|
|
default "10.0.2.255"
|
|
config DOMAIN
|
|
string "Domain name (see help)"
|
|
default "local"
|
|
help
|
|
Domain Name:
|
|
Doamin names are registered, so if your computer is on a public
|
|
network, you cannot use any name you'd like. On a public
|
|
network, you should have been given a domain name by
|
|
your corporation, institution, etc.
|
|
If your network is really private, that is behind a firewall
|
|
such as a box for connecting to an ISP, you can choose any
|
|
domain you'd like. You can also opt for "local", see RFC 6762,
|
|
or "something.test", see RFC 6761.
|
|
config DNS1
|
|
string "Primary Name server"
|
|
default "10.0.2.3"
|
|
config DNS2
|
|
string "Secondary Name server"
|
|
default "8.8.8.8"
|
|
endmenu # Network configuration
|
|
|
|
menu "Console configuration"
|
|
config FONT
|
|
string "Console font"
|
|
default "lat0-16"
|
|
help
|
|
Unicode mode is set by default. Setting FONT_MAP, FONT_UNIMAP,
|
|
etc, must be done manually.
|
|
config KEYMAP
|
|
string "Keymap name"
|
|
default "us"
|
|
config LOCAL
|
|
boolean "Hardware clock is set to local time"
|
|
default n
|
|
help
|
|
If the harware clock is set to local time, answer yes,
|
|
If it is set to UTC, answer no
|
|
config LOG_LEVEL
|
|
string "Default log level (1-8)"
|
|
default "4"
|
|
depends on BOOK_LFS
|
|
help
|
|
This can be changed using dmesg. 1 means "no message",
|
|
8 shows every message sent by the kernel, which is very
|
|
noisy. The default at boot time is 7, which is quite
|
|
noisy too.
|
|
endmenu # Console configuration
|
|
|
|
endmenu #--- System configuration
|
|
|
|
menu "Advanced Features"
|
|
depends on !BOOK_BLFS && !REBUILD_MAKEFILE
|
|
|
|
config REPORT
|
|
bool "Create SBU and disk usage report"
|
|
default y
|
|
|
|
config SAVE_CH5
|
|
bool "Save Chapter 5 work"
|
|
depends on BOOK_LFS || BOOK_LFS_SYSD
|
|
default n
|
|
help
|
|
Save the state of jhalfs at the end of chapter 5:
|
|
|
|
if you tick this item, the whole $LFS directory is
|
|
saved when chapter 5 is finished. It'll be in an xz
|
|
compressed tarball in the $LFS/jhalfs directory
|
|
|
|
#--- ICA
|
|
config COMPARE
|
|
bool "Run comparison analysis on final stage"
|
|
depends on !BOOK_CLFS2 && !BOOK_CLFS3
|
|
default n
|
|
help
|
|
#-- Should an iterative comparison analysis be performed?
|
|
#
|
|
# Unless you are familiar with ICA, do not
|
|
# select this option
|
|
#
|
|
# ICA is an analysis tool for comparing one
|
|
# build to the next. Builds mays differ from one iteration
|
|
# to another due to the build order and this tool try
|
|
# to ferret out those differences by examining the stored
|
|
# build logs and binary files.
|
|
#
|
|
# The scripts are well commented and can be found in ./extras/*
|
|
#
|
|
|
|
config ITERATIONS
|
|
int "Number of test runs (2,3,4,5)" if COMPARE
|
|
depends on COMPARE
|
|
range 2 5
|
|
default 3
|
|
|
|
config RUN_ICA
|
|
bool
|
|
default y if COMPARE
|
|
|
|
#--- End ICA
|
|
|
|
#--- Optimizations
|
|
if !BOOK_CLFS2 && !BOOK_CLFS3
|
|
config CONFIG_OPTIMIZE
|
|
bool "Optimization and parallelization"
|
|
default n
|
|
help
|
|
# Opens a menu for various optimization settings:
|
|
# Actual optimization flags MUST be defined in ./optimize/*
|
|
# before activating this option.
|
|
#
|
|
# WARNING: The use of build optimizations may lead to build issues.
|
|
# If the system doesn't work as expected, please rebuild
|
|
# without optimizations before asking for support.
|
|
menu "Optimization settings"
|
|
depends on CONFIG_OPTIMIZE
|
|
|
|
config N_PARALLEL
|
|
int "Number of parallel `make' jobs"
|
|
default 1
|
|
help
|
|
#-- The usual recommandation is (number of CPU cores)+1
|
|
# Do not set for meaningful SBU calculations.
|
|
|
|
choice
|
|
prompt "Optimization level"
|
|
default OPT_1
|
|
help
|
|
#-- Optimization values are set in optimize/* files
|
|
|
|
config OPT_1
|
|
bool "Final system only"
|
|
|
|
config OPT_2
|
|
bool "Both temp tools and final system"
|
|
|
|
config OPT_3
|
|
bool "Cross tools (only MAKEFLAGS), temp tools and final system" if BOOK_CLFS
|
|
endchoice
|
|
|
|
config REALSBU
|
|
bool "Build Binutls pass1 without optimization (Real SBU)"
|
|
depends on (BOOK_LFS || BOOK_LFS_SYSD) && OPT_2
|
|
default n
|
|
help
|
|
#-- Use -j1 in make invokation for Binutils pass1 to
|
|
# get a valid SBU value.
|
|
|
|
endmenu
|
|
config OPTIMIZE
|
|
int
|
|
default "0" if !CONFIG_OPTIMIZE
|
|
default "1" if OPT_1
|
|
default "2" if OPT_2
|
|
default "3" if OPT_3
|
|
endif
|
|
|
|
#--- End Optimizations
|
|
|
|
#-- Internal Settings
|
|
menu "Internal Settings (WARNING: for jhalfs developers only)"
|
|
|
|
config SCRIPT_ROOT
|
|
string "Scripts root"
|
|
default "jhalfs"
|
|
|
|
config JHALFSDIR
|
|
string "jhalfs directory"
|
|
default "$BUILDDIR/$SCRIPT_ROOT"
|
|
|
|
config LOGDIRBASE
|
|
string "Build logs directory basename"
|
|
default "logs"
|
|
|
|
config LOGDIR
|
|
string "Build logs directory"
|
|
default "$JHALFSDIR/$LOGDIRBASE"
|
|
|
|
config TESTLOGDIRBASE
|
|
string "Test suites logs directory basename"
|
|
default "test-logs"
|
|
|
|
config TESTLOGDIR
|
|
string "Test suites logs directory"
|
|
default "$JHALFSDIR/$TESTLOGDIRBASE"
|
|
|
|
config FILELOGDIRBASE
|
|
string "Installed files logs directory basename"
|
|
default "installed-files"
|
|
|
|
config FILELOGDIR
|
|
string "Installed files logs directory"
|
|
default "$JHALFSDIR/$FILELOGDIRBASE"
|
|
|
|
config ICALOGDIR
|
|
string "ICA logs directory"
|
|
default "$LOGDIR/ICA"
|
|
|
|
config MKFILE
|
|
string "Makefile"
|
|
default "$JHALFSDIR/Makefile"
|
|
|
|
config XSL
|
|
string "XSL stylesheet"
|
|
default "$PROGNAME.xsl"
|
|
|
|
config PKG_LST
|
|
string "Package contents list"
|
|
default "unpacked"
|
|
|
|
#--- End Internal Settings
|
|
endmenu
|
|
|
|
#--- End Advanced Features
|
|
endmenu
|
|
|
|
config REBUILD_MAKEFILE
|
|
# depends on !BOOK_BLFS
|
|
bool "Rebuild the Makefile (see help)"
|
|
default n
|
|
help
|
|
#-- Rebuild the Makefile
|
|
#
|
|
# This option allows to rebuild the Makefile after
|
|
# customizing the base system build scripts.
|
|
#
|
|
# See README.CUSTOM for more info about this feature.
|
|
# Note that you should do that after configuring a jhalfs
|
|
# build, and only if you need changing the build scripts order
|
|
# or add a new one.
|