menu "--- BOOK Settings" #--- BOOK/script choice prompt "Use BOOK" default BOOK_LFS help #-- Select the BOOK/Build style you wish to configure. config BOOK_LFS bool "Linux From Scratch" config BOOK_CLFS bool "Cross-Compiled Linux From Scratch" config BOOK_CLFS2 bool "Cross-Compiled Linux From Scratch (Sysroot method)" config BOOK_CLFS3 bool "Cross-Compiled Linux From Scratch (Embedded Systems)" config BOOK_HLFS bool "Hardened Linux From Scratch" config BOOK_BLFS bool "Beyond Linux From Scratch" endchoice config PROGNAME string default "lfs" if BOOK_LFS default "clfs" if BOOK_CLFS default "clfs2" if BOOK_CLFS2 default "clfs3" if BOOK_CLFS3 default "hlfs" if BOOK_HLFS default "blfs" if BOOK_BLFS config RUN_ME string default "./jhalfs run" if !BOOK_BLFS default "./blfs-tool" if BOOK_BLFS #--- End BOOK/script #--- Book version choice prompt "Release" default relSVN config relSVN bool "SVN" help #-- Current development version as in trunk config WORKING_COPY bool "Working Copy" depends on !BOOK_BLFS help #-- A local working copy config BRANCH bool "Branch or stable book" if !BOOK_CLFS2 && !BOOK_CLFS3 help #-- A supported SVN branch or stable released book endchoice config BRANCH_ID string "Book Version (mandatory)" default "**EDIT ME**" depends BRANCH help #-- A list of valid branches and stable books ID's is available here. # http://wiki.linuxfromscratch.org/alfs/wiki/SupportedBooks config BOOK string "Loc of working copy (mandatory)" default "**EDIT ME**" depends 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 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 BOOK_CLFS3 && ARCH_MIPS default PLATFORM_GENERIC help # Chose 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 (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" if !ARCH_PPC config DATA_MULTI bool "multilib" if !(BOOK_CLFS3 && ARCH_MIPS ) endchoice choice prompt "Processor type" depends (BOOK_CLFS || BOOK_CLFS2 || BOOK_CLFS3) && ((ARCH_X86 && !(DATA_64 || DATA_MULTI)) || ARCH_MIPS || ARCH_HPPA || ARCH_ALPHA || (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 endchoice choice prompt "MIPS 64 ABI" depends 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 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-gnu" 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 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 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 "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 BOOK_CLFS3 && ARCH_MIPS default "1" if DATA_32 default "3" if DATA_64 config ABI string depends BOOK_CLFS3 default "-m32" if ARCH_X86 # 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 choice prompt "Build method" depends 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 #--- HLFS specific params config GRSECURITY_HOST bool "Building on grsecurity enabled host?" default n depends on BOOK_HLFS help #-- If your build system has grsecurity patches applied # you MUST enable this switch. choice prompt "Library" depends on BOOK_HLFS help #-- Which library model to use: uClibc/glibc config LIB_GLIBC bool "glibc" config LIB_UCLIBC bool "uClibc" endchoice config MODEL depends on BOOK_HLFS string default "glibc" if LIB_GLIBC default "uclibc" if LIB_UCLIBC #--- End HLFS specific params #--- Custom Tools support config CUSTOM_TOOLS bool "Add custom tools support" default n depends on !BOOK_BLFS help #--- Activating this option additional packages you create # will be installed after finished the xLFS system build. # #--- End Custom Tools support #--- blfs-tool Support config BLFS_TOOL bool "Add blfs-tool support" default n depends on !BOOK_BLFS && !BOOK_CLFS3 help #--- Activating this option additional packages needed to # use blfs-tool will be installed. # # The blfs-tool files will be installed under # $BUILD_DIR/blfs_root. # After booting the new xLFS system you should to # create an user account and move the /blfs-root # directory to the user's home, making he the # directory and files owner, before start # using blfs-tool. # # Also, be sure to bring to that user read and write # privileges over the $TRACKING_DIR directory and # the files that it contains. # # And don't forget to configure sudo properly. choice prompt "BLFS Release" default BLFS_SVN depends on BLFS_TOOL config BLFS_SVN bool "BLFS SVN" help #-- Current development version as in trunk config BLFS_BRANCH bool "BLFS Branch or stable book" help #-- A supported SVN branch or stable released book endchoice config BLFS_BRANCH_ID string "BLFS Book Version (mandatory)" default "**EDIT ME**" depends on BLFS_BRANCH help #-- A list of valid branches and stable books ID's is available here. # http://wiki.linuxfromscratch.org/alfs/wiki/SupportedBooks menu "blfs-tool dependencies" depends on BLFS_TOOL config DEP_LIBXML bool "libxml2 (required)" default y config DEP_LIBXSLT bool "libxslt (required)" default y config DEP_TIDY bool "tidy (required)" default y config DEP_DBXML bool "DocBook XML DTD (required)" default y config DEP_UNZIP bool "UnZip (required to install DocBook XML DTD)" default y depends on DEP_DBXML config DEP_DBXSL bool "DocBook XSL (required)" default y config DEP_LINKS bool "links (required)" default y config DEP_SUDO bool "sudo (recommended)" default y config DEP_WGET bool "wget (recommended)" default y config DEP_SVN bool "SVN client (optional)" default y config DEP_GPM bool "GPM (optional, see help)" default y help #-- You MUST to install manually the gpm bootscript # and create its configuration file endmenu #--- End blfs-tool Support #--- BLFS specific params config BLFS_ROOT string "Directory root" default "$HOME/blfs_root" if BOOK_BLFS default "/blfs_root" if BLFS_TOOL depends on BOOK_BLFS || BLFS_TOOL help #-- Full path to the directory where all required # files and scripts will be stored. config BLFS_XML string "BLFS sources directory" default "blfs-xml" depends on BOOK_BLFS || BLFS_TOOL help #-- The directory name under $BLFS_ROOT where BLFS book # sources will be checkout. 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 installed # packages database will be created. # # If you are installing blfs-tool on a running xLFS system # you MUST to create manually this directory. # # If you are installing blfs-tool as part of a xLFS build # and/or using the customized scripts feature, you will # need to fix that directory permissions after booting # the new system. # # Note that the user that will build the packages must # have read and write privileges on that directory. #--- End BLFS specific params #--- End BOOK Settings endmenu menu "--- General Settings" depends on !BOOK_BLFS #--- Set User Account config CONFIG_USER bool "Change the default user/group and homedir for this build" default n help #-- Unprivileged user and group name # If you do not have the priv to create/delete # users and groups you can specifiy your own # user id for the build # # default values for each book # LFS lfs # CLFS* clfs # HLFS hlfs # # Also, if your host place users home dirs into a # directory other than /home you can specify it here. config DEF_USER string default "lfs" if BOOK_LFS default "clfs" if BOOK_CLFS || BOOK_CLFS2 || BOOK_CLFS3 default "hlfs" if BOOK_HLFS config SET_USER string "User account" depends CONFIG_USER default DEF_USER config CONFIG_GROUP bool "Set Group?" default n depends CONFIG_USER config SET_GROUP string "GROUP account" depends CONFIG_GROUP default DEF_USER config CONFIG_HOME bool "Set home dir?" default n depends CONFIG_USER config SET_HOME string "Path to the directory where user home dir will be created" depends CONFIG_HOME default "/home" config LUSER string default DEF_USER if !CONFIG_USER default SET_USER if CONFIG_USER config LGROUP string default LUSER if !CONFIG_GROUP default SET_GROUP if CONFIG_GROUP config LHOME string default "/home" if !CONFIG_HOME default SET_HOME if CONFIG_HOME #--- End Set User Account config BUILDDIR string "Build Directory" default "/mnt/build_dir" help #-- The directory where the created system will be located. config GETPKG bool "Retrieve source files" default n help #-- Download all packages and patches required by the book selected # NOTE: Looks for files in the local archive defined by SRC_ARCHIVE # first and if necessary retrieve them from the 'net. # Files will be transfered to $BUILDDIR/sources. config SRC_ARCHIVE string "Package Archive Directory" default "$SRC_ARCHIVE" depends GETPKG help #-- A local archive for packages/file (not $BUILDDIR/sources) # Used only if GETPKG = 1 # Any missing file will be downloaded and archived here, # if the user has the right priviledges. config SERVER string "FTP mirror" default "ftp://ftp.lfs-matrix.net" depends GETPKG help #-- FTP mirror to download packages and patches if not found # in $SRC_ARCHIVE # As a last resort, the files will dowloaded from upstream, # if possible. config GETKERNEL bool "Always retrieve kernel package (see help)" default y if BOOK_LFS || BOOK_HLFS depends GETPKG help #-- Get the kernel package and patches even if no kernel # configuration file has been supplied. # NOTE: # The kernel package must be available when building # the SVN version of LFS or HLFS to can install the # headers files. # # If building LFS-6.2 this setting can be disabled. 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 #--- Test Suites config CONFIG_TESTS bool "Run testsuites" depends !BOOK_CLFS2 && !BOOK_CLFS3 default y help #-- Run test suites # # You will can to select between: # # - Only final system Glibc, GCC and Binutils testsuites # - All final system testsuites # - Both temporary tools and final system testsuites # # HLFS and CLFS has no testsuites available in the # temporary tools phase # You will be promt also about the "flavour" of the # testsuites run: # # - Don't stop on test suite failures # - Abort the build at the first test suite failure # choice prompt "Tests level" depends CONFIG_TESTS default TEST_1 config TST_1 bool "Only final system Glibc, GCC and Binutils testsuites" config TST_2 bool "All final system testsuites" config TST_3 bool "Both temporary tools and final system testsuites" if !BOOK_HLFS && !BOOK_CLFS endchoice config TEST int default "0" if !CONFIG_TESTS default "1" if TST_1 default "2" if TST_2 default "3" if TST_3 choice prompt "Flavour" depends CONFIG_TESTS config NO_BOMB bool "Don't stop on test suite failures" config BOMB bool "Abort the build at the first test suite failure" endchoice config BOMB_TEST bool default n if NO_BOMB default y if BOMB #--- End Test Suites #--- FSTAB config HAVE_FSTAB bool "Use a custom fstab file" default n help #-- Select this if you have ready a proper fstab file 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 # rename 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 STRIP bool "Strip Installed Binaries/Libraries" default y depends on !BOOK_CLFS3 config VIMLANG bool "Install vim-lang package" default y help #-- Install the optional vim-lang package 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 #-- Language information in /etc/profile See for values config LC_ALL string "Language" default "$LC_ALL" depends on BOOK_HLFS help #-- Language information in /etc/profile See for values #--- 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 #--- End Build Settings endmenu menu "--- Advanced Features" depends on !BOOK_BLFS config REPORT bool "Create SBU and disk usage report" default y #--- ICA/farce config COMPARE bool "Run comparison analysis on final stage" depends !BOOK_CLFS2 && !BOOK_CLFS3 default n help #-- Should some iterative comparison analysis by made? # # Unless you are familiar with ICA and/or FARCE do not # select this option # # ICA and FARCE are analysis tools for comparing one # build to the next. Builds mays differ from one iteration # to another due to the build order and these tools 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 "ICA testing" depends on COMPARE default y help #-- Run ICA testing config RUN_FARCE bool "farce testing" depends on COMPARE default n help #-- Run farce testing #--- End ICA/farce #--- Optimizations if !BOOK_CLFS2 && !BOOK_CLFS3 config CONFIG_OPTIMIZE bool "Use optimization (see help)" default n help #-- Actual optimzation flags MUST be defined in ./optimize/* # files before activate this option. # # WARNING: The use of build optimizations may be dangerous. # You should know what you are doing and be sure that the # optimization settings listed below are what you want. # It there are build issues or the system doesn't work as # expected, please rebuild without optimizations before # asking for support. choice prompt "Optimization level " default OPT_1 depends CONFIG_OPTIMIZE 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" endchoice config OPTIMIZE int default "0" if !CONFIG_OPTIMIZE default "1" if OPT_1 default "2" if OPT_2 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 LOGDIR string "Build logs directory" default "$JHALFSDIR/logs" config TESTLOGDIR string "Test suites logs directory" default "$JHALFSDIR/test-logs" config ICALOGDIR string "ICA logs directory" default "$LOGDIR/ICA" config FARCELOGDIR string "farce logs directory" default "$LOGDIR/farce" 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 bool "Rebuild the Makefile (see help)" default n depends on !BOOK_BLFS help #-- Rebuild the Makefile # # This option alow to rebuild the Makefile after # customizing the base system build scripts. # # See README.CUSTOM for more info about this feature.