Changeset 0fa52f2
- Timestamp:
- 03/01/2022 08:09:30 PM (2 years ago)
- Branches:
- ablfs-more, trunk
- Children:
- 9a86aa58
- Parents:
- 4c36783
- Files:
-
- 1 deleted
- 15 edited
Legend:
- Unmodified
- Added
- Removed
-
CHEATSHEET
r4c36783 r0fa52f2 118 118 119 119 ------------------------------ 120 ------------------------------121 CLFS book, systemd, stable version (as of April 2017)122 X86 multilib123 Download the files to /usr/src (verify you have write access)124 Build in /mnt/clfs (should be owned by root, verify you can execute sudo)125 Clean the build directory before beginning126 Use "boot" method, with a temporary kernel in /home/user/config-boot127 Build a kernel, whose configuration is in /home/user/config-4.15-clfs-systemd128 An fstab for the future system si located in /home/user/fstablfs129 Run all the testsuites for final system130 Settings for an user in Sidney (Australia)131 Run four make jobs in parallel132 -----------------------------133 BOOK Settings --->134 Use BOOK (Cross-Compiled Linux From Scratch) --->135 Release (Branch or stable book) --->136 Branch (preceded by "branch-"), stable Version, or tag (3.0.0-systemd)137 Target architecture (x86) --->138 Library (multilib) --->139 Build method (boot) --->140 BOOT kernel config file (mandatory) ($HOME/config-boot)141 [ ] Add blfs-tool support (NEW)142 [ ] Add custom tools support (NEW)143 144 General Settings --->145 Build Directory (/mnt/clfs)146 [*] Retrieve source files147 Package Archive Directory (/usr/src)148 [ ] Retry on 'connection refused' failure (NEW)149 Number of retry attempts on download failures (20) (NEW)150 Download timeout (in seconds) (30) (NEW)151 FTP mirror (http://ftp.osuosl.org) (NEW)152 [*] Run the makefile153 [*] Rebuild files154 155 Build Settings --->156 [*] Run testsuites157 Tests level (All final system testsuites) --->158 Flavour (Don't stop on testsuite failures) --->159 [ ] Create a log of installed files for each package160 [*] Use a custom fstab file161 Fstab file (optional) ($HOME/fstablfs)162 [*] Build the kernel163 Kernel config file ($HOME/config-4.15-clfs-systemd164 [ ] Strip Installed Binaries/Libraries165 [ ] Install non-wide-character ncurses166 [ ] DO NOT use/display progress_bar167 TimeZone (Australia/Sydney)168 Language (en_AU.UTF-8)169 [ ] Install the full set of locales170 Groff page size (A4) --->171 172 Advanced Features --->173 [*] Create SBU and disk usage report174 [ ] Run comparison analysis on final stage175 [*] Optimization and parallelization176 Optimization settings --->177 Number of parallel `make' jobs (4)178 Optimization level (Cross tools (only MAKEFLAGS), temp tools and final system) --->179 Internal Settings (WARNING: for jhalfs developers only) --->180 181 [ ] Rebuild the Makefile (see help)182 --------------------------------183 -
README
r4c36783 r0fa52f2 15 15 enough if you just want to build a base system as per the LFS book. It is 16 16 also a required reading for all the other projects. 17 - README.CLFS: supplementary instructions to use the CLFS book series.18 17 - README.BLFS: instructions to install an automated build infrastructure 19 18 for the BLFS book. There are two ways to do so: (i) install the 20 tools at the end of an LFS build (CLFS is not supported in that case), or19 tools at the end of an LFS build, or 21 20 (ii) install the tools on an already running system. Both methods are 22 21 described in that file. … … 26 25 available. 27 26 - README.PACKAGE_MANAGEMENT: instructions to use package management during 28 the build (only for LFS, patches welcome for CLFS...)27 the build 29 28 30 29 Other sources of information are the context help in the menu interface, … … 169 168 6. LAYOUT:: 170 169 171 /BLFS (see README.BLFS) 172 173 /CLFS/master.sh 174 /clfs.xsl 175 176 /CLFS2/master.sh 177 /clfs2.xsl 178 179 /CLFS3/master.sh 180 /clfs3.xsl 170 /BLFS/* (see README.BLFS) 181 171 182 172 /LFS/master.sh 183 173 /lfs.xsl 184 174 185 /common/common_functions 175 /common/chroot.xsl 176 /common_functions 177 /create-sbu_du-report.sh 178 /hostreqs.xsl 179 /kernfs.xsl 186 180 /makefile_functions 187 181 /packages.xsl 182 /progress_bar.sh 188 183 /urls.xsl 189 /create-sbu_du-report.sh190 /progress_bar.sh191 /blfs-tool-deps/9xx-*192 184 /libs/func_* 193 185 194 /custom/ template195 /config/ 196 /examples/*197 / examples_CLFS-E/*186 /custom/examples/* 187 /config/* (needs to be created after cloning since it is an 188 empty directory initially) 189 /template 198 190 199 191 /extras/do_copy_files 200 192 /do_ica_prep 201 193 /do_ica_work 194 195 /menu/* 202 196 203 197 /optimize/opt_config … … 206 200 /opt_config.d/noOpt 207 201 /noSymbols 202 /O2pipe 208 203 /O3pipe 209 204 /O3pipe_march 210 205 /defOpt_fPIC 211 206 212 /menu/* 213 207 /pkgmngt/packageManager.xml.dpkg 208 /packageManager.xml.pacman 209 /packageManager.xml.porg 210 /packageManager.xml.template 211 /packInstall.sh.dpkg 212 /packInstall.sh.pacman 213 /packInstall.sh.porg 214 /packInstall.sh.template 215 216 CHEATSHEET 217 FUNCTION_LIST 218 LICENSE 214 219 README 215 220 README.BLFS 216 README.CLFS217 221 README.CUSTOM 222 README.PACKAGE_MANAGEMENT 218 223 TODO 219 LICENSE220 224 221 225 Config.in 226 jhalfs 222 227 Makefile 223 jhalfs224 blfs-tool225 228 226 229 7. FAQ:: … … 245 248 jhalfs (Makefile, cmd scripts, logs, etc..) 246 249 sources (where packages reside) 247 tools (temporary bootstrap system) 248 cross-tools (temporary CLFS only) 250 tools (temporary cross compiler) 249 251 ... 250 252 FHS dir structure … … 271 273 A. The package files must be visible during the chroot phase and this is a 272 274 simple and reliable method of doing so. This method also handles the 273 CLFSboot build method where the final build may be done on a separate275 boot build method where the final build may be done on a separate 274 276 machine. 275 277 … … 289 291 after saving your original to .bashrc.XXX 290 292 291 Q. "When I try to build CLFS the Makefile fails at mid-point"292 A. There could be numerous reasons for the failure but the most likely293 reason is you are doing a cross-build using the 'chroot' method and the294 target is not compatible with the host. If you choose to build using295 the chroot method a test is performed at the end of the temptools296 phase. If the test succeeds the build continues inside a chroot jail.297 However if the test fails, it means the host and target are not298 compatible an you should use the 'boot' method to create your target299 code.300 As an extreme example: You can build a sparc target on a x86 platform but301 only the temptools phase. You must select the 'boot' method and not the302 'chroot.' You must transfer the toolchain to a sparc platform, reboot the303 sparc box and continue the build.304 Of all the LFS series of books Cross-LFS requires the greatest305 understanding of host/target hardware combination. Please read the book306 carefully and don't skip the easy parts (there are none...)307 308 293 Q. "How could I stop the build at a predefined chosen point?" 309 294 A. Launch the Makefile manually passing the last numbered target to be build -
README.CUSTOM
r4c36783 r0fa52f2 3 3 4 4 Normally JHALFS creates a Makefile containing only those scripts found in 5 the {,B ,C,H}LFS books. An automated construction tool cannot predict the5 the {,B}LFS books. An automated construction tool cannot predict the 6 6 needs of every individual and requests are made "Can you add xxxx package". 7 7 Rather than adding numerous package scripts and switches for each request it … … 104 104 /config <-- where to put your scripts. 105 105 /examples <-- a few example scripts 106 /examples_CLFS-E <-- example scripts for CLFS-Embedded107 106 template <-- ALL scripts MUST look like this 108 109 107 110 108 … … 153 151 Other examples can be found in custom/examples. They are dated and 154 152 unmaintained, but can be useful for creating your own scripts. 155 156 :::NOTICE:::157 The following examples are for use with LFS and are not applicable to any158 of the CLFS-sysroot or CLFS-Embedded books. The directory examples_CLFS-E159 contains code extracted from Beyond CLFS-embedded. Any packages you chose to160 add should honour the DESTDIR=${CLFS} switch or equivalent.161 153 162 154 -
TODO
r4c36783 r0fa52f2 1 1 jhalfs TODO 2 2 --------------- 3 4 MASTER SCRIPT5 -------------6 7 - [CLFS] Add a switch to choose between static or DHCP network configuration8 for CLFS.9 10 11 xLFS MODULES12 ------------13 14 - [CLFS] Add a switch to choose between static or DHCP network configuration15 for CLFS.16 3 17 4 -
common/libs/func_book_parser
r4c36783 r0fa52f2 15 15 case $PROGNAME in 16 16 lfs) git_root="lfs.git" ;; 17 clfs*) ;;18 17 *) echo "BOOK not defined in function <get_book>" 19 18 exit 1 ;; … … 58 57 echo -n "Extracting commands for" 59 58 case ${PROGNAME} in 60 clfs)61 echo -n " ${L_arrow}${BOLD}$ARCH${R_arrow} target architecture... "62 xsltproc --nonet \63 --xinclude \64 --stringparam method "$METHOD" \65 --stringparam testsuite "$TEST" \66 --stringparam bomb-testsuite "$BOMB_TEST" \67 --stringparam timezone "$TIMEZONE" \68 --stringparam page "$PAGE" \69 --stringparam lang "$LANG" \70 --stringparam sparc "$SPARC64_PROC" \71 --stringparam x86 "$TARGET" \72 --stringparam mips "$TARGET" \73 -o ./${PROGNAME}-commands/ \74 $XSL \75 $BOOK/BOOK/$ARCH-index.xml >>$LOGDIR/$LOG 2>&176 ;;77 78 clfs2)79 echo -n " ${L_arrow}${BOLD}$ARCH${R_arrow} target architecture... "80 xsltproc --nonet \81 --xinclude \82 --stringparam timezone "$TIMEZONE" \83 --stringparam page "$PAGE" \84 --stringparam lang "$LANG" \85 --output ./${PROGNAME}-commands/ \86 $XSL \87 $BOOK/BOOK/$ARCH-index.xml >>$LOGDIR/$LOG 2>&188 ;;89 90 clfs3)91 echo -n " ${L_arrow}${BOLD}$ARCH${R_arrow} target architecture... "92 xsltproc --nonet \93 --xinclude \94 --stringparam endian x$ENDIAN \95 --stringparam timezone "$TIMEZONE" \96 --stringparam page "$PAGE" \97 --stringparam lang "$LANG" \98 --output ./${PROGNAME}-commands/ \99 $XSL \100 $BOOK/BOOK/$ARCH-index.xml >>$LOGDIR/$LOG 2>&1101 ;;102 59 103 60 lfs) … … 185 142 # version from lfs-release in the lfs case. 186 143 case $PROGNAME in 187 clfs*)188 VERSION=$(xmllint --noent $BOOK/BOOK/prologue/$ARCH/bookinfo.xml 2>/dev/null | grep subtitle | sed -e 's/^.*ion //' -e 's/<\/.*//') ;;189 144 lfs) 190 145 VERSION=$(grep 'echo.*lfs-release' prbook.xml | sed 's/.*echo[ ]*\([^ ]*\).*/\1/') … … 208 163 echo -n "... " 209 164 case ${PROGNAME} in 210 clfs*)211 xsltproc --nonet --xinclude \212 -o pkg_tarball_list \213 packages.xsl \214 $BOOK/BOOK/materials/${ARCH}-chapter.xml >>$LOGDIR/$LOG 2>&1215 ;;216 165 lfs) 217 166 # lfs does not use the package list anymore … … 233 182 echo -n "... " 234 183 case ${PROGNAME} in 235 clfs*)236 xsltproc --nonet --xinclude \237 -o chroot-scripts/ chroot.xsl \238 $BOOK/BOOK/${ARCH}-index.xml >> $LOGDIR/$LOG 2>&1239 ;;240 184 lfs) 241 185 xsltproc --nonet --xinclude \ … … 259 203 echo -n "... " 260 204 case ${PROGNAME} in 261 clfs*)262 xsltproc --nonet --xinclude \263 -o kernfs-scripts/ kernfs.xsl \264 $BOOK/BOOK/${ARCH}-index.xml >> $LOGDIR/$LOG 2>&1265 ;;266 205 lfs) 267 206 xsltproc --nonet \ -
common/libs/func_check_version.sh
r4c36783 r0fa52f2 93 93 export LC_ALL 94 94 95 # LFS /CLFSprerequisites95 # LFS prerequisites 96 96 if [ -n "$MIN_Linux_VER" ]; then 97 97 check_version "$MIN_Linux_VER" "`uname -r`" "KERNEL" -
common/libs/func_compare.sh
r4c36783 r0fa52f2 37 37 local PREV_IT=$3 38 38 39 if [[ "$PROGNAME" = "clfs" ]] ; then 40 final_system_Makefiles $RUN 41 else 42 chapter_targets $CHAP $RUN 43 fi 39 chapter_targets $CHAP $RUN 44 40 45 if [[ "$PROGNAME" = "clfs" ]] ; then 46 basicsystem="$basicsystem $PREV_IT $system_build" 47 else 48 CHROOT_TGT="$CHROOT_TGT $PREV_IT $system_build" 49 fi 41 CHROOT_TGT="$CHROOT_TGT $PREV_IT $system_build" 50 42 51 43 if [[ "$RUN" = "$ITERATIONS" ]] ; then 52 if [[ "$PROGNAME" = "clfs" ]] ; then53 basicsystem="$basicsystem iteration-$RUN"54 else55 44 CHROOT_TGT="$CHROOT_TGT iteration-$RUN" 56 fi57 45 fi 58 46 } -
common/libs/func_custom_pkgs
r4c36783 r0fa52f2 23 23 # Create an entry for a self contained cmd script that does not 24 24 # reference a package tarball 25 case $PROGNAME in 26 clfs2 | clfs3 ) 27 LUSER_wrt_target "${this_script}" "$PREV" 28 LUSER_wrt_RunAsUser "custom-tools/${this_script}" 29 ;; 30 *) 31 CHROOT_wrt_target "${this_script}" "$PREV" 32 CHROOT_wrt_RunAsRoot "custom-tools/${this_script}" 33 ;; 34 esac 25 CHROOT_wrt_target "${this_script}" "$PREV" 26 CHROOT_wrt_RunAsRoot "custom-tools/${this_script}" 35 27 wrt_touch 36 28 … … 47 39 else 48 40 # Create an entry for package 49 case $PROGNAME in 50 clfs2 | clfs3 ) 51 LUSER_wrt_target "${this_script}" "$PREV" 52 LUSER_wrt_unpack "${PKG_FILE}" 53 LUSER_wrt_RunAsUser "custom-tools/${this_script}" 54 LUSER_RemoveBuildDirs "${PKG}" 55 echo -e "\t@touch \$(MOUNT_PT)$TRACKING_DIR/${PKG}-${PKG_VERSION}" >> $MKFILE.tmp 56 ;; 57 *) 58 CHROOT_wrt_target "${this_script}" "$PREV" 59 CHROOT_Unpack "${PKG_FILE}" 60 CHROOT_wrt_RunAsRoot "custom-tools/${this_script}" 61 CHROOT_wrt_RemoveBuildDirs "${PKG}" 62 echo -e "\t@touch $TRACKING_DIR/${PKG}-${PKG_VERSION}" >> $MKFILE.tmp 63 ;; 64 esac 41 CHROOT_wrt_target "${this_script}" "$PREV" 42 CHROOT_Unpack "${PKG_FILE}" 43 CHROOT_wrt_RunAsRoot "custom-tools/${this_script}" 44 CHROOT_wrt_RemoveBuildDirs "${PKG}" 45 echo -e "\t@touch $TRACKING_DIR/${PKG}-${PKG_VERSION}" >> $MKFILE.tmp 65 46 wrt_touch 66 47 -
common/libs/func_download_pkgs
r4c36783 r0fa52f2 24 24 [[ ! -d $BUILDDIR/sources ]] && mkdir $BUILDDIR/sources 25 25 cd $BUILDDIR/sources 26 # If using CLFS, /sources is writable by all, but with sticky bit,27 # and user does not hold MD5SUMS nor the other files, so use sudo28 [[ -f MD5SUMS ]] && sudo rm MD5SUMS29 [[ -f MISSING_FILES.DMP ]] && sudo rm MISSING_FILES.DMP30 [[ -f urls.lst ]] && sudo rm urls.lst31 26 32 27 # Generate URLs file … … 137 132 138 133 case ${PROGNAME} in 139 clfs*)140 echo -n "Creating CLFS <${ARCH}> specific URLs file"141 xsltproc --nonet --xinclude \142 --stringparam server "$SERVER" \143 --stringparam family clfs \144 -o $BUILDDIR/sources/urls.lst \145 urls.xsl \146 $BOOK/BOOK/materials/$ARCH-chapter.xml >>$LOGDIR/$LOG 2>&1147 echo " ...OK"148 ;;149 134 lfs) 150 135 echo -n "Creating LFS specific URLs file" -
common/libs/func_validate_configs.sh
r4c36783 r0fa52f2 11 11 input vars: none 12 12 externals: color constants 13 PROGNAME (lfs ,clfs,clfs2,clfs3,blfs)13 PROGNAME (lfs only as of February 28th, 2022) 14 14 modifies: none 15 15 returns: nothing … … 20 20 # Common settings by Config.in sections and books family 21 21 local -r BOOK_common="BOOK CUSTOM_TOOLS" 22 local -r BOOK_clfsX="ARCH TARGET"23 22 local -r GENERAL_common="LUSER LGROUP LHOME BUILDDIR CLEAN GETPKG SRC_ARCHIVE \ 24 23 SERVER RETRYSRCDOWNLOAD RETRYDOWNLOADCNT DOWNLOADTIMEOUT \ … … 31 30 # BOOK Settings by book 32 31 local -r LFS_book="$BOOK_common INITSYS BLFS_TOOL" 33 local -r CLFS_book="$BOOK_common BLFS_TOOL METHOD $BOOK_clfsX TARGET32 BOOT_CONFIG"34 local -r CLFS2_book="$BOOK_common BLFS_TOOL $BOOK_clfsX"35 local -r CLFS3_book="$BOOK_common $BOOK_clfsX PLATFORM MIPS_LEVEL"36 32 37 33 # Build Settings by book 38 34 local -r LFS_build="$BUILD_chroot NCURSES5 DEL_LA_FILES $BUILD_common PKGMNGT FULL_LOCALE WRAP_INSTALL" 39 local -r CLFS_build="$BUILD_chroot $BUILD_common" 40 local -r CLFS2_build="STRIP $BUILD_common" 41 local -r CLFS3_build=" $BUILD_common" 42 43 # System Settings by book (only LFS for now) 35 36 # System Settings by book 44 37 local -r LFS_system="HOSTNAME INTERFACE IP_ADDR GATEWAY PREFIX BROADCAST DOMAIN DNS1 DNS2 FONT KEYMAP LOCAL LOG_LEVEL" 45 38 46 39 # Full list of books settings 47 40 local -r lfs_PARAM_LIST="$LFS_book $GENERAL_common $LFS_build $LFS_system $ADVANCED_chroot N_PARALLEL REALSBU SAVE_CH5 $ADVANCED_common" 48 local -r clfs_PARAM_LIST="$CLFS_book $GENERAL_common $CLFS_build $ADVANCED_chroot $ADVANCED_common"49 local -r clfs2_PARAM_LIST="$CLFS2_book $GENERAL_common $CLFS2_build $ADVANCED_common"50 local -r clfs3_PARAM_LIST="$CLFS3_book $GENERAL_common $CLFS3_build $ADVANCED_common"51 41 # local -r blfs_PARAM_LIST="BRANCH_ID BLFS_ROOT BLFS_XML TRACKING_DIR" 52 42 -
common/libs/func_wrt_Makefile
r4c36783 r0fa52f2 58 58 59 59 60 #==== PACKAGES NAMES AND VERSIONS ====61 62 #----------------------------------#63 get_package_tarball_name() { #64 #----------------------------------#65 local script_name=`echo ${1} | sed -e 's@^[0-9]\{2\}-@@'`66 67 # The use of 'head' is necessary to limit the return value to the FIRST match..68 # hopefully this will not cause problems.69 #70 case $script_name in71 tcl) echo $(grep "^tcl" $JHALFSDIR/pkg_tarball_list | head -n1 )72 ;;73 iputils) echo $(grep "^iputils" $JHALFSDIR/pkg_tarball_list | head -n1 )74 ;;75 powerpc-utils) echo $(grep "^powerpc-utils" $JHALFSDIR/pkg_tarball_list | head -n1 )76 ;;77 uClibc)78 if [[ "${PROGNAME}" = "clfs3" ]]; then79 echo $(grep "^uClibc-" $JHALFSDIR/pkg_tarball_list | head -n1 )80 else81 echo $(grep "^$script_name-[[:digit:]]" $JHALFSDIR/pkg_tarball_list | head -n1 )82 fi83 ;;84 linux-headers)85 if [[ "${PROGNAME}" = "lfs" ]] || [[ "${PROGNAME}" = "clfs" ]]; then86 # Uses kernel headers directly87 echo $(grep "^linux-[[:digit:]]" $JHALFSDIR/pkg_tarball_list | head -n1 )88 else89 # CLFS{2,3} used to use massaged headers package90 # echo $(grep "^linux-headers-[[:digit:]]" $JHALFSDIR/pkg_tarball_list | head -n1 )91 echo $(grep "^linux-[[:digit:]]" $JHALFSDIR/pkg_tarball_list | head -n1 )92 fi93 ;;94 expect) echo $(grep "^expect" $JHALFSDIR/pkg_tarball_list | head -n1 )95 ;;96 e2fsprogs-libs) echo $(grep "^e2fsprogs" $JHALFSDIR/pkg_tarball_list | head -n1 )97 ;;98 libcap) echo $(grep "^libcap" $JHALFSDIR/pkg_tarball_list | head -n1 )99 ;;100 util-linux-libs | util-linux-pass1) echo $(grep "^util-linux" $JHALFSDIR/pkg_tarball_list | head -n1 )101 ;;102 xz-utils) echo $(grep "^xz" $JHALFSDIR/pkg_tarball_list | head -n1 )103 ;;104 sqlite) echo $(grep "^sqlite" $JHALFSDIR/pkg_tarball_list | head -n1 )105 ;;106 udev) echo $(grep "^systemd" $JHALFSDIR/pkg_tarball_list | head -n1 )107 ;;108 xml-parser) echo $(grep "^XML" $JHALFSDIR/pkg_tarball_list | head -n1 )109 ;;110 libdbus) echo $(grep "^dbus" $JHALFSDIR/pkg_tarball_list | head -n1 )111 ;;112 glibc) echo $(grep "^glibc" $JHALFSDIR/pkg_tarball_list | head -n1 )113 ;;114 libelf) echo $(grep "^elfutils" $JHALFSDIR/pkg_tarball_list | head -n1 )115 ;;116 *) echo $(grep "^$script_name[_-][[:digit:]]" $JHALFSDIR/pkg_tarball_list | head -n1 )117 ;;118 esac119 120 }121 122 #----------------------------------#123 get_package_version() { #124 #----------------------------------#125 # Those hacks may change depending on the invention of devs for tarball names.126 # Normally, we expect -digit to signal the beginning of the version field127 # but it may happen that there is no '-' (tcl, expect), that the version128 # field is ddd-d (pkg-config-lite-028-1, since sed is greedy, it finds only129 # the second dash) or that the first character of the version is not a digit130 # (iputils-s20121221)...131 case ${1} in132 tcl*|expect*|tzdata*|xmlts*|unzip*|lynx*)133 echo ${1} | sed -e 's@^[^[:digit:]]*@@' \134 -e 's@\(-src\)*\.tar.*@@'135 ;;136 iputils*) echo ${1} | sed -e 's@^.*-@@' \137 -e 's@\.tar.*@@'138 ;;139 glibc*) echo ${1} | sed -e 's@^[^-]*-@@' \140 -e 's@\.tar.*@@'141 ;;142 LVM*) echo ${1} | sed -e 's@^[^.]*\.@@' \143 -e 's@\.tgz.*@@'144 ;;145 iproute*) echo ${1} | sed -e 's@^[^-]*-@@' \146 -e 's@\.tar.*@@'147 ;;148 pkg*|udev*|Singular*|XML*)149 echo ${1} | sed -e 's@^.*[a-z]-\([[:digit:]]\)@\1@' \150 -e 's@\.tar.*@@' \151 -e 's@\.zip.*@@'152 ;;153 *) echo ${1} | sed -e 's@^.*[-_]\([[:digit:]]\)@\1@' \154 -e 's@\.tar.*@@' \155 -e 's@\.zip.*@@'156 ;;157 esac158 159 }160 #=======================161 162 163 60 #==== TARGET HEADER ==== 164 61 … … 316 213 local file=$1 317 214 318 case ${PROGNAME} in 319 lfs ) MOUNT_ENV="LFS" ;; 320 clfs ) MOUNT_ENV="CLFS" ;; 321 clfs2 ) MOUNT_ENV="CLFS" ;; 322 clfs3 ) MOUNT_ENV="CLFS" ;; 323 *) echo "undefined progname $PROGNAME"; exit 1 ;; 324 esac 325 326 ( 327 cat << EOF 328 @export ${MOUNT_ENV}=\$(MOUNT_PT) && \\ 329 ${PROGNAME}-commands/`dirname $file`/\$@ >>logs/\$@$version 2>&1 && \\ 330 if [ "${PROGNAME}" != lfs ]; then \\ 331 \$(PRT_DU) >>logs/\$@$version; \\ 332 fi 215 ( 216 cat << EOF 217 @export LFS=\$(MOUNT_PT) && \\ 218 ${PROGNAME}-commands/`dirname $file`/\$@ >>logs/\$@$version 2>&1 333 219 EOF 334 220 ) >> $MKFILE.tmp -
common/makefile-functions
r4c36783 r0fa52f2 204 204 @echo 205 205 @echo $(tab_)- Enter to the chroot using the command found 206 @echo $(tab_) in the section -Entering the Chroot Environment-207 @echo $(tab_) except if building CLFS with METHOD=boot.206 @echo $(tab_)" in the section -Entering the Chroot Environment-" 207 @echo $(tab_)" except if building with METHOD=boot." 208 208 @echo 209 209 @echo $(tab_)- Set a password for the root user. 210 210 @echo 211 @echo $(tab_)- Edit or create /etc/fstab, 212 @echo $(tab_) " /etc/hosts," 213 @echo $(tab_) " /etc/sysconfig/clock," 214 @echo $(tab_) " /etc/sysconfig/console," 215 @echo $(tab_) " /etc/sysconfig/network," 216 @echo $(tab_) " /etc/sysconfig/ifconfig.eth0," 217 @echo $(tab_) " /etc/resolv.conf" 218 @echo $(tab_)and any other configuration file required to suit your needs. 219 @echo 220 @echo $(tab_)- Set-up the boot loader, except if building CLFS with METHOD=boot. 211 @echo $(tab_)- Edit or create /etc/fstab and any other configuration file 212 @echo $(tab_)" required to suit your needs." 213 @echo 214 @echo $(tab_)- Set-up the boot loader. 221 215 @echo 222 216 @echo $(tab_)You can set-up the new boot-loader installed on the new system -
common/urls.xsl
r4c36783 r0fa52f2 9 9 <xsl:param name="server">ftp://ftp.osuosl.org</xsl:param> 10 10 11 <!-- The book family (lfs or clfs). Needed to use the proper FTP path. --> 11 <!-- The book family (lfs only now). Needed to use the proper FTP path. --> 12 <!-- TODO not needed, remove --> 12 13 <xsl:param name="family">lfs</xsl:param> 13 14 -
jhalfs
r4c36783 r0fa52f2 198 198 case $BRANCH_ID in 199 199 development ) 200 case $PROGNAME in 201 clfs* ) TREE="" ;; 202 * ) TREE=trunk ;; 203 esac 200 TREE=trunk 204 201 LFSVRS=development 205 202 ;; … … 208 205 exit 2 ;; 209 206 branch-* ) 210 case $PROGNAME in 211 lfs ) 212 LFSVRS=${BRANCH_ID} 213 TREE=${BRANCH_ID#branch-} 214 ;; 215 clfs* ) 216 LFSVRS=${BRANCH_ID} 217 TREE=${BRANCH_ID#branch-} 218 ;; 219 esac 207 LFSVRS=${BRANCH_ID} 208 TREE=${BRANCH_ID#branch-} 220 209 ;; 221 210 * ) 222 case $PROGNAME in 223 lfs ) 224 LFSVRS=${BRANCH_ID} 225 TREE=${BRANCH_ID} 226 ;; 227 clfs* ) 228 LFSVRS=${BRANCH_ID} 229 TREE=clfs-${BRANCH_ID} 230 ;; 231 * ) 232 esac 211 LFSVRS=${BRANCH_ID} 212 TREE=${BRANCH_ID} 233 213 ;; 234 214 esac … … 240 220 #--- Envars not sourced from configuration 241 221 # shellcheck disable=SC2034 242 case $PROGNAME in 243 clfs ) declare -r GIT="git://git.clfs.org/cross-lfs" ;; 244 clfs2 ) declare -r GIT="git://git.clfs.org/clfs-sysroot" ;; 245 clfs3 ) declare -r GIT="git://git.clfs.org/clfs-embedded" ;; 246 *) declare -r GIT="git://git.linuxfromscratch.org" ;; 247 esac 248 222 declare -r GIT="git://git.linuxfromscratch.org" 249 223 declare -r LOG=000-masterscript.log 250 224 … … 385 359 cp "$COMMON_DIR"/{packages.xsl,chroot.xsl,kernfs.xsl} "$JHALFSDIR/" 386 360 387 # Fix the XSL book parser388 case $PROGNAME in389 clfs* ) sed 's,FAKEDIR,'"${BOOK}/BOOK"',' "${PACKAGE_DIR}/${XSL}" > "${JHALFSDIR}/${XSL}" ;;390 * ) ;;391 esac392 361 export XSL=$JHALFSDIR/${XSL} 393 362 … … 460 429 # When regenerating the Makefile, we need to know also the 461 430 # canonical book version 462 case $PROGNAME in 463 clfs* ) 464 VERSION=$(xmllint --noent "$BOOK/prologue/$ARCH/bookinfo.xml" 2>/dev/null | grep subtitle | sed -e 's/^.*ion //' -e 's/<\/.*//') ;; 465 lfs) 466 VERSION=$(grep 'echo.*lfs-release' "$JHALFSDIR/prbook.xml" | sed 's/.*echo[ ]*\([^ ]*\).*/\1/') 467 ;; 468 *) 469 VERSION=$(xmllint --noent "$BOOK/prologue/bookinfo.xml" 2>/dev/null | grep subtitle | sed -e 's/^.*ion //' -e 's/<\/.*//') ;; 470 esac 431 VERSION=$(grep 'echo.*lfs-release' "$JHALFSDIR/prbook.xml" | sed 's/.*echo[ ]*\([^ ]*\).*/\1/') 471 432 fi 472 433 -
optimize/opt_config
r4c36783 r0fa52f2 10 10 #BLACK_LIST="attr autoconf coreutils dejagnu gettext gperf groff man-db vim" 11 11 # Rationale for attr, coreutils, gperf: the tests do not pass with -jX 12 # CLFS packages (not tested on December 21st, 2019)13 #BLACK_LIST="$BLACK_LIST libee"14 12 15 13 #--- Default optimization mode
Note:
See TracChangeset
for help on using the changeset viewer.