Changeset e5d44f5


Ignore:
Timestamp:
03/15/2017 09:16:40 AM (7 years ago)
Author:
Pierre Labastie <pierre@…>
Branches:
2.4, ablfs-more, legacy, trunk
Children:
39dc04a
Parents:
18567e9
Message:

Add the possibility to install BLFS tools to a running LFS from the jhalfs
menu:

  • Add the possibility to choose BOOK_BLFS from menu. That hides all the irrelevant parameters
  • Adapt install-blfs-tools.sh
  • Change slightly mconf.c so that there is a better alignement in menus
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • Config.in

    r18567e9 re5d44f5  
    1 menu "--- BOOK Settings"
    2 
    3         #--- BOOK/script
    4         choice
    5                 prompt "Use BOOK"
    6                 default BOOK_LFS
    7                 help
    8                         #-- Select the BOOK/Build style you wish to configure.
    9 
    10                 config  BOOK_LFS
    11                         bool "Linux From Scratch System V"
    12 
    13                 config  BOOK_LFS_SYSD
    14                         bool "Linux From Scratch systemd"
    15 
    16                 config  BOOK_CLFS
    17                         bool "Cross-Compiled Linux From Scratch"
    18 
    19                 config  BOOK_CLFS2
    20                         bool "Cross-Compiled Linux From Scratch (Sysroot method)"
    21 
    22                 config  BOOK_CLFS3
    23                         bool "Cross-Compiled Linux From Scratch (Embedded Systems)"
    24 
    25 #               config  BOOK_HLFS
    26 #                       bool "Hardened Linux From Scratch"
    27         endchoice
    28 
    29         config  INITSYS
    30                 string
    31                 default "sysv"          if BOOK_LFS
    32                 default "systemd"       if BOOK_LFS_SYSD
    33 
    34         config  PROGNAME
    35                 string
    36                 default "lfs"           if BOOK_LFS || BOOK_LFS_SYSD
    37                 default "clfs"          if BOOK_CLFS
    38                 default "clfs2"         if BOOK_CLFS2
    39                 default "clfs3"         if BOOK_CLFS3
    40                 default "hlfs"          if BOOK_HLFS
    41 
    42         config  RUN_ME
    43                 string
    44                 default "./jhalfs run"
    45         #--- End BOOK/script
    46 
    47         #--- Book version
    48         choice
    49                 prompt  "Release"
    50                 default relSVN  if BOOK_LFS || BOOK_HLFS || BOOK_LFS_SYSD
    51                 default relGIT  if BOOK_CLFS || BOOK_CLFS2 || BOOK_CLFS3
    52                 config  relSVN
    53                         bool    "SVN"
    54                         depends on BOOK_LFS || BOOK_HLFS || BOOK_LFS_SYSD
    55                         help
    56                                 #-- Current development version as in trunk
    57 
    58                 config  relGIT
    59                         bool    "GIT"
    60                         depends on BOOK_CLFS || BOOK_CLFS2 || BOOK_CLFS3
    61                         help
    62                                 #-- Current development git master branch
    63 
    64                 config  WORKING_COPY
    65                         bool    "Working Copy"
    66                         help
    67                                 #-- A local working copy
    68 
    69                 config  BRANCH
    70                         bool    "Branch or stable book" if !BOOK_CLFS2 && !BOOK_CLFS3
    71                         help
    72                                 #-- A supported SVN/GIT branch or stable released book
    73         endchoice
    74 
    75         config  BRANCH_ID
    76                 string  "Stable Version or branch (preceded by branch-)"
    77                 default "**EDIT ME**"
    78                 depends BRANCH
    79                 help
    80                         #-- A list of valid branches and stable book IDs is available here:
    81                         #   http://wiki.linuxfromscratch.org/alfs/wiki/SupportedBooks
    82                         #   Enter branch-XXX for branch XXX, and just YYY for tag YYY or
    83                         #   stable YYY version
    84 
    85         config  BOOK
    86                 string  "Loc of working copy (mandatory)"
    87                 default "**EDIT ME**"
    88                 depends WORKING_COPY
    89                 help
    90                         #-- The full path to a local copy of the book XML sources
    91                         #
    92         #--- End BOOK version
    93 
    94         #--- CLFS specific params
    95         choice
    96                 prompt  "Target architecture"
    97                 default ARCH_X86
    98                 depends BOOK_CLFS || BOOK_CLFS2 || BOOK_CLFS3
    99                 help
    100                         #-- Choose the target system base architecture
    101 
    102                 config  ARCH_X86
    103                         bool    "x86"
    104 
    105                 config  ARCH_MIPS
    106                         bool    "mips"  if !BOOK_CLFS2
    107 
    108                 config  ARCH_PPC
    109                         bool    "ppc"   if BOOK_CLFS
    110 
    111                 config  ARCH_SPARC
    112                         bool    "sparc" if BOOK_CLFS
    113 
    114                 config  ARCH_ALPHA
    115                         bool    "alpha" if !BOOK_CLFS3
    116 
    117                 config  ARCH_ARM
    118                         bool    "arm"   if !BOOK_CLFS
    119 
    120                 config  ARCH_HPPA
    121                         bool    "hppa"  if BOOK_CLFS2
    122         endchoice
    123 
    124         choice
    125                 prompt  "Hardware Platform"
    126                 depends BOOK_CLFS3 && ARCH_MIPS
    127                 default PLATFORM_GENERIC
    128                 help
    129                         # Choose a destination platform
    130                         # Platform specific files will be included
    131 
    132                 config  PLATFORM_GENERIC
    133                         bool    "Generic platform"
    134 
    135                 config  PLATFORM_WRT
    136                         bool    "WRT - MIPS based wireless router" if ARCH_MIPS
    137         endchoice
    138 
    139         choice
    140                 prompt  "Library"
    141                 depends (BOOK_CLFS && !ARCH_ALPHA) || (BOOK_CLFS3 && ARCH_MIPS)
    142                 default DATA_32
    143                 help
    144                         #-- Choose the target system libraries type
    145 
    146                 config  DATA_32
    147                         bool    "32-bit"
    148 
    149                 config  DATA_64
    150                         bool    "64-bit"
    151 
    152                 config  DATA_MULTI
    153                         bool    "multilib"      if !(BOOK_CLFS3 && ARCH_MIPS )
    154         endchoice
    155 
    156         choice
    157                 prompt  "Processor type"
    158                 depends (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))
    159                 help
    160                         #-- Choose the target system processor
    161 
    162                 config  PROC_i486
    163                         bool    "486 Compatibles"                                       if ARCH_X86
    164 
    165                 config  PROC_i586
    166                         bool    "Pentium, K6, 586 Compatibles"                          if ARCH_X86
    167 
    168                 config  PROC_i686
    169                         bool    "Pentium II, Pentium III, Pentium 4, Athlon, Duron"     if ARCH_X86
    170 
    171                 config  PROC_mipsel
    172                         bool    "MIPS Little Endian"                                    if ARCH_MIPS
    173 
    174                 config  PROC_mips
    175                         bool    "MIPS Big Endian"                                       if ARCH_MIPS
    176 
    177                 config  PROC_unknown
    178                         bool    "Unknown"                                               if ARCH_HPPA || ARCH_ALPHA
    179 
    180                 config  PROC_hppa1
    181                         bool    "PA 7000 Series"                                        if ARCH_HPPA
    182 
    183                 config  PROC_hppa2
    184                         bool    "PA 8000 Series"                                        if ARCH_HPPA
    185 
    186                 config  PROC_EV5
    187                         bool    "EV5 Series"                                            if ARCH_ALPHA
    188 
    189                 config  PROC_EV56
    190                         bool    "EV56 Series"                                           if ARCH_ALPHA
    191 
    192                 config  PROC_PCA56
    193                         bool    "PCA56 Series"                                          if ARCH_ALPHA
    194 
    195                 config  PROC_PCA57
    196                         bool    "PCA57 Series"                                          if ARCH_ALPHA
    197 
    198                 config  PROC_EV6
    199                         bool    "EV6 Series"                                            if ARCH_ALPHA
    200 
    201                 config  PROC_EV67
    202                         bool    "EV67 Series"                                           if ARCH_ALPHA
    203 
    204                 config  PROC_EV68
    205                         bool    "EV68 Series"                                           if ARCH_ALPHA
    206 
    207                 config  PROC_ARM
    208                         bool    "Generic arm, little endian"                            if ARCH_ARM
    209 
    210                 config  PROC_ARM5L
    211                         bool    "Generic arm, version 5, little endian"                 if ARCH_ARM
    212 
    213                 config  PROC_ARM5B
    214                         bool    "Generic arm, version 5, big endian"                    if ARCH_ARM
    215 
    216                 config  PROC_ULTRA1
    217                         bool    "UtraSparc"                                             if ARCH_SPARC && (DATA_64 || DATA_MULTI)
    218 
    219                 config  PROC_ULTRA2
    220                         bool    "UtraSparc2"                                            if ARCH_SPARC && (DATA_64 || DATA_MULTI)
    221 
    222                 config  PROC_ULTRA3
    223                         bool    "UtraSparc3"                                            if ARCH_SPARC && (DATA_64 || DATA_MULTI)
    224         endchoice
    225 
    226         choice
    227                 prompt  "MIPS 64 ABI"
    228                 depends BOOK_CLFS3 && ARCH_MIPS && DATA_64
    229                 default ABI_64
    230                 help
    231                         #-- Choose the target system ABI to use
    232 
    233                 config  ABI_32
    234                         bool    "o32"
    235 
    236                 config  ABI_N32
    237                         bool    "n32"
    238 
    239                 config  ABI_64
    240                         bool    "n64"
    241         endchoice
    242 
    243         config TARGET
    244                 string
    245                 default "i486-pc-linux-gnu"             if !BOOK_CLFS3 && PROC_i486
    246                 default "i586-pc-linux-gnu"             if !BOOK_CLFS3 && PROC_i586
    247                 default "i686-pc-linux-gnu"             if !BOOK_CLFS3 && PROC_i686
    248 
    249                 default "i486-pc-linux-uclibc"          if  BOOK_CLFS3 && PROC_i486
    250                 default "i586-pc-linux-uclibc"          if  BOOK_CLFS3 && PROC_i586
    251                 default "i686-pc-linux-uclibc"          if  BOOK_CLFS3 && PROC_i686
    252 
    253                 default "x86_64-unknown-linux-gnu"      if  ARCH_X86   && (DATA_64 || DATA_MULTI)
    254 
    255                 default "mipsel-unknown-linux-gnu"      if !BOOK_CLFS3 && PROC_mipsel && DATA_32
    256                 default "mips-unknown-linux-gnu"        if !BOOK_CLFS3 && PROC_mips   && DATA_32
    257                 default "mips64el-unknown-linux-gnu"    if !BOOK_CLFS3 && PROC_mipsel && (DATA_64 || DATA_MULTI)
    258                 default "mips64-unknown-linux-gnu"      if !BOOK_CLFS3 && PROC_mips   && (DATA_64 || DATA_MULTI)
    259 
    260                 default "mipsel-unknown-linux-uclibc"   if  BOOK_CLFS3 && PROC_mipsel && DATA_32
    261                 default "mips-unknown-linux-uclibc"     if  BOOK_CLFS3 && PROC_mips   && DATA_32
    262                 default "mips64el-unknown-linux-uclibc" if  BOOK_CLFS3 && PROC_mipsel && DATA_64
    263                 default "mips64-unknown-linux-uclibc"   if  BOOK_CLFS3 && PROC_mips   && DATA_64
    264 
    265                 default "powerpc-unknown-linux-gnu"     if  ARCH_PPC && DATA_32
    266                 default "powerpc64-unknown-linux-gnu"   if  ARCH_PPC && (DATA_MULTI || DATA_64)
    267 
    268                 default "sparc-unknown-linux-gnu"       if  ARCH_SPARC && DATA_32
    269                 default "sparc64-unknown-linux-gnu"     if  ARCH_SPARC && (DATA_64 || DATA_MULTI)
    270 
    271                 default "hppa-unknown-linux-gnu"        if  PROC_unknown && ARCH_HPPA
    272                 default "hppa1.1-unknown-linux-gnu"     if  PROC_hppa1
    273                 default "hppa2.0-unknown-linux-gnu"     if  PROC_hppa2
    274 
    275                 default "arm-unknown-linux-gnueabi"     if  ARCH_ARM && BOOK_CLFS2
    276 
    277                 default "arm-unknown-linux-uclibc"      if  PROC_ARM
    278                 default "armv5l-unknown-linux-uclibc"   if  PROC_ARM5L
    279                 default "armv5b-unknown-linux-uclibc"   if  PROC_ARM5B
    280 
    281                 default "alpha-unknown-linux-gnu"       if  PROC_unknown && ARCH_ALPHA
    282                 default "alphaev5-unknown-linux-gnu"    if  PROC_EV5
    283                 default "alphaev56-unknown-linux-gnu"   if  PROC_EV56
    284                 default "alphapca56-unknown-linux-gnu"  if  PROC_PCA56
    285                 default "alphapca57-unknown-linux-gnu"  if  PROC_PCA57
    286                 default "alphaev6-unknown-linux-gnu"    if  PROC_EV6
    287                 default "alphaev67-unknown-linux-gnu"   if  PROC_EV67
    288                 default "alphaev68-unknown-linux-gnu"   if  PROC_EV68
    289 
    290         config TARGET32
    291                 string
    292                 depends DATA_MULTI
    293                 default "i686-pc-linux-gnu"             if ARCH_X86
    294                 default "mipsel-unknown-linux-gnu"      if PROC_mipsel
    295                 default "mips-unknown-linux-gnu"        if PROC_mips
    296                 default "sparc-unknown-linux-gnu"       if ARCH_SPARC
    297                 default "powerpc-unknown-linux-gnu"     if ARCH_PPC
    298 
    299         config  PLATFORM
    300                 string
    301                 default "GENERIC"                       if (!BOOK_CLFS3) || PLATFORM_GENERIC
    302                 default "WRT - Wireless Router"         if PLATFORM_WRT
    303 
    304         config  SPARC64_PROC
    305                 string
    306                 default "none"                          if !(ARCH_SPARC && (DATA_64 || DATA_MULTI))
    307                 default "1"                             if PROC_ULTRA1
    308                 default "2"                             if PROC_ULTRA2
    309                 default "3"                             if PROC_ULTRA3
    310 
    311         config  ARCH
    312                 string
    313                 default "x86"           if ARCH_X86   && (DATA_32 || BOOK_CLFS2 || BOOK_CLFS3)
    314                 default "x86_64"        if ARCH_X86   && DATA_MULTI
    315                 default "x86_64-64"     if ARCH_X86   && DATA_64
    316 
    317                 default "wrt"           if PLATFORM_WRT && BOOK_CLFS3
    318 
    319                 default "mips"          if ARCH_MIPS  && (DATA_32 || BOOK_CLFS3)
    320                 default "mips64"        if ARCH_MIPS  && DATA_MULTI
    321                 default "mips64-64"     if ARCH_MIPS  && DATA_64 && BOOK_CLFS
    322 
    323 
    324                 default "ppc"           if ARCH_PPC   && DATA_32
    325                 default "ppc64"         if ARCH_PPC   && DATA_MULTI
    326                 default "ppc64-64"      if ARCH_PPC   && DATA_64
    327 
    328                 default "sparc"         if ARCH_SPARC && DATA_32
    329                 default "sparc64"       if ARCH_SPARC && DATA_MULTI
    330                 default "sparc64-64"    if ARCH_SPARC && DATA_64
    331 
    332                 default "alpha"         if ARCH_ALPHA
    333                 default "arm"           if ARCH_ARM
    334                 default "hppa"          if ARCH_HPPA
    335 
    336         config  MIPS_LEVEL
    337                 string
    338                 depends BOOK_CLFS3 && ARCH_MIPS
    339                 default "1"             if DATA_32
    340                 default "3"             if DATA_64
    341 
    342         config  ABI
    343                 string
    344                 depends BOOK_CLFS3
    345                 default "-m32"          if ARCH_X86 || ARCH_ARM
    346 #               default "-m64"          if NO USED YET IN THE BOOK
    347                 default "-mabi=32"      if ABI_32 || (ARCH_MIPS && DATA_32)
    348                 default "-mabi=n32"     if ABI_N32
    349                 default "-mabi=64"      if ABI_64
    350 
    351         config  ENDIAN
    352                 string
    353                 depends BOOK_CLFS3 && (ARCH_MIPS || ARCH_ARM)
    354                 default "little"        if PROC_mipsel || PROC_ARM || PROC_ARM5L
    355                 default "big"           if PROC_mips || PROC_ARM5B
    356 
    357         choice
    358                 prompt  "Build method"
    359                 depends BOOK_CLFS
    360                 help
    361                         #-- What build method should be used: a chroot jail or minimal boot system
    362                         #   Review the Cross-LFS book chap6 "TO BOOT OR CHROOT" for a full explanation.
    363 
    364                 config  BUILD_CHROOT
    365                         bool    "chroot"
    366 
    367                 config  BUILD_BOOT
    368                         bool    "boot"
    369         endchoice
    370 
    371         config  METHOD
    372                 string
    373                 default "chroot"        if BUILD_CHROOT
    374                 default "boot"          if BUILD_BOOT
    375 
    376         config  BOOT_CONFIG
    377                 string  "BOOT kernel config file (mandatory)"
    378                 default "***EDIT ME***"
    379                 depends on BUILD_BOOT
    380                 help
    381                         #-- If METHOD=boot, location of boot-kernel config file
    382                         #   The config file will be copied to ${BUILD_DIR}/sources
    383                         #   and renamed 'bootkernel-config'
    384                         #
    385                         # NOTE: this setting is required
    386         #--- End CLFS specific params
    387 
    388         #--- HLFS specific params
    389         config  GRSECURITY_HOST
    390                 bool    "Building on grsecurity enabled host?"
    391                 default n
    392                 depends on BOOK_HLFS
    393                 help
    394                         #-- If your build system has grsecurity patches applied
    395                         #   you MUST enable this switch.
    396 
    397         choice
    398                 prompt "Library"
    399                 depends on BOOK_HLFS
    400                 help
    401                         #-- Which library model to use: uClibc/glibc
    402 
    403                 config  LIB_GLIBC
    404                         bool "glibc"
    405 
    406                 config  LIB_UCLIBC
    407                         bool "uClibc"
    408         endchoice
    409 
    410         config  MODEL
    411                 depends on BOOK_HLFS
    412                 string
    413                 default "glibc"         if LIB_GLIBC
    414                 default "uclibc"        if LIB_UCLIBC
    415 
    416         choice
    417                 prompt "Kernel series"
    418                 depends on BOOK_HLFS
    419                 help
    420                         #-- Which kernel series to use: 2.6/2.4
    421 
    422                 config  KERNEL_26
    423                         bool "2.6 kernel series"
    424 
    425                 config  KERNEL_24
    426                         bool "2.4 kernel series"
    427         endchoice
    428 
    429         config  KERNEL
    430                 depends on BOOK_HLFS
    431                 string
    432                 default "2.6"           if KERNEL_26
    433                 default "2.4"           if KERNEL_24
    434 
    435         #--- Custom Tools support
    436         config CUSTOM_TOOLS
    437                 bool    "Add custom tools support"
    438                 default n
    439                 help
    440                         #--- Activating this option additional packages you create
    441                         #    will be installed after finished the xLFS system build.
    442                         #
    443         #--- End Custom Tools support
    444 
    445         #--- blfs-tool Support
    446         config BLFS_TOOL
    447                 bool    "Add blfs-tool support"
    448                 default n
    449                 depends on !BOOK_CLFS3
    450                 help
    451                         #--- Activating this option will install additional
    452                         #    packages needed to use blfs-tool when booting
    453                         #    the new system.
    454                         #
    455                         #    The blfs-tool files will be installed under
    456                         #    $BUILD_DIR/blfs_root.
    457 
    458                         #    After booting the new xLFS system, but before using
    459                         #    blfs-tool,  you should create a user account and
    460                         #    move the /blfs-root directory to the user's home,
    461                         #    making them the directory and files owner.
    462                         #
    463                         #    Also, be sure to give the user read and write
    464                         #    privileges on the $TRACKING_DIR directory and
    465                         #    the files that it contains.
    466                         #
    467                         #    Don't forget to configure sudo properly.
    468 
    469         choice
    470                 prompt  "BLFS Release"
    471                 default BLFS_SVN
    472                 depends on BLFS_TOOL
    473                 config  BLFS_SVN
    474                         bool    "BLFS SVN"
    475                         help
    476                                 #-- Current development version as in trunk
    477 
    478                 config  BLFS_WORKING_COPY
    479                         bool    "BLFS working copy"
    480                         help
    481                                 #-- A local working copy of the BLFS book.
    482 
    483                 config  BLFS_BRANCH
    484                         bool    "BLFS Branch or stable book"
    485                         help
    486                                 #-- A supported SVN branch or stable book release
    487         endchoice
    488 
    489         config  BLFS_WC_LOCATION
    490                 string  "Location of the local BLFS working copy (mandatory)"
    491                 default "**EDIT ME**"
    492                 depends on BLFS_WORKING_COPY
    493                 help
    494                         #-- Full path to the BLFS book working copy"
    495 
    496         config  BLFS_BRANCH_ID
    497                 string  "BLFS Book Version (mandatory)"
    498                 default "**EDIT ME**"
    499                 depends on BLFS_BRANCH
    500                 help
    501                         #-- A list of valid branches and stable book IDs is available here.
    502                         #   http://wiki.linuxfromscratch.org/alfs/wiki/SupportedBooks
    503 
    504         menu "blfs-tool dependencies"
    505                 depends on BLFS_TOOL
    506 
    507                 config  DEP_LIBXML
    508                 bool    "libxml2 (required)"
    509                 default y
    510 
    511                 config  DEP_LIBXSLT
    512                 bool    "libxslt (required)"
    513                 default y
    514 
    515                 config  DEP_DBXML
    516                 bool    "DocBook XML DTD (required)"
    517                 default y
    518 
    519                 #config DEP_DBXSL
    520                 #bool   "DocBook XSL (required)"
    521                 #default        y
    522 
    523                 config  DEP_LYNX
    524                 bool    "lynx (optional, for reading the generated book)"
    525                 default y
    526 
    527                 config  DEP_SUDO
    528                 bool    "sudo (recommended)"
    529                 default y
    530 
    531                 config  DEP_WGET
    532                 bool    "wget (recommended)"
    533                 default y
    534 
    535                 config  DEP_GPM
    536                 bool    "GPM (optional, see help)"
    537                 default n
    538                 help
    539                         #-- if you install gpm, it will be started
    540                         #   automatically on boot. You'll have to edit
    541                         #   /etc/sysconfig/mouse for your system
    542 
    543                 config  DEP_SVN
    544                 bool    "SVN client (optional, see help)"
    545                 default n
    546                 help
    547                         #-- Subversion is needed for updating the book
    548                         #   sources. If you want ssl support, select
    549                         #   OPENSSL below.
    550 
    551                 config  DEP_OPENSSL
    552                 bool    "OPENSSL (optional, see help)"
    553                 default n
    554                 help
    555                         #-- selecting OPENSSL here allows to build
    556                         #   subversion with ssl support, avoiding a later
    557                         #   recompilation
    558 
    559                 config  DEP_PYTHON
    560                 bool    "PYTHON 2 (optional, see help)"
    561                 default n
    562                 help
    563                         #-- selecting PYTHON 2 here allows to build
    564                         #   the libxml2 and libxslt python modules,
    565                         #   avoiding a later recompilation
    566 
    567         endmenu
    568         #--- End blfs-tool Support
    569 
    570         #--- BLFS specific params
    571         config  BLFS_ROOT
    572                 string "Directory root"
    573                 default "/blfs_root"
    574                 depends on BLFS_TOOL
    575                 help
    576                         #-- Full path to the directory where all required
    577                         #   files and scripts will be stored.
    578 
    579         config  BLFS_XML
    580                 string "BLFS sources directory"
    581                 default "blfs-xml"
    582                 depends BLFS_TOOL
    583                 help
    584                         #-- The directory name under $BLFS_ROOT where the BLFS
    585                         #   book sources will be checkout.
    586 
    587         config  TRACKING_DIR
    588                 string "Installed packages database directory"
    589                 default "/var/lib/jhalfs/BLFS"
    590                 depends on BLFS_TOOL || CUSTOM_TOOLS
    591                 help
    592                         #-- Full path to the directory where the database of
    593                         #   installed packages will be created.
    594                         #
    595                         #   If you are installing blfs-tool on a running xLFS system
    596                         #   you MUST create this directory manually.
    597                         #
    598                         #   If you are installing blfs-tool as part of an xLFS build
    599                         #   and/or using the customized scripts feature, you will
    600                         #   need to fix this directory's permissions after booting
    601                         #   the new system.
    602                         #
    603                         #   Note that the user that will build the packages must
    604                         #   have read and write privileges on this directory.
    605         #--- End BLFS specific params
     1menu "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
     13                Set up the tools to build LFS with Sys V init.
     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_CLFS
     21            bool "Cross-Compiled Linux From Scratch"
     22            help
     23                Set up the tools to build CLFS.
     24
     25        config    BOOK_CLFS2
     26            bool "Cross-Compiled Linux From Scratch (Sysroot method)"
     27            help
     28                Set up the tools to build CLFS by the sysroot method.
     29
     30        config    BOOK_CLFS3
     31            bool "Cross-Compiled Linux From Scratch (Embedded Systems)"
     32            help
     33                Set up the tools to build CLFS with tools for embedded systems.
     34
     35        config    BOOK_BLFS
     36            bool "Beyond Linux From Scratch (see help)"
     37            help
     38                if the (C)LFS system has already been built, install the tools
     39                to build BLFS packages.
     40    endchoice
     41
     42    config    INITSYS
     43        string
     44        default "sysv"         if BOOK_LFS
     45        default "systemd"      if BOOK_LFS_SYSD
     46
     47    config    PROGNAME
     48        string
     49        default "lfs"          if BOOK_LFS || BOOK_LFS_SYSD
     50        default "clfs"         if BOOK_CLFS
     51        default "clfs2"        if BOOK_CLFS2
     52        default "clfs3"        if BOOK_CLFS3
     53
     54    config    RUN_ME
     55        string
     56        default "./jhalfs run" if BOOK_LFS || BOOK_LFS_SYSD || BOOK_CLFS || \
     57                                  BOOK_CLFS2 || BOOK_CLFS_3
     58        default "./install-blfs-tools.sh auto" if BOOK_BLFS
     59    #--- End BOOK/script
     60
     61    #--- Book version
     62    choice
     63        prompt   "Release"
     64        default   relSVN    if BOOK_LFS || BOOK_LFS_SYSD || BOOK_BLFS
     65        default   relGIT    if BOOK_CLFS || BOOK_CLFS2 || BOOK_CLFS3
     66
     67        config    relSVN
     68            bool    "SVN"
     69            depends on BOOK_LFS || BOOK_BLFS || BOOK_LFS_SYSD
     70            help
     71                Current development version as in trunk
     72
     73        config    relGIT
     74            bool    "GIT"
     75            depends on BOOK_CLFS || BOOK_CLFS2 || BOOK_CLFS3
     76            help
     77                Current development git master branch
     78
     79        config    WORKING_COPY
     80            bool    "Working Copy"
     81            help
     82                A local working copy
     83
     84        config    BRANCH
     85            bool    "Branch or stable book" if !BOOK_CLFS2 && !BOOK_CLFS3
     86            help
     87                A supported SVN/GIT branch or stable released book
     88    endchoice
     89
     90    config    BRANCH_ID
     91        string    "Branch (preceded by \"branch-\"), stable Version, or tag"
     92        default    "**EDIT ME**"
     93        depends    BRANCH
     94        help
     95            A list of valid branches and stable book IDs is available at
     96            http://wiki.linuxfromscratch.org/alfs/wiki/SupportedBooks
     97           
     98            Enter "branch-XXX" for branch XXX, or just "YYY" for stable (or tag)
     99            YYY version.
     100
     101    config    BOOK
     102        string    "Loc of working copy (mandatory)"
     103        default    "**EDIT ME**"
     104        depends    WORKING_COPY
     105        help
     106            The full path to a local copy of the book XML sources
     107
     108    #--- End BOOK version
     109
     110    #--- CLFS specific params
     111    choice
     112        prompt    "Target architecture"
     113        default    ARCH_X86
     114        depends    BOOK_CLFS || BOOK_CLFS2 || BOOK_CLFS3
     115        help
     116            Choose the target system base architecture
     117
     118        config    ARCH_X86
     119            bool    "x86"
     120
     121        config    ARCH_MIPS
     122            bool    "mips"    if !BOOK_CLFS2
     123
     124        config    ARCH_PPC
     125            bool    "ppc"    if BOOK_CLFS
     126
     127        config    ARCH_SPARC
     128            bool    "sparc"    if BOOK_CLFS
     129
     130        config    ARCH_ALPHA
     131            bool    "alpha"    if !BOOK_CLFS3
     132
     133        config    ARCH_ARM
     134            bool    "arm"    if !BOOK_CLFS
     135
     136        config    ARCH_HPPA
     137            bool    "hppa"    if BOOK_CLFS2
     138    endchoice
     139
     140    choice
     141        prompt    "Hardware Platform"
     142        depends    BOOK_CLFS3 && ARCH_MIPS
     143        default    PLATFORM_GENERIC
     144        help
     145            Choose a destination platform
     146            Platform specific files will be included
     147
     148        config    PLATFORM_GENERIC
     149            bool    "Generic platform"
     150
     151        config    PLATFORM_WRT
     152            bool    "WRT - MIPS based wireless router" if ARCH_MIPS
     153    endchoice
     154
     155    choice
     156        prompt    "Library"
     157        depends    (BOOK_CLFS && !ARCH_ALPHA) || (BOOK_CLFS3 && ARCH_MIPS)
     158        default    DATA_32
     159        help
     160            Choose the target system libraries type
     161
     162        config    DATA_32
     163            bool    "32-bit"
     164
     165        config    DATA_64
     166            bool    "64-bit"
     167
     168        config    DATA_MULTI
     169            bool    "multilib"    if !(BOOK_CLFS3 && ARCH_MIPS )
     170    endchoice
     171
     172    choice
     173        prompt    "Processor type"
     174        depends    (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))
     175        help
     176            Choose the target system processor
     177
     178        config    PROC_i486
     179            bool    "486 Compatibles"                    if ARCH_X86
     180
     181        config    PROC_i586
     182            bool    "Pentium, K6, 586 Compatibles"                if ARCH_X86
     183
     184        config    PROC_i686
     185            bool    "Pentium II, Pentium III, Pentium 4, Athlon, Duron"    if ARCH_X86
     186
     187        config    PROC_mipsel
     188            bool    "MIPS Little Endian"                    if ARCH_MIPS
     189
     190        config    PROC_mips
     191            bool    "MIPS Big Endian"                    if ARCH_MIPS
     192
     193        config    PROC_unknown
     194            bool    "Unknown"                        if ARCH_HPPA || ARCH_ALPHA
     195
     196        config    PROC_hppa1
     197            bool    "PA 7000 Series"                    if ARCH_HPPA
     198
     199        config    PROC_hppa2
     200            bool    "PA 8000 Series"                    if ARCH_HPPA
     201
     202        config    PROC_EV5
     203            bool    "EV5 Series"                        if ARCH_ALPHA
     204
     205        config    PROC_EV56
     206            bool    "EV56 Series"                        if ARCH_ALPHA
     207
     208        config    PROC_PCA56
     209            bool    "PCA56 Series"                        if ARCH_ALPHA
     210
     211        config    PROC_PCA57
     212            bool    "PCA57 Series"                        if ARCH_ALPHA
     213
     214        config    PROC_EV6
     215            bool    "EV6 Series"                        if ARCH_ALPHA
     216
     217        config    PROC_EV67
     218            bool    "EV67 Series"                        if ARCH_ALPHA
     219
     220        config    PROC_EV68
     221            bool    "EV68 Series"                        if ARCH_ALPHA
     222
     223        config    PROC_ARM
     224            bool    "Generic arm, little endian"                if ARCH_ARM
     225
     226        config    PROC_ARM5L
     227            bool    "Generic arm, version 5, little endian"            if ARCH_ARM
     228
     229        config    PROC_ARM5B
     230            bool    "Generic arm, version 5, big endian"            if ARCH_ARM
     231
     232        config    PROC_ULTRA1
     233            bool    "UtraSparc"                        if ARCH_SPARC && (DATA_64 || DATA_MULTI)
     234
     235        config    PROC_ULTRA2
     236            bool    "UtraSparc2"                        if ARCH_SPARC && (DATA_64 || DATA_MULTI)
     237
     238        config    PROC_ULTRA3
     239            bool    "UtraSparc3"                        if ARCH_SPARC && (DATA_64 || DATA_MULTI)
     240    endchoice
     241
     242    choice
     243        prompt    "MIPS 64 ABI"
     244        depends    BOOK_CLFS3 && ARCH_MIPS && DATA_64
     245        default    ABI_64
     246        help
     247            Choose the target system ABI to use
     248
     249        config    ABI_32
     250            bool    "o32"
     251
     252        config    ABI_N32
     253            bool    "n32"
     254
     255        config    ABI_64
     256            bool    "n64"
     257    endchoice
     258
     259    config TARGET
     260        string
     261        default "i486-pc-linux-gnu"        if !BOOK_CLFS3 && PROC_i486
     262        default "i586-pc-linux-gnu"        if !BOOK_CLFS3 && PROC_i586
     263        default "i686-pc-linux-gnu"        if !BOOK_CLFS3 && PROC_i686
     264
     265        default "i486-pc-linux-uclibc"     if  BOOK_CLFS3 && PROC_i486
     266        default "i586-pc-linux-uclibc"     if  BOOK_CLFS3 && PROC_i586
     267        default "i686-pc-linux-uclibc"     if  BOOK_CLFS3 && PROC_i686
     268
     269        default "x86_64-unknown-linux-gnu" if  ARCH_X86   && (DATA_64 || DATA_MULTI)
     270
     271        default "mipsel-unknown-linux-gnu" if !BOOK_CLFS3 && PROC_mipsel && DATA_32
     272        default "mips-unknown-linux-gnu"   if !BOOK_CLFS3 && PROC_mips   && DATA_32
     273        default "mips64el-unknown-linux-gnu" if !BOOK_CLFS3 && PROC_mipsel && (DATA_64 || DATA_MULTI)
     274        default "mips64-unknown-linux-gnu" if !BOOK_CLFS3 && PROC_mips   && (DATA_64 || DATA_MULTI)
     275
     276        default "mipsel-unknown-linux-uclibc" if  BOOK_CLFS3 && PROC_mipsel && DATA_32
     277        default "mips-unknown-linux-uclibc" if  BOOK_CLFS3 && PROC_mips   && DATA_32
     278        default "mips64el-unknown-linux-uclibc" if  BOOK_CLFS3 && PROC_mipsel && DATA_64
     279        default "mips64-unknown-linux-uclibc" if  BOOK_CLFS3 && PROC_mips   && DATA_64
     280
     281        default "powerpc-unknown-linux-gnu" if  ARCH_PPC && DATA_32
     282        default "powerpc64-unknown-linux-gnu" if  ARCH_PPC && (DATA_MULTI || DATA_64)
     283
     284        default "sparc-unknown-linux-gnu"   if  ARCH_SPARC && DATA_32
     285        default "sparc64-unknown-linux-gnu" if  ARCH_SPARC && (DATA_64 || DATA_MULTI)
     286
     287        default "hppa-unknown-linux-gnu"    if  PROC_unknown && ARCH_HPPA
     288        default "hppa1.1-unknown-linux-gnu" if  PROC_hppa1
     289        default "hppa2.0-unknown-linux-gnu" if  PROC_hppa2
     290
     291        default "arm-unknown-linux-gnueabi" if  ARCH_ARM && BOOK_CLFS2
     292
     293        default "arm-unknown-linux-uclibc"  if  PROC_ARM
     294        default "armv5l-unknown-linux-uclibc" if  PROC_ARM5L
     295        default "armv5b-unknown-linux-uclibc" if  PROC_ARM5B
     296
     297        default "alpha-unknown-linux-gnu"   if  PROC_unknown && ARCH_ALPHA
     298        default "alphaev5-unknown-linux-gnu" if  PROC_EV5
     299        default "alphaev56-unknown-linux-gnu" if  PROC_EV56
     300        default "alphapca56-unknown-linux-gnu" if  PROC_PCA56
     301        default "alphapca57-unknown-linux-gnu" if  PROC_PCA57
     302        default "alphaev6-unknown-linux-gnu" if  PROC_EV6
     303        default "alphaev67-unknown-linux-gnu" if  PROC_EV67
     304        default "alphaev68-unknown-linux-gnu" if  PROC_EV68
     305
     306    config TARGET32
     307        string
     308        depends    DATA_MULTI
     309        default "i686-pc-linux-gnu"        if ARCH_X86
     310        default "mipsel-unknown-linux-gnu" if PROC_mipsel
     311        default "mips-unknown-linux-gnu"   if PROC_mips
     312        default "sparc-unknown-linux-gnu"  if ARCH_SPARC
     313        default "powerpc-unknown-linux-gnu" if ARCH_PPC
     314
     315    config  PLATFORM
     316        string
     317        default "GENERIC"               if (!BOOK_CLFS3) || PLATFORM_GENERIC
     318        default "WRT - Wireless Router" if PLATFORM_WRT
     319
     320    config  SPARC64_PROC
     321        string
     322        default "none"                if !(ARCH_SPARC && (DATA_64 || DATA_MULTI))
     323        default    "1"                if PROC_ULTRA1
     324        default    "2"                if PROC_ULTRA2
     325        default    "3"                if PROC_ULTRA3
     326
     327    config    ARCH
     328        string
     329        default   "x86"        if ARCH_X86   && (DATA_32 || BOOK_CLFS2 || BOOK_CLFS3)
     330        default   "x86_64"     if ARCH_X86   && DATA_MULTI
     331        default   "x86_64-64"  if ARCH_X86   && DATA_64
     332
     333        default   "wrt"        if PLATFORM_WRT && BOOK_CLFS3
     334
     335        default   "mips"       if ARCH_MIPS  && (DATA_32 || BOOK_CLFS3)
     336        default   "mips64"     if ARCH_MIPS  && DATA_MULTI
     337        default   "mips64-64"  if ARCH_MIPS  && DATA_64 && BOOK_CLFS
     338
     339
     340        default   "ppc"        if ARCH_PPC   && DATA_32
     341        default   "ppc64"      if ARCH_PPC   && DATA_MULTI
     342        default   "ppc64-64"   if ARCH_PPC   && DATA_64
     343
     344        default   "sparc"      if ARCH_SPARC && DATA_32
     345        default   "sparc64"    if ARCH_SPARC && DATA_MULTI
     346        default   "sparc64-64" if ARCH_SPARC && DATA_64
     347
     348        default   "alpha"      if ARCH_ALPHA
     349        default   "arm"        if ARCH_ARM
     350        default   "hppa"       if ARCH_HPPA
     351
     352    config  MIPS_LEVEL
     353        string
     354        depends BOOK_CLFS3 && ARCH_MIPS
     355        default "1"        if DATA_32
     356        default "3"        if DATA_64
     357
     358    config    ABI
     359        string
     360        depends BOOK_CLFS3
     361        default "-m32"      if ARCH_X86 || ARCH_ARM
     362#        default "-m64"     if NO USED YET IN THE BOOK
     363        default "-mabi=32"  if ABI_32 || (ARCH_MIPS && DATA_32)
     364        default "-mabi=n32" if ABI_N32
     365        default "-mabi=64"  if ABI_64
     366
     367    config    ENDIAN
     368        string
     369        depends BOOK_CLFS3 && (ARCH_MIPS || ARCH_ARM)
     370        default "little"    if PROC_mipsel || PROC_ARM || PROC_ARM5L
     371        default "big"       if PROC_mips || PROC_ARM5B
     372
     373    choice
     374        prompt    "Build method"
     375        depends    BOOK_CLFS
     376        help
     377            What build method should be used: a chroot jail or minimal boot
     378            system. Review the Cross-LFS book chap6 "TO BOOT OR CHROOT" for
     379            a full explanation.
     380
     381        config    BUILD_CHROOT
     382            bool    "chroot"
     383
     384        config    BUILD_BOOT
     385            bool    "boot"
     386    endchoice
     387
     388    config    METHOD
     389        string
     390        default "chroot"    if BUILD_CHROOT
     391        default "boot"      if BUILD_BOOT
     392
     393    config    BOOT_CONFIG
     394        string  "BOOT kernel config file (mandatory)"
     395        default "***EDIT ME***"
     396        depends on BUILD_BOOT
     397        help
     398            If METHOD=boot, location of boot-kernel config file
     399            The config file will be copied to ${BUILD_DIR}/sources
     400            and renamed 'bootkernel-config'
     401            NOTE: this setting is required
     402    #--- End CLFS specific params
     403
     404    #--- blfs-tool Support
     405    config BLFS_TOOL
     406        bool    "Add blfs-tool support"
     407        default    n
     408        depends on !BOOK_CLFS3 && !BOOK_BLFS
     409        help
     410            Activating this option will install additional packages needed
     411            to use blfs tools after booting the new system.
     412            The blfs-tool files will be installed under $BUILD_DIR/blfs_root
     413            (see below).
     414            After booting the new xLFS system, but before using the blfs tools,
     415            you should create a user account, move the /blfs_root directory
     416            to that user's home, and change its ownership to that of the user.
     417            Also, be sure to give the user read and write access on the
     418            $TRACKING_DIR directory and the files that it contains.
     419            Don't forget to configure sudo properly on the new system.
     420
     421    config DUMMY # Avoid indenting the items below
     422    bool
     423
     424    if BLFS_TOOL
     425        menu "blfs-tool dependencies"
     426
     427            config    DEP_LIBXML
     428            bool    "libxml2 (required)"
     429            default    y
     430
     431            config    DEP_LIBXSLT
     432            bool    "libxslt (required)"
     433            default    y
     434
     435            config    DEP_DBXML
     436            bool    "DocBook XML DTD (required)"
     437            default    y
     438
     439            config    DEP_LYNX
     440            bool    "lynx (optional, for reading the generated book)"
     441            default    y
     442
     443            config    DEP_SUDO
     444            bool    "sudo (recommended)"
     445            default    y
     446
     447            config    DEP_WGET
     448            bool    "wget (recommended)"
     449            default    y
     450
     451            config    DEP_GPM
     452            bool    "GPM (optional, see help)"
     453            default    n
     454            help
     455                if you install gpm, it will be started
     456                automatically on boot. You'll have to edit
     457                /etc/sysconfig/mouse for your system
     458
     459            config    DEP_SVN
     460            bool    "SVN client (optional, see help)"
     461            default    n
     462            help
     463                Subversion is needed for updating the book
     464                sources. If you want ssl support, select
     465                OPENSSL below.
     466
     467            config    DEP_OPENSSL
     468            bool    "OPENSSL (optional, see help)"
     469            default    n
     470            help
     471                selecting OPENSSL here allows to build
     472                subversion with ssl support, avoiding a later
     473                recompilation
     474
     475            config    DEP_PYTHON
     476            bool    "PYTHON 2 (optional, see help)"
     477            default    n
     478            help
     479                selecting PYTHON 2 here allows to build
     480                the libxml2 and libxslt python modules,
     481                avoiding a later recompilation
     482
     483        endmenu
     484
     485        choice
     486        prompt    "BLFS Release"
     487        default    BLFS_SVN
     488
     489            config    BLFS_SVN
     490            bool    "BLFS SVN"
     491            help
     492                Current development version as in trunk
     493
     494            config    BLFS_WORKING_COPY
     495            bool    "BLFS working copy"
     496            help
     497                A local working copy of the BLFS book.
     498
     499            config    BLFS_BRANCH
     500            bool    "BLFS Branch or stable book"
     501            help
     502                A supported SVN branch or stable book release
     503        endchoice
     504
     505        config    BLFS_WC_LOCATION
     506        string    "Location of the local BLFS working copy (mandatory)"
     507        default    "**EDIT ME**"
     508        depends on BLFS_WORKING_COPY
     509        help
     510            Full path to the BLFS book working copy"
     511
     512        config    BLFS_BRANCH_ID
     513        string    "BLFS Book Version (mandatory)"
     514        default    "**EDIT ME**"
     515        depends on BLFS_BRANCH
     516        help
     517            A list of valid branches and stable book IDs is available at
     518            http://wiki.linuxfromscratch.org/alfs/wiki/SupportedBooks.
     519    endif
     520    #--- End blfs-tool Support
     521
     522    #--- BLFS params (Used for installing the tools, either after a jhalfs run
     523    #    or directly)
     524        config    BLFS_ROOT
     525        string "Root of the tools directory (see help)"
     526        default "/blfs_root"
     527        depends on BLFS_TOOL || BOOK_BLFS
     528        help
     529            Path to the directory where all required files and scripts
     530            will be stored.
     531           
     532            This path must begin with a slash, and:
     533            - is relative to the user's HOME directory when installing the
     534              blfs tools on an already existing LFS system.
     535            - is relative to the root of the build directory (`/' in chroot)
     536              when adding the tools after a jhalfs run
     537           
     538            CAUTION: this directory will be removed if it already exists.
     539
     540        config    BLFS_XML
     541        string "BLFS sources directory (internal parameter)"
     542        default "blfs-xml"
     543        depends BLFS_TOOL || BOOK_BLFS
     544        help
     545            The directory name under $BLFS_ROOT where the BLFS
     546            book sources will be copied or checked out. Do not change that
     547            unless you know what you are doing...
     548    # End of BLFS parameters
     549
     550    #--- Custom Tools support
     551    config CUSTOM_TOOLS
     552        depends !BOOK_BLFS
     553        bool    "Add custom tools support"
     554        default    n
     555        help
     556            Activating this option additional packages you create
     557            will be installed after finished the xLFS system build.
     558    #--- End Custom Tools support
     559
     560    #--- This direcotry is needed for blfs tools installation and custom tools
     561    #    As well.
     562    config    TRACKING_DIR
     563        string "Installed packages database directory"
     564        default "/var/lib/jhalfs/BLFS"
     565        depends on BOOK_BLFS || BLFS_TOOL || CUSTOM_TOOLS
     566        help
     567            Full path to the directory where the database of
     568            installed packages will be created.
     569           
     570            If the blfs tools are installed on a running xLFS system,
     571            the user must have enough privileges to create this directory.
     572            It may be necessary to create the /var/lib/jhalfs directory as
     573            root, and make it writable by the user before running this tool.
     574           
     575            If you are installing the blfs tools as part of an xLFS build
     576            and/or using the customized scripts feature, you will
     577            need to fix this directory's permissions after booting
     578            the new system.
     579           
     580            Note that the user that will build the packages must
     581            have read and write access to this directory.
    606582
    607583#--- End BOOK Settings
    608584endmenu
    609585
    610 menu "--- General Settings"
    611 
    612         #--- Set User Account
    613         config  CONFIG_USER
    614                 bool    "Change the default user/group and homedir for this build"
    615                 default n
    616                 help    #-- Unprivileged user and group name
    617                         #   If you do not have the privilege to create/delete
    618                         #   users and groups you can specify your own
    619                         #   user ID for the build
    620                         #
    621                         # default values for each book
    622                         # LFS    lfs
    623                         # CLFS*  clfs
    624                         # HLFS   hlfs
    625                         #
    626                         # Also, if your host places users' home dirs into a
    627                         # directory other than /home you can specify it here.
    628 
    629         config  DEF_USER
    630                 string
    631                 default "lfs"   if BOOK_LFS || BOOK_LFS_SYSD
    632                 default "clfs"  if BOOK_CLFS || BOOK_CLFS2 || BOOK_CLFS3
    633                 default "hlfs"  if BOOK_HLFS
    634 
    635         config  SET_USER
    636                 string  "User account"
    637                 depends CONFIG_USER
    638                 default DEF_USER
    639 
    640         config  CONFIG_GROUP
    641                 bool    "Set Group?"
    642                 default n
    643                 depends CONFIG_USER
    644 
    645         config  SET_GROUP
    646                 string  "GROUP account"
    647                 depends CONFIG_GROUP
    648                 default DEF_USER
    649 
    650         config  CONFIG_HOME
    651                 bool    "Set home dir?"
    652                 default n
    653                 depends CONFIG_USER
    654 
    655         config  SET_HOME
    656                 string  "Path to the directory under which the user's home directory will be created"
    657                 depends CONFIG_HOME
    658                 default "/home"
    659 
    660         config  LUSER
    661                 string
    662                 default DEF_USER        if !CONFIG_USER
    663                 default SET_USER        if  CONFIG_USER
    664 
    665         config  LGROUP
    666                 string
    667                 default LUSER           if !CONFIG_GROUP
    668                 default SET_GROUP       if  CONFIG_GROUP
    669 
    670         config  LHOME
    671                 string
    672                 default "/home"         if !CONFIG_HOME
    673                 default SET_HOME        if  CONFIG_HOME
    674         #--- End Set User Account
    675 
    676         config BUILDDIR
    677                 string "Build Directory"
    678                 default "/mnt/build_dir"
    679                 help
    680                         #-- The directory where the created system will be located.
    681                         #   NOTE: A working directory named jhalfs will be created
    682                         #   here, so ensure this does not conflict with the jhalfs
    683                         #   source directory.
    684 
    685         config  GETPKG
    686                 bool "Retrieve source files"
    687                 default n
    688                 help
    689                         #-- Download all packages and patches required by the selected book
    690                         #   NOTE: Looks for files in the local archive defined by SRC_ARCHIVE
    691                         #   first and if necessary retrieves them from the 'net.
    692                         #   Files will be transferred to $BUILDDIR/sources.
    693 
    694         config SRC_ARCHIVE
    695                 string "Package Archive Directory"
    696                 default "$SRC_ARCHIVE"
    697                 depends GETPKG
    698                 help
    699                         #-- A local archive for packages/files (not $BUILDDIR/sources)
    700                         #   Any missing file will be downloaded and archived here,
    701                         #   if the user has the right privileges.
    702 
    703         config RETRYSRCDOWNLOAD
    704                 bool "Retry on 'connection refused' failure"
    705                 default n
    706                 depends GETPKG
    707                 help
    708                         #-- Attempt to download a source package again if it fails
    709                         #   with a 'connection refused' error. This can happen on
    710                         #   servers that are overloaded.
    711 
    712         config RETRYDOWNLOADCNT
    713                 int "Number of retry attempts on download failures"
    714                 default 20
    715                 depends GETPKG
    716                 help
    717                         #-- Number of times to retry a failed download.
    718 
    719         config DOWNLOADTIMEOUT
    720                 int "Download timeout (in seconds)"
    721                 default 30
    722                 depends GETPKG
    723                 help
    724                         #-- Number of seconds to wait for a download to start before
    725                         #   timing out.
    726 
    727         config SERVER
    728                 string "FTP mirror"
    729                 default "ftp://ftp.lfs-matrix.net"
    730                 depends GETPKG
    731                 help
    732                         #-- FTP mirror to download packages and patches if not found
    733                         #   in $SRC_ARCHIVE
    734                         #   As a last resort, the files will downloaded from upstream,
    735                         #   if possible.
    736 
    737         config  RUNMAKE
    738                 bool    "Run the makefile"
    739                 default n
    740                 help
    741                         #-- Automatically run the makefile once it has been created
    742 
    743         config  CLEAN
    744                 bool    "Rebuild files"
    745                 default n
    746                 help
    747                         #-- Clean the build directory before performing any other task.
    748                         #   The directory is cleaned only if it was populated by a
    749                         #   previous JHALFS run.
    750                         #
     586menu "General Settings"
     587depends !BOOK_BLFS
     588
     589    #--- Set User Account
     590    config    CONFIG_USER
     591        bool    "Change the default user/group and homedir for this build"
     592        default    n
     593        help    #-- Unprivileged user and group name
     594            #   If you do not have the privilege to create/delete
     595            #   users and groups you can specify your own
     596            #   user ID for the build
     597            #
     598            # default values for each book
     599            # LFS    lfs
     600            # CLFS*  clfs
     601            # HLFS   hlfs
     602            #
     603            # Also, if your host places users' home dirs into a
     604            # directory other than /home you can specify it here.
     605
     606    config    DEF_USER
     607        string
     608        default    "lfs"    if BOOK_LFS || BOOK_LFS_SYSD
     609        default    "clfs"    if BOOK_CLFS || BOOK_CLFS2 || BOOK_CLFS3
     610        default "hlfs"    if BOOK_HLFS
     611
     612    config    SET_USER
     613        string    "User account"
     614        depends    CONFIG_USER
     615        default    DEF_USER
     616
     617    config    CONFIG_GROUP
     618        bool    "Set Group?"
     619        default    n
     620        depends    CONFIG_USER
     621
     622    config    SET_GROUP
     623        string    "GROUP account"
     624        depends    CONFIG_GROUP
     625        default    DEF_USER
     626
     627    config    CONFIG_HOME
     628        bool    "Set home dir?"
     629        default    n
     630        depends    CONFIG_USER
     631
     632    config    SET_HOME
     633        string    "Path to the directory under which the user's home directory will be created"
     634        depends    CONFIG_HOME
     635        default    "/home"
     636
     637    config    LUSER
     638        string
     639        default    DEF_USER    if !CONFIG_USER
     640        default    SET_USER    if  CONFIG_USER
     641
     642    config    LGROUP
     643        string
     644        default    LUSER        if !CONFIG_GROUP
     645        default    SET_GROUP    if  CONFIG_GROUP
     646
     647    config    LHOME
     648        string
     649        default    "/home"        if !CONFIG_HOME
     650        default    SET_HOME    if  CONFIG_HOME
     651    #--- End Set User Account
     652
     653    config BUILDDIR
     654        string "Build Directory"
     655        default "/mnt/build_dir"
     656        help
     657            #-- The directory where the created system will be located.
     658            #   NOTE: A working directory named jhalfs will be created
     659            #   here, so ensure this does not conflict with the jhalfs
     660            #   source directory.
     661
     662    config    GETPKG
     663        bool "Retrieve source files"
     664        default n
     665        help
     666            #-- Download all packages and patches required by the selected book
     667            #   NOTE: Looks for files in the local archive defined by SRC_ARCHIVE
     668            #   first and if necessary retrieves them from the 'net.
     669            #   Files will be transferred to $BUILDDIR/sources.
     670
     671    config SRC_ARCHIVE
     672        string "Package Archive Directory"
     673        default "$SRC_ARCHIVE"
     674        depends GETPKG
     675        help
     676            #-- A local archive for packages/files (not $BUILDDIR/sources)
     677            #   Any missing file will be downloaded and archived here,
     678            #   if the user has the right privileges.
     679
     680    config RETRYSRCDOWNLOAD
     681        bool "Retry on 'connection refused' failure"
     682        default n
     683        depends GETPKG
     684        help
     685            #-- Attempt to download a source package again if it fails
     686            #   with a 'connection refused' error. This can happen on
     687            #   servers that are overloaded.
     688
     689    config RETRYDOWNLOADCNT
     690        int "Number of retry attempts on download failures"
     691        default 20
     692        depends GETPKG
     693        help
     694            #-- Number of times to retry a failed download.
     695
     696    config DOWNLOADTIMEOUT
     697        int "Download timeout (in seconds)"
     698        default 30
     699        depends GETPKG
     700        help
     701            #-- Number of seconds to wait for a download to start before
     702            #   timing out.
     703
     704    config SERVER
     705        string "FTP mirror"
     706        default "http://ftp.osuosl.org"
     707        depends GETPKG
     708        help
     709            #-- FTP mirror to download packages and patches if not found
     710            #   in $SRC_ARCHIVE
     711            #   As a last resort, the files will downloaded from upstream,
     712            #   if possible.
     713
     714    config    RUNMAKE
     715        bool    "Run the makefile"
     716        default n
     717        help
     718            #-- Automatically run the makefile once it has been created
     719
     720    config    CLEAN
     721        bool    "Rebuild files"
     722        default    n
     723        help
     724            #-- Clean the build directory before performing any other task.
     725            #   The directory is cleaned only if it was populated by a
     726            #   previous JHALFS run.
    751727
    752728#--- End General Settings
    753729endmenu
    754730
    755 menu "--- Build Settings"
    756 
    757         #--- Test Suites
    758         config  CONFIG_TESTS
    759                 bool    "Run testsuites"
    760                 depends !BOOK_CLFS2 && !BOOK_CLFS3
    761                 default y
    762                 help
    763                         #-- Run test suites
    764                         #
    765                         #  You will have to select between:
    766                         #
    767                         #  - Only final system Glibc, GCC and Binutils testsuites
    768                         #  - All final system testsuites
    769                         #  - Both temporary tools and final system testsuites
    770                         #
    771                         #  HLFS and CLFS have no testsuites available in the
    772                         #  temporary tools phase
    773 
    774                         #  You will be prompted also about the "flavour" of the
    775                         #  testsuites run:
    776                         #
    777                         #  - Don't stop on test suite failures
    778                         #  - Abort the build at the first test suite failure
    779                         #
    780 
    781         choice
    782                 prompt  "Tests level"
    783                 depends  CONFIG_TESTS
    784                 default TST_1
    785 
    786                 config  TST_1
    787                         bool    "Only final critical testsuites" if !BOOK_CLFS2 && !BOOK_CLFS3
    788 
    789                 config  TST_2
    790                         bool    "All final system testsuites"
    791 
    792                 config  TST_3
    793                         bool    "Both temporary tools and final system testsuites" if !BOOK_HLFS && !BOOK_CLFS
    794         endchoice
    795 
    796         config  TEST
    797                 int
    798                 default "0"     if !CONFIG_TESTS
    799                 default "1"     if TST_1
    800                 default "2"     if TST_2
    801                 default "3"     if TST_3
    802 
    803         choice
    804                 prompt  "Flavour"
    805                 depends CONFIG_TESTS
    806 
    807                 config  NO_BOMB
    808                         bool    "Don't stop on testsuite failures"
    809 
    810                 config  BOMB
    811                         bool    "Abort the build on the first testsuite failure"
    812         endchoice
    813 
    814         config  BOMB_TEST
    815                 bool
    816                 default n if NO_BOMB
    817                 default y if BOMB
    818 
    819         #--- End Test Suites
    820 
    821         #--- Package Management
    822         config  PKGMNGT
    823                 bool    "Package management"
    824                 depends BOOK_LFS || BOOK_LFS_SYSD
    825                 default n
    826                 help
    827                         #-- Use package management
    828                         #
    829                         #  If set, the packages in the final phase are built
    830                         #  in a separate directory, PKG_DEST.
    831                         #  You should provide a bash function for packing
    832                         #  and installing the package.
    833                         #  Also, you have to provide the instructions
    834                         #  to build the package manager during the
    835                         #  temporary tools phase, in the form of a
    836                         #  sect1 of the book identical to a package
    837                         #  sect1. See README.PACKAGE_MANAGEMENT
    838                         #
    839                         #  For now, this only works with LFS
    840 
    841         #--- End package management
    842 
    843         #--- Installed files logs
    844         config  INSTALL_LOG
    845                 bool    "Create a log of installed files for each package"
    846                 default n
    847                 help
    848                         #-- Select this if you want to create logs of the files
    849                         #   installed by each package on the final system.
    850 
    851         #--- End Installed files logs
    852 
    853         #--- FSTAB
    854         config  HAVE_FSTAB
    855                 bool    "Use a custom fstab file"
    856                 default n
    857                 help
    858                         #-- Select this if you have an fstab file with entries
     731menu "Build Settings"
     732depends !BOOK_BLFS
     733
     734    #--- Test Suites
     735    config    CONFIG_TESTS
     736        bool    "Run testsuites"
     737        depends    !BOOK_CLFS2 && !BOOK_CLFS3
     738        default    y
     739        help
     740            #-- Run test suites
     741            #
     742            #  You will have to select between:
     743            #
     744            #  - Only final system Glibc, GCC and Binutils testsuites
     745            #  - All final system testsuites
     746            #  - Both temporary tools and final system testsuites
     747            #
     748            #  HLFS and CLFS have no testsuites available in the
     749            #  temporary tools phase
     750
     751            #  You will be prompted also about the "flavour" of the
     752            #  testsuites run:
     753            #
     754            #  - Don't stop on test suite failures
     755            #  - Abort the build at the first test suite failure
     756            #
     757
     758    choice
     759        prompt    "Tests level"
     760        depends     CONFIG_TESTS
     761        default    TST_1
     762
     763        config  TST_1
     764            bool    "Only final critical testsuites" if !BOOK_CLFS2 && !BOOK_CLFS3
     765
     766        config    TST_2
     767            bool    "All final system testsuites"
     768
     769        config    TST_3
     770            bool    "Both temporary tools and final system testsuites" if !BOOK_HLFS && !BOOK_CLFS
     771    endchoice
     772
     773    config    TEST
     774        int
     775        default    "0"    if !CONFIG_TESTS
     776        default    "1"    if TST_1
     777        default    "2"    if TST_2
     778        default    "3"    if TST_3
     779
     780    choice
     781        prompt    "Flavour"
     782        depends    CONFIG_TESTS
     783
     784        config    NO_BOMB
     785            bool    "Don't stop on testsuite failures"
     786
     787        config    BOMB
     788            bool    "Abort the build on the first testsuite failure"
     789    endchoice
     790
     791    config    BOMB_TEST
     792        bool
     793        default    n if NO_BOMB
     794        default    y if BOMB
     795
     796    #--- End Test Suites
     797
     798    #--- Package Management
     799    config  PKGMNGT
     800        bool    "Package management"
     801        depends BOOK_LFS || BOOK_LFS_SYSD
     802        default n
     803        help
     804            #-- Use package management
     805            #
     806            #  If set, the packages in the final phase are built
     807            #  in a separate directory, PKG_DEST.
     808            #  You should provide a bash function for packing
     809            #  and installing the package.
     810            #  Also, you have to provide the instructions
     811            #  to build the package manager during the
     812            #  temporary tools phase, in the form of a
     813            #  sect1 of the book identical to a package
     814            #  sect1. See README.PACKAGE_MANAGEMENT
     815            #
     816            #  For now, this only works with LFS
     817
     818    #--- End package management
     819
     820    #--- Installed files logs
     821    config    INSTALL_LOG
     822        bool    "Create a log of installed files for each package"
     823        default    n
     824        help
     825            #-- Select this if you want to create logs of the files
     826            #   installed by each package on the final system.
     827
     828    #--- End Installed files logs
     829
     830    #--- FSTAB
     831    config    HAVE_FSTAB
     832        bool    "Use a custom fstab file"
     833        default    n
     834        help
     835            #-- Select this if you have an fstab file with entries
    859836                        #   for the target system
    860837
    861         config  FSTAB
    862                 string  "Fstab file (optional)"
    863                 default "***EDIT ME***"
    864                 depends on HAVE_FSTAB
    865                 help
    866                         #-- The location of fstab file (if empty, a template is created)
    867         #--- End FSTAB
    868 
    869         #--- Kernel
    870         config  CONFIG_BUILD_KERNEL
    871                 bool    "Build the kernel"
    872                 default n
    873                 help
    874                         #-- Select this option if you wish to build the kernel.
    875                         #
    876                         #   You will be prompted for the full path to the .config
    877                         #   file. It will be copied to the 'sources' directory and
    878                         #   renamed kernel-config
    879 
    880         config  CONFIG
    881                 string  "Kernel config file"
    882                 default "***EDIT ME***"
    883                 depends on CONFIG_BUILD_KERNEL
    884                 help
    885                         #-- Fully qualified path to a kernel config file
    886                         #   The config file will be copied to ${BUILD_DIR}/sources
    887                         #   and renamed 'kernel-config'
    888         #--- End Kernel
    889 
    890         config  STRIP
    891                 bool "Strip Installed Binaries/Libraries"
    892                 default n
    893                 depends on !BOOK_CLFS3
    894 
    895         config  VIMLANG
    896                 bool "Install vim-lang package"
    897                 default n
    898                 depends on !BOOK_HLFS && !BOOK_CLFS3
    899                 help
    900                         #-- Install the optional vim-lang package
    901                         #   NOTE: This option is obsolete with the 7.3 release of Vim
    902                         #   which is included in all recent releases of LFS.
    903 
    904         config  NO_PROGRESS_BAR
    905                 bool "DO NOT use/display progress_bar "
    906                 default n
    907                 help
    908                         #-- Do not use the progress bar routine. On slower machines
    909                         #   this function consumes precious CPU cycles.
    910 
    911         config  TIMEZONE
    912                 string "TimeZone"
    913                 default "GMT"
    914                 help
    915                         #-- The timezone as output by tzselect
    916                         #   This will be copied to /etc/localtime
    917 
    918         config  LANG
    919                 string "Language"
    920                 default "$LANG"
    921                 help
    922                         #-- LANG variable set in /etc/profile
    923                         #   See http://sourceware.org/git/?p=glibc.git;a=blob;f=localedata/SUPPORTED
    924                         #   for values (or the file localedata/SUPPORTED in glibc tarball)
    925 
    926         config  FULL_LOCALE
    927                 bool "Install the full set of locales"
    928                 default n
    929                 help
    930                         #-- If set to y, the full set of supported locales
    931                         #   will be installed. Otherwise, only the minimal set
    932                         #   necessary for the tests will be installed,
    933                         #   together with the locale associated with the
    934                         #   LANG you have chosen, if not in the minimal set.
    935 
    936         #--- Groff page
    937         choice
    938                 prompt  "Groff page size"
    939                 default PAGE_LETTER
    940                 help
    941                         #-- Page definition for groff: letter or A4
    942 
    943                 config  PAGE_LETTER
    944                         bool    "letter"
    945 
    946                 config  PAGE_A4
    947                         bool    "A4"
    948         endchoice
    949 
    950         config  PAGE
    951                 string
    952                 default "letter"        if PAGE_LETTER
    953                 default "A4"            if PAGE_A4
    954         #--- End Groff page
     838    config    FSTAB
     839        string    "Fstab file (optional)"
     840        default    "***EDIT ME***"
     841        depends on HAVE_FSTAB
     842        help
     843            #-- The location of fstab file (if empty, a template is created)
     844    #--- End FSTAB
     845
     846    #--- Kernel
     847    config    CONFIG_BUILD_KERNEL
     848        bool    "Build the kernel"
     849        default    n
     850        help
     851            #-- Select this option if you wish to build the kernel.
     852            #
     853            #   You will be prompted for the full path to the .config
     854            #   file. It will be copied to the 'sources' directory and
     855            #   renamed kernel-config
     856
     857    config    CONFIG
     858        string    "Kernel config file"
     859        default    "***EDIT ME***"
     860        depends on CONFIG_BUILD_KERNEL
     861        help
     862            #-- Fully qualified path to a kernel config file
     863            #   The config file will be copied to ${BUILD_DIR}/sources
     864            #   and renamed 'kernel-config'
     865    #--- End Kernel
     866
     867    config    STRIP
     868        bool "Strip Installed Binaries/Libraries"
     869        default n
     870        depends on !BOOK_CLFS3
     871
     872    config    VIMLANG
     873        bool "Install vim-lang package"
     874        default n
     875        depends on !BOOK_HLFS && !BOOK_CLFS3
     876        help
     877            #-- Install the optional vim-lang package
     878            #   NOTE: This option is obsolete with the 7.3 release of Vim
     879            #   which is included in all recent releases of LFS.
     880
     881    config    NO_PROGRESS_BAR
     882        bool "DO NOT use/display progress_bar "
     883        default n
     884        help
     885            #-- Do not use the progress bar routine. On slower machines
     886            #   this function consumes precious CPU cycles.
     887
     888    config    TIMEZONE
     889        string "TimeZone"
     890        default "GMT"
     891        help
     892            #-- The timezone as output by tzselect
     893            #   This will be copied to /etc/localtime
     894
     895    config    LANG
     896        string "Language"
     897        default "$LANG"
     898        help
     899            #-- LANG variable set in /etc/profile
     900            #   See http://sourceware.org/git/?p=glibc.git;a=blob;f=localedata/SUPPORTED
     901            #   for values (or the file localedata/SUPPORTED in glibc tarball)
     902
     903    config  FULL_LOCALE
     904        bool "Install the full set of locales"
     905        default n
     906        help
     907            #-- If set to y, the full set of supported locales
     908            #   will be installed. Otherwise, only the minimal set
     909            #   necessary for the tests will be installed,
     910            #   together with the locale associated with the
     911            #   LANG you have chosen, if not in the minimal set.
     912
     913    #--- Groff page
     914    choice
     915        prompt    "Groff page size"
     916        default    PAGE_LETTER
     917        help
     918            #-- Page definition for groff: letter or A4
     919
     920        config    PAGE_LETTER
     921            bool    "letter"
     922
     923        config    PAGE_A4
     924            bool    "A4"
     925    endchoice
     926
     927    config    PAGE
     928        string
     929        default    "letter"    if PAGE_LETTER
     930        default    "A4"        if PAGE_A4
     931    #--- End Groff page
    955932
    956933#--- End Build Settings
    957934endmenu
    958935
    959 menu "--- Advanced Features"
    960 
    961         config  REPORT
    962                 bool "Create SBU and disk usage report"
    963                 default y
    964 
    965         #--- ICA/farce
    966         config  COMPARE
    967                 bool "Run comparison analysis on final stage"
    968                 depends !BOOK_CLFS2 && !BOOK_CLFS3
    969                 default n
    970                 help
    971                         #-- Should an iterative comparison analysis be performed?
    972                         #
    973                         #   Unless you are familiar with ICA and/or FARCE do not
    974                         #   select this option
    975                         #
    976                         #  ICA and FARCE are analysis tools for comparing one
    977                         #  build to the next. Builds mays differ from one iteration
    978                         #  to another due to the build order and these tools try
    979                         #  to ferret out those differences by examining the stored
    980                         #  build logs and binary files.
    981                         #
    982                         #  The scripts are well commented and can be found in ./extras/*
    983                         #
    984 
    985         config  ITERATIONS
    986                 int     "Number of test runs (2,3,4,5)" if COMPARE
    987                 depends on COMPARE
    988                 range   2 5
    989                 default 3
    990 
    991         config  RUN_ICA
    992                 bool    "ICA testing"
    993                 depends on COMPARE
    994                 default y
    995                 help
    996                         #-- Run ICA testing
    997 
    998         config  RUN_FARCE
    999                 bool    "farce testing"
    1000                 depends on COMPARE
    1001                 default n
    1002                 help
    1003                         #-- Run farce testing
    1004         #--- End ICA/farce
    1005 
    1006         #--- Optimizations
     936menu "Advanced Features"
     937depends !BOOK_BLFS
     938
     939    config    REPORT
     940        bool "Create SBU and disk usage report"
     941        default y
     942
     943    #--- ICA/farce
     944    config    COMPARE
     945        bool "Run comparison analysis on final stage"
     946        depends    !BOOK_CLFS2 && !BOOK_CLFS3
     947        default n
     948        help
     949            #-- Should an iterative comparison analysis be performed?
     950            #
     951            #   Unless you are familiar with ICA and/or FARCE do not
     952            #   select this option
     953            #
     954            #  ICA and FARCE are analysis tools for comparing one
     955            #  build to the next. Builds mays differ from one iteration
     956            #  to another due to the build order and these tools try
     957            #  to ferret out those differences by examining the stored
     958            #  build logs and binary files.
     959            #
     960            #  The scripts are well commented and can be found in ./extras/*
     961            #
     962
     963    config    ITERATIONS
     964        int    "Number of test runs (2,3,4,5)"    if COMPARE
     965        depends on COMPARE
     966        range    2 5
     967        default    3
     968
     969    config    RUN_ICA
     970        bool    "ICA testing"
     971        depends on COMPARE
     972        default y
     973        help
     974            #-- Run ICA testing
     975
     976    config    RUN_FARCE
     977        bool    "farce testing"
     978        depends on COMPARE
     979        default n
     980        help
     981            #-- Run farce testing
     982    #--- End ICA/farce
     983
     984    #--- Optimizations
    1007985if !BOOK_CLFS2 && !BOOK_CLFS3
    1008         config  CONFIG_OPTIMIZE
    1009                 bool    "Optimization and parallelization"
    1010                 default n
    1011                 help
    1012                         #   Opens a menu for various optimization settings:
    1013                         #   Actual optimization flags MUST be defined in ./optimize/*
    1014                         #   before activating this option.
    1015                         #
    1016                         # WARNING: The use of build optimizations may lead to build issues.
    1017                         #   If the system doesn't work as expected, please rebuild
    1018                         #   without optimizations before asking for support.
    1019         menu    "Optimization settings"
    1020                 depends on CONFIG_OPTIMIZE
    1021 
    1022         config  N_PARALLEL
    1023                 int "Number of parallel `make' jobs"
    1024                 default 1
    1025                 help
    1026                         #-- The usual recommandation is (number of CPU cores)+1
    1027                         #   Do not set for meaningful SBU calculations.
    1028 
    1029         choice
    1030                 prompt "Optimization level "
    1031                 default OPT_1
    1032                 help
    1033                         #-- Optimization values are set in optimize/* files
    1034 
    1035                 config  OPT_1
    1036                         bool    "Final system only"
    1037 
    1038                 config  OPT_2
    1039                         bool    "Both temp tools and final system"
    1040 
    1041                 config  OPT_3
    1042                         bool    "Cross tools (only MAKEFLAGS), temp tools and final system" if BOOK_CLFS
    1043         endchoice
     986    config    CONFIG_OPTIMIZE
     987        bool    "Optimization and parallelization"
     988        default    n
     989        help
     990            #   Opens a menu for various optimization settings:
     991            #   Actual optimization flags MUST be defined in ./optimize/*
     992            #   before activating this option.
     993            #
     994            # WARNING: The use of build optimizations may lead to build issues.
     995            #   If the system doesn't work as expected, please rebuild
     996            #   without optimizations before asking for support.
     997    menu    "Optimization settings"
     998        depends on CONFIG_OPTIMIZE
     999
     1000    config    N_PARALLEL
     1001        int "Number of parallel `make' jobs"
     1002        default 1
     1003        help
     1004            #-- The usual recommandation is (number of CPU cores)+1
     1005            #   Do not set for meaningful SBU calculations.
     1006
     1007    choice
     1008        prompt "Optimization level "
     1009        default OPT_1
     1010        help
     1011            #-- Optimization values are set in optimize/* files
     1012
     1013        config    OPT_1
     1014            bool    "Final system only"
     1015
     1016        config    OPT_2
     1017            bool    "Both temp tools and final system"
     1018
     1019        config    OPT_3
     1020            bool    "Cross tools (only MAKEFLAGS), temp tools and final system" if BOOK_CLFS
     1021    endchoice
    10441022endmenu
    1045         config  OPTIMIZE
    1046                 int
    1047                 default "0"     if !CONFIG_OPTIMIZE
    1048                 default "1"     if OPT_1
    1049                 default "2"     if OPT_2
    1050                 default "3"     if OPT_3
     1023    config    OPTIMIZE
     1024        int
     1025        default    "0"    if !CONFIG_OPTIMIZE
     1026        default    "1"    if OPT_1
     1027        default    "2"    if OPT_2
     1028        default    "3"    if OPT_3
    10511029endif
    1052         #--- End Optimizations
    1053 
    1054         #-- Internal Settings
    1055         menu "Internal Settings (WARNING: for jhalfs developers only)"
    1056 
    1057                 config  SCRIPT_ROOT
    1058                         string  "Scripts root"
    1059                         default "jhalfs"
    1060 
    1061                 config  JHALFSDIR
    1062                         string "jhalfs directory"
    1063                         default "$BUILDDIR/$SCRIPT_ROOT"
    1064 
    1065                 config  LOGDIRBASE
    1066                         string "Build logs directory basename"
    1067                         default "logs"
    1068 
    1069                 config  LOGDIR
    1070                         string "Build logs directory"
    1071                         default "$JHALFSDIR/$LOGDIRBASE"
    1072 
    1073                 config  TESTLOGDIRBASE
    1074                         string "Test suites logs directory basename"
    1075                         default "test-logs"
    1076 
    1077                 config  TESTLOGDIR
    1078                         string "Test suites logs directory"
    1079                         default "$JHALFSDIR/$TESTLOGDIRBASE"
    1080 
    1081                 config  FILELOGDIRBASE
    1082                         string "Installed files logs directory basename"
    1083                         default "installed-files"
    1084 
    1085                 config  FILELOGDIR
    1086                         string "Installed files logs directory"
    1087                         default "$JHALFSDIR/$FILELOGDIRBASE"
    1088 
    1089                 config  ICALOGDIR
    1090                         string "ICA logs directory"
    1091                         default "$LOGDIR/ICA"
    1092 
    1093                 config  FARCELOGDIR
    1094                         string "farce logs directory"
    1095                         default "$LOGDIR/farce"
    1096 
    1097                 config  MKFILE
    1098                         string "Makefile"
    1099                         default "$JHALFSDIR/Makefile"
    1100 
    1101                 config  XSL
    1102                         string "XSL stylesheet"
    1103                         default "$PROGNAME.xsl"
    1104 
    1105                 config  PKG_LST
    1106                         string "Package contents list"
    1107                         default "unpacked"
    1108 
    1109         #--- End Internal Settings
    1110         endmenu
     1030    #--- End Optimizations
     1031
     1032    #-- Internal Settings
     1033    menu "Internal Settings (WARNING: for jhalfs developers only)"
     1034
     1035        config    SCRIPT_ROOT
     1036            string    "Scripts root"
     1037            default "jhalfs"
     1038
     1039        config    JHALFSDIR
     1040            string "jhalfs directory"
     1041            default "$BUILDDIR/$SCRIPT_ROOT"
     1042
     1043        config    LOGDIRBASE
     1044            string "Build logs directory basename"
     1045            default "logs"
     1046
     1047        config    LOGDIR
     1048            string "Build logs directory"
     1049            default "$JHALFSDIR/$LOGDIRBASE"
     1050
     1051        config    TESTLOGDIRBASE
     1052            string "Test suites logs directory basename"
     1053            default "test-logs"
     1054
     1055        config    TESTLOGDIR
     1056            string "Test suites logs directory"
     1057            default "$JHALFSDIR/$TESTLOGDIRBASE"
     1058
     1059        config    FILELOGDIRBASE
     1060            string "Installed files logs directory basename"
     1061            default "installed-files"
     1062
     1063        config    FILELOGDIR
     1064            string "Installed files logs directory"
     1065            default "$JHALFSDIR/$FILELOGDIRBASE"
     1066
     1067        config    ICALOGDIR
     1068            string "ICA logs directory"
     1069            default "$LOGDIR/ICA"
     1070
     1071        config    FARCELOGDIR
     1072            string "farce logs directory"
     1073            default "$LOGDIR/farce"
     1074
     1075        config    MKFILE
     1076            string "Makefile"
     1077            default "$JHALFSDIR/Makefile"
     1078
     1079        config    XSL
     1080            string "XSL stylesheet"
     1081            default "$PROGNAME.xsl"
     1082
     1083        config    PKG_LST
     1084            string "Package contents list"
     1085            default "unpacked"
     1086
     1087    #--- End Internal Settings
     1088    endmenu
    11111089
    11121090#--- End Advanced Features
     
    11141092
    11151093config REBUILD_MAKEFILE
    1116         bool "Rebuild the Makefile (see help)"
    1117         default n
    1118         help
    1119                 #-- Rebuild the Makefile
    1120                 #
    1121                 #   This option allows to rebuild the Makefile after
    1122                 #   customizing the base system build scripts.
    1123                 #
    1124                 #   See README.CUSTOM for more info about this feature.
    1125 
     1094    depends !BOOK_BLFS
     1095    bool "Rebuild the Makefile (see help)"
     1096    default n
     1097    help
     1098        #-- Rebuild the Makefile
     1099        #
     1100        #   This option allows to rebuild the Makefile after
     1101        #   customizing the base system build scripts.
     1102        #
     1103        #   See README.CUSTOM for more info about this feature.
     1104
  • install-blfs-tools.sh

    r18567e9 re5d44f5  
    20202 - To install with only user privileges (default to sysv):
    2121TRACKING_DIR=$HOME/blfs_root/trackdir ./install-blfs-tools.sh
     22
     23This script can also be called automatically after running make in this
     24directory. The parameters will then be taken from the configuration file.
    2225inline_doc
    2326
     
    4649declare -r   SD_BORDER="${BOLD}------------------------------------------------------------------------------${OFF}"
    4750declare -r STAR_BORDER="${BOLD}******************************************************************************${OFF}"
     51declare -r dotSTR=".................." # Format display of parameters and versions
    4852
    4953# bold yellow > <  pair
    5054declare -r R_arrow=$'\e[1;33m>\e[0m'
    5155declare -r L_arrow=$'\e[1;33m<\e[0m'
    52 
    5356VERBOSITY=1
    5457
     58# Take parameters from "configuration" if $1="auto"
     59if [ "$1" = auto ]; then
     60  [[ $VERBOSITY > 0 ]] && echo -n "Loading configuration ... "
     61  source configuration
     62  [[ $? > 0 ]] && echo -e "\nconfiguration could not be loaded" && exit 2
     63  [[ $VERBOSITY > 0 ]] && echo "OK"
     64fi
     65
     66if [ "$BOOK_BLFS" = y ]; then
     67## Read variables and sanity checks
     68  [[ "$relSVN" = y ]] && BLFS_BRANCH_ID=development
     69  [[ "$BRANCH" = y ]] && BLFS_BRANCH_ID=$BRANCH_ID
     70  [[ "$WORKING_COPY" = y ]] && BLFS_BOOK=$BOOK
     71  [[ "$BRANCH_ID" = "**EDIT ME**" ]] &&
     72    echo You have not set the book version or branch && exit 1
     73  [[ "$BOOK" = "**EDIT ME**" ]] &&
     74    echo You have not set the working copy location && exit 1
     75fi
     76
    5577COMMON_DIR="common"
     78# blfs-tool envars
    5679BLFS_TOOL='y'
    5780BUILDDIR=$(cd ~;pwd)
     
    5982TRACKING_DIR="${TRACKING_DIR:=/var/lib/jhalfs/BLFS}"
    6083INIT_SYSTEM="${INIT_SYSTEM:=sysv}"
     84BLFS_BRANCH_ID=${BLFS_BRANCH_ID:=development}
     85BLFS_XML=${BLFS_XML:=blfs-xml}
    6186
     87# Validate the configuration:
     88PARAMS="BLFS_ROOT TRACKING_DIR INIT_SYSTEM BLFS_XML"
     89if [ "$WORKING_COPY" = y ]; then
     90  PARAMS="$PARAMS WORKING_COPY BOOK"
     91else
     92  PARAMS="$PARAMS BLFS_BRANCH_ID"
     93fi
     94# Format for displaying parameters:
     95declare -r PARAM_VALS='${config_param}${dotSTR:${#config_param}} ${L_arrow}${BOLD}${!config_param}${OFF}${R_arrow}'
     96
     97for config_param in $PARAMS; do
     98  echo -e "`eval echo $PARAM_VALS`"
     99done
     100
     101echo "${SD_BORDER}${nl_}"
     102echo -n "Are you happy with these settings? yes/no (no): "
     103read ANSWER
     104if [ x$ANSWER != "xyes" ] ; then
     105  echo "${nl_}Rerun make and fix your settings.${nl_}"
     106  exit
     107fi
    62108[[ $VERBOSITY > 0 ]] && echo "${SD_BORDER}${nl_}"
    63109
     
    70116[[ $VERBOSITY > 0 ]] && echo "${SD_BORDER}${nl_}"
    71117
    72 # blfs-tool envars
    73 BLFS_BRANCH_ID=${BLFS_BRANCH_ID:=development}
    74118case $BLFS_BRANCH_ID in
    75119  development )  BLFS_TREE=trunk/BOOK ;;
     
    79123
    80124# Check for build prerequisites.
    81 declare -r dotSTR=".................." # needed for proper display of versions
    82125echo
    83126  check_alfs_tools
     
    88131[[ $VERBOSITY > 0 ]] && echo -n Populating the ${BUILDDIR}${BLFS_ROOT} directory
    89132[[ ! -d ${BUILDDIR}${BLFS_ROOT} ]] && mkdir -pv ${BUILDDIR}${BLFS_ROOT}
     133rm -rf ${BUILDDIR}${BLFS_ROOT}/*
    90134cp -r BLFS/* ${BUILDDIR}${BLFS_ROOT}
    91135cp -r menu ${BUILDDIR}${BLFS_ROOT}
     
    102146rm -rf ${BUILDDIR}${BLFS_ROOT}/menu/lxdialog/.svn
    103147# We do not want to keep an old version of the book:
    104 rm -rf ${BUILDDIR}${BLFS_ROOT}/blfs-xml
     148rm -rf ${BUILDDIR}${BLFS_ROOT}/$BLFS_XML
    105149
    106150# Set some harcoded envars to their proper values
     
    115159[[ $VERBOSITY > 0 ]] && echo "... OK"
    116160
    117 [[ $VERBOSITY > 0 ]] && echo "Downloading and validating the book (may take some time)"
     161[[ $VERBOSITY > 0 ]] &&
     162echo "Retrieving and validating the book (may take some time)"
     163
     164[[ -z "$BLFS_BOOK" ]] ||
     165[[ $BLFS_BOOK = $BUILDDIR$BLFS_ROOT/$BLFS_XML ]] ||
     166cp -a $BLFS_BOOK $BUILDDIR$BLFS_ROOT/$BLFS_XML
     167
    118168make -j1 -C $BUILDDIR$BLFS_ROOT \
    119169     TRACKING_DIR=$TRACKING_DIR \
    120170     REV=$INIT_SYSTEM            \
     171     BLFS_XML=$BUILDDIR$BLFS_ROOT/$BLFS_XML      \
    121172     SVN=svn://svn.linuxfromscratch.org/BLFS/$BLFS_TREE \
    122173     $BUILDDIR$BLFS_ROOT/packages.xml
  • menu/mconf.c

    r18567e9 re5d44f5  
    474474        struct property *prop;
    475475        struct menu *child;
    476         int type, tmp, doint = 2;
     476/*      int type, tmp, doint = 2; */
     477        int type, doint = 2;
    477478        tristate val;
    478479        char ch;
     
    596597                        default:
    597598                                cprint_tag("s%p", menu);
    598                                 tmp = cprint_name("(%s)", sym_get_string_value(sym));
     599/*                              tmp = cprint_name("(%s)", sym_get_string_value(sym));
    599600                                tmp = indent - tmp + 4;
    600601                                if (tmp < 0)
    601                                         tmp = 0;
    602                                 cprint_name("%*c%s%s", tmp, ' ', menu_get_prompt(menu),
    603                                         (sym_has_value(sym) || !sym_is_changable(sym)) ?
    604                                         "" : " (NEW)");
     602                                        tmp = 0; */
     603                                cprint_name("   %*c%s (%s)%s",
     604                                   indent+1, ' ',
     605                                   menu_get_prompt(menu),
     606                                   sym_get_string_value(sym),
     607                                   (sym_has_value(sym) || !sym_is_changable(sym)) ?
     608                                     "" : " (NEW)");
    605609                                goto conf_childs;
    606610                        }
Note: See TracChangeset for help on using the changeset viewer.