- Timestamp:
- 10/02/2006 07:32:06 PM (18 years ago)
- Branches:
- 2.3, 2.3.x, 2.4, ablfs, ablfs-more, legacy, new_features, trunk
- Children:
- f5fc83d
- Parents:
- 6f75d64
- Location:
- common
- Files:
-
- 3 added
- 7 edited
- 6 moved
Legend:
- Unmodified
- Added
- Removed
-
common/common-functions
r6f75d64 r045b2dc 30 30 31 31 32 33 #----------------------------------# 34 wrt_target() { # Create target and initialize log file 35 #----------------------------------# 36 local i=$1 37 local PREV=$2 38 case $i in 39 iteration* ) local LOGFILE=$this_script.log ;; 40 * ) local LOGFILE=$this_script ;; 41 esac 42 ( 43 cat << EOF 44 45 $i: $PREV 46 @\$(call echo_message, Building) 47 @./progress_bar.sh \$@ \$\$PPID & 48 @echo -e "\n\`date\`\n\nKB: \`du -skx --exclude=${SCRIPT_ROOT} \$(MOUNT_PT)\`\n" >logs/$LOGFILE 49 EOF 50 ) >> $MKFILE.tmp 51 } 52 53 54 #----------------------------------# 55 wrt_target_boot() { # Create target and initialize log file 56 #----------------------------------# 57 local i=$1 58 local PREV=$2 59 case $i in 60 iteration* ) local LOGFILE=$this_script.log ;; 61 * ) local LOGFILE=$this_script ;; 62 esac 63 ( 64 cat << EOF 65 66 $i: $PREV 67 @\$(call echo_message, Building) 68 @./progress_bar.sh \$@ \$\$PPID & 69 @echo -e "\n\`date\`\n\nKB: \`du -skx --exclude=${SCRIPT_ROOT}\`\n" >logs/$LOGFILE 70 EOF 71 ) >> $MKFILE.tmp 72 } 73 74 #----------------------------# 75 get_package_tarball_name() { # 76 #----------------------------# 32 #------------------------------------------------------# 33 # NEW Makefile scripting functions # 34 #------------------------------------------------------# 35 36 37 unset get_package_tarball_name 38 #----------------------------------# 39 get_package_tarball_name() { # 40 #----------------------------------# 77 41 local script_name=$1 78 42 … … 89 53 90 54 91 #----------------------------------# 92 wrt_test_log() { # Initialize testsuite log file 93 #----------------------------------# 94 local TESTLOGFILE=$1 95 ( 96 cat << EOF 97 @echo "export TEST_LOG=$TESTLOGDIR/$TESTLOGFILE" >> envars && \\ 98 su - \$(LUSER) -c "echo -e '\n\`date\`\n' >$TESTLOGDIR/$TESTLOGFILE" 99 EOF 100 ) >> $MKFILE.tmp 101 } 102 103 #----------------------------------# 104 wrt_test_log2() { # 105 #----------------------------------# 106 local TESTLOGFILE=$1 107 ( 108 cat << EOF 109 @echo "export TEST_LOG=/$SCRIPT_ROOT/test-logs/$TESTLOGFILE" >> envars && \\ 110 echo -e "\n\`date\`\n" >test-logs/$TESTLOGFILE 111 EOF 112 ) >> $MKFILE.tmp 113 } 114 115 #----------------------------------# 116 wrt_target_vars() { # Target vars for hlfs (cross-build method) 117 #----------------------------------# 118 ( 119 cat << EOF 120 @echo "export target=$(uname -m)-${TARGET}" >> envars && \\ 121 echo "export ldso=/lib/${LOADER}" >> envars 122 EOF 123 ) >> $MKFILE.tmp 124 125 } 126 127 128 #----------------------------------# 129 wrt_copy_fstab() { # 130 #----------------------------------# 131 local i=$1 132 ( 133 cat << EOF 134 @cp -v $FSTAB \$(MOUNT_PT)/etc/fstab >>logs/$i 2>&1 135 EOF 136 ) >> $MKFILE.tmp 137 } 138 139 140 #----------------------------------# 141 wrt_copy_fstab2() { # 142 #----------------------------------# 143 local i=$1 144 ( 145 cat << EOF 146 @cp -v /sources/fstab /etc/fstab >>logs/$i 2>&1 147 EOF 148 ) >> $MKFILE.tmp 149 } 150 151 152 #----------------------------------# 153 wrt_report() { # 154 #----------------------------------# 155 ( 156 cat << EOF 157 158 create-sbu_du-report: $PREV 159 @\$(call echo_message, Building) 160 @./create-sbu_du-report.sh logs $VERSION 161 @\$(call echo_report,$VERSION-SBU_DU-$(date --iso-8601).report) 162 @touch \$@ 163 EOF 164 ) >> $MKFILE.tmp 165 166 chapter789="$chapter789 create-sbu_du-report" 167 } 168 169 unset wrt_unpack 170 #----------------------------------# 171 wrt_unpack() { # Unpack and set 'ROOT' var 172 #----------------------------------# 173 local FILE=$1 174 local optSAVE_PREVIOUS=$2 175 176 if [[ "${optSAVE_PREVIOUS}" != "1" ]]; then 177 ( 178 cat << EOF 179 @\$(call remove_existing_dirs,$FILE) 180 EOF 181 ) >> $MKFILE.tmp 182 fi 183 184 ( 185 cat << EOF 186 @\$(call unpack,$FILE) 187 @\$(call get_pkg_root) 188 EOF 189 ) >> $MKFILE.tmp 190 191 } 192 193 unset wrt_unpack2 194 #----------------------------------# 195 wrt_unpack2() { # 196 #----------------------------------# 197 local FILE=$1 198 local optSAVE_PREVIOUS=$2 199 200 if [ "${optSAVE_PREVIOUS}" != "1" ]; then 201 ( 202 cat << EOF 203 @\$(call remove_existing_dirs,$FILE) 204 EOF 205 ) >> $MKFILE.tmp 206 fi 207 ( 208 cat << EOF 209 @\$(call unpack2,$FILE) 210 @\$(call get_pkg_root,nouser) 211 EOF 212 ) >> $MKFILE.tmp 213 } 214 215 #----------------------------------# 216 wrt_unpack3() { # 217 #----------------------------------# 218 local FILE=$1 219 local optSAVE_PREVIOUS=$2 220 221 if [ "${optSAVE_PREVIOUS}" != "1" ]; then 222 ( 223 cat << EOF 224 @\$(call remove_existing_dirs2,$FILE) 225 EOF 226 ) >> $MKFILE.tmp 227 fi 228 ( 229 cat << EOF 230 @\$(call unpack3,$FILE) 231 @\$(call get_pkg_root2) 232 EOF 233 ) >> $MKFILE.tmp 234 } 235 236 237 unset wrt_remove_build_dirs 238 #----------------------------------# 239 wrt_remove_build_dirs() { # 240 #----------------------------------# 241 local name=$1 242 ( 243 cat << EOF 244 @\$(call remove_build_dirs,$name) 245 EOF 246 ) >> $MKFILE.tmp 247 } 248 249 #----------------------------------# 250 wrt_remove_build_dirs2() { # 251 #----------------------------------# 252 local name=$1 253 ( 254 cat << EOF 255 @\$(call remove_build_dirs2,$name) 256 EOF 257 ) >> $MKFILE.tmp 258 } 259 260 261 262 unset wrt_touch 263 #----------------------------------# 264 wrt_touch() { # 265 #----------------------------------# 266 ( 267 cat << EOF 268 @\$(call housekeeping) 269 EOF 270 ) >> $MKFILE.tmp 271 } 272 273 unset wrt_RunAsUser 274 #----------------------------------# 275 wrt_RunAsUser() { # Execute script inside time { }, footer to log file 276 #----------------------------------# 277 local this_script=$1 278 local file=$2 279 280 ( 281 cat << EOF 282 @( time { \$(SU_LUSER) "source \$(LUSER_HOME)/.bashrc && \$(CMDSDIR)/`dirname $file`/\$@" >> logs/\$@ 2>&1; } ) 2>> logs/\$@ && \\ 283 \$(PRT_DU) >> logs/\$@ 284 EOF 285 ) >> $MKFILE.tmp 286 } 287 288 55 unset wrt_RunaAsRoot 289 56 #----------------------------------# 290 57 wrt_RunAsRoot() { # Some scripts must be run as root.. … … 300 67 clfs2 ) MOUNT_ENV="CLFS" ;; 301 68 hlfs ) MOUNT_ENV="HLFS" ;; 302 *) echo "undefined progname $PROGNAME"; exit 1 69 *) echo "undefined progname $PROGNAME"; exit 1 ;; 303 70 esac 304 71 … … 311 78 } 312 79 313 #----------------------------------# 314 wrt_run_as_root2() { # 315 #----------------------------------# 316 local this_script=$1 317 local file=$2 318 ( 319 cat << EOF 320 @( time { source envars && ${PROGNAME}-commands/`dirname $file`/\$@ >>logs/\$@ 2>&1 ; } ) 2>>logs/\$@ && \\ 321 echo -e "\nKB: \`du -skx --exclude=${SCRIPT_ROOT} \`\n" >>logs/\$@ 322 EOF 323 ) >> $MKFILE.tmp 324 } 325 326 327 unset wrt_run_as_chroot1 328 #----------------------------------# 329 wrt_run_as_chroot1() { # 330 #----------------------------------# 331 local this_script=$1 332 local file=$2 333 ( 334 cat << EOF 335 @( time { \$(CHROOT1) 'cd \$(SCRIPT_ROOT) && source envars && \$(crCMDSDIR)/$file >>logs/${this_script} 2>&1' ; } ) 2>>logs/${this_script} && \\ 336 \$(PRT_DU_CR) >> logs/${this_script} 337 EOF 338 ) >> $MKFILE.tmp 339 } 340 341 unset wrt_run_as_chroot2 342 #----------------------------------# 343 wrt_run_as_chroot2() { # 344 #----------------------------------# 345 local this_script=$1 346 local file=$2 347 ( 348 cat << EOF 349 @( time { \$(CHROOT2) 'cd \$(SCRIPT_ROOT) && source envars && \$(crCMDSDIR)/`dirname $file`/\$@ >>logs/\$@ 2>&1' ; } ) 2>>logs/\$@ && \\ 350 \$(PRT_DU_CR) >> logs/\$@ 351 EOF 352 ) >> $MKFILE.tmp 353 } 354 355 unset wrt_target 356 #----------------------------------# 357 wrt_target() { # Create target and initialize log file 80 81 #------------------------------------------------------# 82 #------------------------------------------------------# 83 84 #----------------------------------# 85 ROOT_RunAsRoot() { # 86 #----------------------------------# 87 local file=$1 88 ( 89 cat << EOF 90 @( time { source envars && \$(CMDSDIR)/$file >>logs/$this_script 2>&1 ; } ) 2>>logs/$this_script && \\ 91 \$(PRT_DU_CR) >>logs/$this_script 92 EOF 93 ) >> $MKFILE.tmp 94 } 95 96 #----------------------------------# 97 ROOT_Unpack() { # An alias, for clairity 98 #----------------------------------# 99 local FILE=$1 100 local optSAVE_PREVIOUS=$2 101 102 if [[ "${optSAVE_PREVIOUS}" != "1" ]]; then 103 ( 104 cat << EOF 105 @\$(call remove_existing_dirs,$FILE) 106 EOF 107 ) >> $MKFILE.tmp 108 fi 109 110 ( 111 cat << EOF 112 @\$(call unpack,$FILE) 113 @\$(call get_pkg_root_LUSER) 114 EOF 115 ) >> $MKFILE.tmp 116 } 117 118 #------------------------------------------------------# 119 #------------------------------------------------------# 120 121 #----------------------------------# 122 LUSER_wrt_target() { # Create target and initialize log file 123 #----------------------------------# 124 local i=$1 125 local PREV=$2 126 ( 127 cat << EOF 128 129 $i: $PREV 130 @\$(call echo_message, Building) 131 @./progress_bar.sh \$@ \$\$PPID & 132 @echo -e "\n\`date\`\n\nKB: \`du -skx --exclude=\$(SCRIPT_ROOT) \$(MOUNT_PT)\`\n" >logs/\$@ 133 EOF 134 ) >> $MKFILE.tmp 135 } 136 137 138 #----------------------------------# 139 LUSER_wrt_RunAsUser() { # Execute script inside time { }, footer to log file 140 #----------------------------------# 141 local file=$1 142 143 ( 144 cat << EOF 145 @( time { source ~/.bashrc && \$(CMDSDIR)/`dirname $file`/\$@ >> logs/\$@ 2>&1; } ) 2>> logs/\$@ && \\ 146 \$(PRT_DU) >> logs/\$@ 147 EOF 148 ) >> $MKFILE.tmp 149 } 150 151 152 #----------------------------------# 153 LUSER_wrt_unpack() { # Unpack and set 'ROOT' var 154 #----------------------------------# 155 local FILE=$1 156 local optSAVE_PREVIOUS=$2 157 158 if [[ "${optSAVE_PREVIOUS}" != "1" ]]; then 159 ( 160 cat << EOF 161 @\$(call remove_existing_dirs,$FILE) 162 EOF 163 ) >> $MKFILE.tmp 164 fi 165 166 ( 167 cat << EOF 168 @\$(call unpack,$FILE) 169 @\$(call get_pkg_root_LUSER) 170 EOF 171 ) >> $MKFILE.tmp 172 173 } 174 175 176 #----------------------------------# 177 LUSER_wrt_CopyFstab() { # 178 #----------------------------------# 179 ( 180 cat << EOF 181 @( time { cp -v \$(MOUNT_PT)/sources/fstab \$(MOUNT_PT)/etc/fstab >>logs/\$@ 2>&1 ; } ) 2>>logs/\$@ 182 EOF 183 ) >> $MKFILE.tmp 184 } 185 186 187 #----------------------------------# 188 LUSER_wrt_test_log() { # Initialize testsuite log file 189 #----------------------------------# 190 local TESTLOGFILE=$1 191 ( 192 cat << EOF 193 @echo "export TEST_LOG=$TESTLOGDIR/$TESTLOGFILE" >> envars && \\ 194 echo -e '\n\`date\`\n' >$TESTLOGDIR/$TESTLOGFILE 195 EOF 196 ) >> $MKFILE.tmp 197 } 198 199 200 #----------------------------------# 201 LUSER_RemoveBuildDirs() { # 202 #----------------------------------# 203 local name=$1 204 ( 205 cat << EOF 206 @\$(call remove_build_dirs,$name) 207 EOF 208 ) >> $MKFILE.tmp 209 } 210 211 #-----------------------------------------------------------------# 212 #-----------------------------------------------------------------# 213 214 #----------------------------------# 215 CHROOT_wrt_target() { # Create target and initialize log file 358 216 #----------------------------------# 359 217 local i=$1 360 218 local PREV=$2 361 219 case $i in 362 iteration* ) local LOGFILE=" \$@.log" ;;363 * ) local LOGFILE=" \$@";;220 iteration* ) local LOGFILE="${this_script}.log" ;; 221 * ) local LOGFILE="${this_script}" ;; 364 222 esac 365 223 ( … … 369 227 @\$(call echo_message, Building) 370 228 @./progress_bar.sh \$@ \$\$PPID & 371 @echo -e "\n\`date\`\n\nKB: \`du -skx --exclude=${SCRIPT_ROOT} \$(MOUNT_PT)\`\n" >logs/$LOGFILE 372 EOF 373 ) >> $MKFILE.tmp 374 } 375 376 #----------------------------------# 377 wrt_target_boot() { # Create target and initialize log file 378 #----------------------------------# 379 local i=$1 380 local PREV=$2 381 case $i in 382 iteration* ) local LOGFILE="\$@.log" ;; 383 * ) local LOGFILE="\$@" ;; 384 esac 385 ( 386 cat << EOF 387 388 $i: $PREV 389 @\$(call echo_message, Building) 390 @./progress_bar.sh \$@ \$\$PPID & 391 @echo -e "\n\`date\`\n\nKB: \`du -skx --exclude=${SCRIPT_ROOT}\`\n" >logs/$LOGFILE 392 EOF 393 ) >> $MKFILE.tmp 394 } 229 @echo -e "\n\`date\`\n\nKB: \`du -skx --exclude=\$(SCRIPT_ROOT) / \`\n" >logs/$LOGFILE 230 EOF 231 ) >> $MKFILE.tmp 232 } 233 234 235 #----------------------------------# 236 CHROOT_Unpack() { # 237 #----------------------------------# 238 local FILE=$1 239 local optSAVE_PREVIOUS=$2 240 241 if [ "${optSAVE_PREVIOUS}" != "1" ]; then 242 ( 243 cat << EOF 244 @\$(call remove_existing_dirs2,$FILE) 245 EOF 246 ) >> $MKFILE.tmp 247 fi 248 ( 249 cat << EOF 250 @\$(call unpack3,$FILE) 251 @\$(call get_pkg_root2) 252 EOF 253 ) >> $MKFILE.tmp 254 } 255 256 257 #----------------------------------# 258 CHROOT_wrt_test_log() { # 259 #----------------------------------# 260 local TESTLOGFILE=$1 261 ( 262 cat << EOF 263 @echo "export TEST_LOG=/\$(SCRIPT_ROOT)/test-logs/$TESTLOGFILE" >> envars && \\ 264 echo -e "\n\`date\`\n" >test-logs/$TESTLOGFILE 265 EOF 266 ) >> $MKFILE.tmp 267 } 268 269 270 #----------------------------------# 271 CHROOT_wrt_RunAsRoot() { # 272 #----------------------------------# 273 local file=$1 274 ( 275 cat << EOF 276 @( time { source envars && \$(crCMDSDIR)/$file >>logs/$this_script 2>&1 ; } ) 2>>logs/$this_script && \\ 277 \$(PRT_DU_CR) >>logs/$this_script 278 EOF 279 ) >> $MKFILE.tmp 280 281 } 282 283 284 #----------------------------------# 285 CHROOT_wrt_CopyFstab() { # 286 #----------------------------------# 287 ( 288 cat << EOF 289 @( time { cp -v /sources/fstab /etc/fstab >>logs/${this_script} 2>&1 ; } ) 2>>logs/${this_script} 290 EOF 291 ) >> $MKFILE.tmp 292 } 293 294 295 #----------------------------------# 296 CHROOT_wrt_RemoveBuildDirs() { # 297 #----------------------------------# 298 local name=$1 299 ( 300 cat << EOF 301 @\$(call remove_build_dirs2,$name) 302 EOF 303 ) >> $MKFILE.tmp 304 } 305 306 307 unset wrt_touch 308 #----------------------------------# 309 wrt_touch() { # 310 #----------------------------------# 311 ( 312 cat << EOF 313 @\$(call housekeeping) 314 EOF 315 ) >> $MKFILE.tmp 316 } 317 318 319 #----------------------------------# 320 wrt_blfs_tool_targets() { # 321 #----------------------------------# 322 323 echo "${tab_}${GREEN}Processing... ${L_arrow}BLFS_TOOL ${R_arrow}" 324 325 for file in blfs-tool-deps/* ; do 326 # Keep the script file name 327 this_script=`basename $file` 328 329 # Grab the name of the target 330 name=`echo ${this_script} | sed -e 's@[0-9]\{3\}-@@'` 331 332 # Find the package. 333 case $name in 334 tidy ) pkg_tarball=${TIDY_PKG} ;; 335 unzip ) pkg_tarball=${UNZIP_PKG} ;; 336 * ) pkg_tarball=$(get_package_tarball_name $name) ;; 337 esac 338 339 # Append each name of the script files to a list (this will become 340 # the names of the targets in the Makefile) 341 blfs_tool="$blfs_tool ${this_script}" 342 343 #--------------------------------------------------------------------# 344 # >>>>>>>> START BUILDING A Makefile ENTRY <<<<<<<< # 345 #--------------------------------------------------------------------# 346 # 347 # Drop in the name of the target on a new line, and the previous target 348 # as a dependency. Also call the echo_message function. 349 CHROOT_wrt_target "${this_script}" "$PREV" 350 351 # Insert instructions for unpacking the package and changing directories 352 # DocBook-XML is a zip, the build script will handle that. 353 [[ ! "$name" = "docbook-xml" ]] && CHROOT_Unpack "$pkg_tarball" 354 355 # Run the script. 356 CHROOT_wrt_RunAsRoot "$file" 357 358 # Remove the build directory(ies) except if the package build fails. 359 [[ ! "$name" = "docbook-xml" ]] && CHROOT_wrt_RemoveBuildDirs "$name" 360 361 # Touch the tracking file. 362 case $name in 363 tidy ) pkg_ver=tidy-051026 ;; 364 unzip ) pkg_ver=unzip-5.52 ;; 365 * ) pkg_ver=$(echo $pkg_tarball | sed -e 's/.tar.*//;s/.tgz//;s/.zip//') ;; 366 esac 367 echo -e "\t@touch $TRACKING_DIR/$pkg_ver" >> $MKFILE.tmp 368 369 # Include a touch of the target name so make can check 370 # if it's already been made. 371 wrt_touch 372 # 373 #--------------------------------------------------------------------# 374 # >>>>>>>> END OF Makefile ENTRY <<<<<<<< # 375 #--------------------------------------------------------------------# 376 377 # Keep the script file name for Makefile dependencies. 378 PREV=${this_script} 379 done 380 } 381 382 #------------------------------------------------------# 383 # END Makefile scripting functions # 384 #------------------------------------------------------# 395 385 396 386 … … 402 392 if [ "$RUNMAKE" = "y" ] ; then 403 393 # Test to make sure we're running the build as root 404 if [ "$UID" != "0" ] ; then405 echo "You must be logged in as root to successfullybuild the system."394 if [ "$UID" = "0" ] ; then 395 echo "You must not be logged in as root to build the system." 406 396 exit 1 407 397 fi … … 428 418 # Test to make sure that the build directory was populated by jhalfs 429 419 if [ ! -d $JHALFSDIR ] || [ ! -d $BUILDDIR/sources ] ; then 430 echo "Looks like $BUILDDIR was not populated by a previous jhalfs run."420 echo "Looks like $BUILDDIR was not populated by a previous jhalfs-X run." 431 421 exit 1 432 422 else … … 587 577 # Done. Moving on... 588 578 get_sources 579 589 580 } 590 581 … … 616 607 $LIBXML_PKG 617 608 $LIBXSLT_PKG 609 $TIDY_PKG 610 $UNZIP_PKG 611 $DBXML_PKG 618 612 $DBXSL_PKG 619 613 $LINKS_PKG … … 800 794 add_blfs_deps_urls 801 795 fi 796 802 797 } 803 798 … … 814 809 if [[ "${DEP_LIBXSLT}" = "y" ]] ; then 815 810 echo "${LIBXSLT_URL} ${BLFS_SERVER}libxslt/${LIBXSLT_PKG} ${LIBXSLT_MD5}" >> urls.lst 811 fi 812 813 if [[ "${DEP_TIDY}" = "y" ]] ; then 814 echo "${TIDY_URL} ${BLFS_SERVER}tidy/${TIDY_PKG} ${TIDY_MD5}" >> urls.lst 815 echo "${TIDY_PATCH_URL} ${BLFS_SERVER}tidy/${TIDY_PATCH} ${TIDY_PATCH_MD5}" >> urls.lst 816 fi 817 818 if [[ "${DEP_UNZIP}" = "y" ]] ; then 819 echo "${UNZIP_URL} ${BLFS_SERVER}unzip/${UNZIP_PKG} ${UNZIP_MD5}" >> urls.lst 820 fi 821 822 if [[ "${DEP_DBXML}" = "y" ]] ; then 823 echo "${DBXML_URL} ${BLFS_SERVER}docbook-xml/${DBXML_PKG} ${DBXML_MD5}" >> urls.lst 816 824 fi 817 825 … … 859 867 fi 860 868 869 if [[ "${DEP_TIDY}" = "y" ]] ; then 870 mv blfs-tool-deps/903-tidy ${PROGNAME}-commands/blfs-tool-deps 871 fi 872 873 if [[ "${DEP_UNZIP}" = "y" ]] ; then 874 mv blfs-tool-deps/904-unzip ${PROGNAME}-commands/blfs-tool-deps 875 fi 876 877 if [[ "${DEP_DBXML}" = "y" ]] ; then 878 mv blfs-tool-deps/905-docbook-xml ${PROGNAME}-commands/blfs-tool-deps 879 fi 880 861 881 if [[ "${DEP_DBXSL}" = "y" ]] ; then 862 mv blfs-tool-deps/90 3-docbook-xsl ${PROGNAME}-commands/blfs-tool-deps882 mv blfs-tool-deps/906-docbook-xsl ${PROGNAME}-commands/blfs-tool-deps 863 883 fi 864 884 865 885 if [[ "${DEP_LINKS}" = "y" ]] ; then 866 mv blfs-tool-deps/90 5-links ${PROGNAME}-commands/blfs-tool-deps886 mv blfs-tool-deps/908-links ${PROGNAME}-commands/blfs-tool-deps 867 887 fi 868 888 869 889 if [[ "${DEP_SUDO}" = "y" ]] ; then 870 mv blfs-tool-deps/90 6-sudo ${PROGNAME}-commands/blfs-tool-deps890 mv blfs-tool-deps/909-sudo ${PROGNAME}-commands/blfs-tool-deps 871 891 fi 872 892 873 893 if [[ "${DEP_WGET}" = "y" ]] ; then 874 mv blfs-tool-deps/9 07-wget ${PROGNAME}-commands/blfs-tool-deps894 mv blfs-tool-deps/910-wget ${PROGNAME}-commands/blfs-tool-deps 875 895 fi 876 896 877 897 if [[ "${DEP_SVN}" = "y" ]] ; then 878 mv blfs-tool-deps/9 08-subversion ${PROGNAME}-commands/blfs-tool-deps898 mv blfs-tool-deps/911-subversion ${PROGNAME}-commands/blfs-tool-deps 879 899 fi 880 900 881 901 if [[ "${DEP_GPM}" = "y" ]] ; then 882 mv blfs-tool-deps/90 4-gpm ${PROGNAME}-commands/blfs-tool-deps902 mv blfs-tool-deps/907-gpm ${PROGNAME}-commands/blfs-tool-deps 883 903 fi 884 904 -
common/create-sbu_du-report.sh
r6f75d64 r045b2dc 109 109 110 110 # Dump disk usage values 111 echo -e "\nDisk usage before unpacking the package:\t\t \t$DU1 KB or $DU1MB MB" >> "$REPORT"111 echo -e "\nDisk usage before unpacking the package:\t\t$DU1 KB or $DU1MB MB" >> "$REPORT" 112 112 echo -e "Disk usage before deleting the source and build dirs:\t$DU2 KB or $DU2MB MB" >> "$REPORT" 113 113 echo -e "Required space to build the package:\t\t\t$REQUIRED1 KB or $REQUIRED2 MB\n" >> "$REPORT" -
common/func_check_version.sh
r6f75d64 r045b2dc 3 3 check_version() { 4 4 : <<inline_doc 5 Tests for a minimum version level. Compares to version numbers and forces an 5 Tests for a minimum version level. Compares to version numbers and forces an 6 6 exit if minimum level not met. 7 7 NOTE: This test will fail on versions containing alpha chars. ie. jpeg 6b 8 8 9 9 usage: check_version "2.6.2" "`uname -r`" "KERNEL" 10 10 check_version "3.0" "$BASH_VERSION" "BASH" … … 23 23 declare -i major minor revision change 24 24 declare -i ref_major ref_minor ref_revision ref_change 25 declare -r spaceSTR=" " 25 26 26 27 ref_version=$1 … … 31 32 local IFS 32 33 33 # if echo $ref_version | grep [[:alpha:]] 2>&1 >/dev/null ||34 # echo $tst_version | grep [[:alpha:]] 2>&1 >/dev/null ;then35 # echo "Cannot test for text, 0.0.0a, version types, assuming 'success' "36 # return37 # fi38 39 34 write_error_and_die() { 40 35 echo -e "\n\t\t$TXT version -->${tst_version}<-- is too old. … … 43 38 } 44 39 45 echo -ne "$TXT:\t${L_arrow}${BOLD}${tst_version}${OFF}${R_arrow}" 46 IFS=".-(" # Split up w.x.y.z as well as w.x.y-rc (catch release candidates) 40 echo -ne "${TXT}${dotSTR:${#TXT}} ${L_arrow}${BOLD}${tst_version}${OFF}${R_arrow}" 41 42 # echo -ne "$TXT:\t${L_arrow}${BOLD}${tst_version}${OFF}${R_arrow}" 43 IFS=".-(p" # Split up w.x.y.z as well as w.x.y-rc (catch release candidates) 47 44 set -- $ref_version # set postional parameters to minimum ver values 48 45 ref_major=$1; ref_minor=$2; ref_revision=$3 … … 52 49 # 53 50 # Compare against minimum acceptable version.. 54 (( major > ref_major )) && echo " ..OK" && return51 (( major > ref_major )) && echo " ${spaceSTR:${#tst_version}}${GREEN}OK${OFF}" && return 55 52 (( major < ref_major )) && write_error_and_die 56 53 # major=ref_major 57 54 (( minor < ref_minor )) && write_error_and_die 58 (( minor > ref_minor )) && echo " ..OK" && return55 (( minor > ref_minor )) && echo " ${spaceSTR:${#tst_version}}${GREEN}OK${OFF}" && return 59 56 # minor=ref_minor 60 (( revision >= ref_revision )) && echo " ..OK" && return57 (( revision >= ref_revision )) && echo " ${spaceSTR:${#tst_version}}${GREEN}OK${OFF}" && return 61 58 62 59 # oops.. write error msg and die 63 60 write_error_and_die 64 61 } 62 # local -r PARAM_VALS='${config_param}${dotSTR:${#config_param}} ${L_arrow}${BOLD}${!config_param}${OFF}${R_arrow}' 65 63 64 #----------------------------# 65 check_prerequisites() { # 66 #----------------------------# 67 68 # LFS/HLFS/CLFS prerequisites 69 if [ ! "${PROGNAME}" = "hlfs" ]; then 70 check_version "2.6.2" "`uname -r`" "KERNEL" 71 check_version "2.0.5" "$BASH_VERSION" "BASH" 72 check_version "3.0.0" "`gcc -dumpversion`" "GCC" 73 libcVer="`/lib/libc.so.6 | head -n1`" 74 libcVer="${libcVer##*version }" 75 check_version "2.2.5" ${libcVer%%,*} "GLIBC" 76 check_version "2.12" "$(ld --version | head -n1 | cut -d" " -f4)" "BINUTILS" 77 check_version "1.14" "$(tar --version | head -n1 | cut -d" " -f4)" "TAR" 78 bzip2Ver="$(bzip2 --version 2>&1 < /dev/null | head -n1 | cut -d" " -f8)" 79 check_version "1.0.2" "${bzip2Ver%%,*}" "BZIP2" 80 check_version "5.0" "$(chown --version | head -n1 | cut -d")" -f2)" "COREUTILS" 81 check_version "2.8" "$(diff --version | head -n1 | cut -d" " -f4)" "DIFF" 82 check_version "4.1.20" "$(find --version | head -n1 | cut -d" " -f4)" "FIND" 83 check_version "3.0" "$(gawk --version | head -n1 | cut -d" " -f3)" "GAWK" 84 check_version "2.5" "$(grep --version | head -n1 | cut -d" " -f4)" "GREP" 85 check_version "1.2.4" "$(gzip --version 2>&1 | head -n1 | cut -d" " -f2)" "GZIP" 86 check_version "3.79.1" "$(make --version | head -n1 | cut -d " " -f3)" "MAKE" 87 check_version "2.5.4" "$(patch --version | head -n1 | cut -d" " -f2)" "PATCH" 88 check_version "3.0.2" "$(sed --version | head -n1 | cut -d" " -f4)" "SED" 89 else 90 # HLFS prerequisites 91 check_version "2.6.2" "$(uname -r)" "KERNEL" 92 check_version "3.0" "$BASH_VERSION" "BASH" 93 check_version "3.0" "$(gcc -dumpversion)" "GCC" 94 check_version "1.14" "$(tar --version | head -n1 | cut -d" " -f4)" "TAR" 95 fi 96 97 # Check for minimum sudo version 98 SUDO_LOC="$(whereis -b sudo | cut -d" " -f2)" 99 if [ -x $SUDO_LOC ]; then 100 sudoVer="$(sudo -V | head -n1 | cut -d" " -f3)" 101 check_version "1.6.8" "${sudoVer}" "SUDO" 102 else 103 echo "${nl_}\"${RED}sudo${OFF}\" ${BOLD}must be installed on your system for jhalfs to run" 104 exit 1 105 fi 106 107 # Check for minimum libxml2 and libxslt versions 108 xsltprocVer=$(xsltproc -V | head -n1 ) 109 libxmlVer=$(echo $xsltprocVer | cut -d " " -f3) 110 libxsltVer=$(echo $xsltprocVer | cut -d " " -f5) 111 112 # Version numbers are packed strings not xx.yy.zz format. 113 check_version "2.06.20" "${libxmlVer:0:1}.${libxmlVer:1:2}.${libxmlVer:3:2}" "LIBXML2" 114 check_version "1.01.14" "${libxsltVer:0:1}.${libxsltVer:1:2}.${libxsltVer:3:2}" "LIBXSLT" 115 116 # The next versions checks are required only when BLFS_TOOL is set and 117 # this dependencies has not be selected for installation 118 if [[ "$BLFS_TOOL" = "y" ]] ; then 119 120 if [[ -z "$DEP_TIDY" ]] ; then 121 tidyVer=$(tidy -V | cut -d " " -f9) 122 check_version "2004" "${tidyVer}" "TIDY" 123 fi 124 125 # Check if the proper DocBook-XML-DTD and DocBook-XSL are correctly installed 126 XML_FILE="<?xml version='1.0' encoding='ISO-8859-1'?> 127 <?xml-stylesheet type='text/xsl' href='http://docbook.sourceforge.net/release/xsl/1.69.1/xhtml/docbook.xsl'?> 128 <!DOCTYPE article PUBLIC '-//OASIS//DTD DocBook XML V4.4//EN' 129 'http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd'> 130 <article> 131 <title>Test file</title> 132 <sect1> 133 <title>Some title</title> 134 <para>Some text</para> 135 </sect1> 136 </article>" 137 138 if [[ -z "$DEP_DBXML" ]] ; then 139 if `echo $XML_FILE | xmllint -noout -postvalid - 2>/dev/null` ; then 140 check_version "4.4" "4.4" "DocBook XML DTD" 141 else 142 echo "Warning: not found a working DocBook XML DTD 4.4 installation" 143 exit 2 144 fi 145 fi 146 147 if [[ -z "$DEP_DBXSL" ]] ; then 148 if `echo $XML_FILE | xsltproc --noout - 2>/dev/null` ; then 149 check_version "1.69.1" "1.69.1" "DocBook XSL" 150 else 151 echo "Warning: not found a working DocBook XSL 1.69.1 installation" 152 exit 2 153 fi 154 fi 155 156 fi # end BLFS_TOOL=Y 157 158 } -
common/func_compare.sh
r6f75d64 r045b2dc 12 12 fi 13 13 this_script=$ITERATION 14 wrt_target "$ITERATION" "$PREV"14 CHROOT_wrt_target "$ITERATION" "$PREV" 15 15 wrt_compare_work "$ITERATION" "$PREV_IT" 16 16 wrt_logs "$N" … … 27 27 28 28 if [[ "$PROGNAME" = "clfs" ]] && [[ "$METHOD" = "chroot" ]] ; then 29 final_system_Makefiles $RUN29 chroot_final_system_Makefiles $RUN 30 30 elif [[ "$PROGNAME" = "clfs" ]] && [[ "$METHOD" = "boot" ]] ; then 31 b m_final_system_Makefiles $RUN31 boot_final_system_Makefiles $RUN 32 32 else 33 33 chapter6_Makefiles $RUN 34 fi 35 36 if [[ "$PROGNAME" = "clfs" ]] ; then 37 basicsystem="$basicsystem $PREV_IT $system_build" 38 else 39 chapter6="$chapter6 $PREV_IT $system_build" 40 fi 41 42 if [[ "$RUN" = "$ITERATIONS" ]] ; then 43 if [[ "$PROGNAME" = "clfs" ]] ; then 44 basicsystem="$basicsystem iteration-$RUN" 45 else 46 chapter6="$chapter6 iteration-$RUN" 47 fi 34 48 fi 35 49 … … 45 59 /sources /root /srv /sys /tmp /tools /usr/local /usr/src /var/log/paco" 46 60 47 if [[ "$PROGNAME" = "clfs" ]] && [[ "$METHOD" = "boot" ]] ; then 48 local ROOT_DIR=/ 49 local DEST_TOPDIR=/${SCRIPT_ROOT} 50 local ICALOGDIR=/${SCRIPT_ROOT}/logs/ICA 51 local FARCELOGDIR=/${SCRIPT_ROOT}/logs/farce 52 else 53 local ROOT_DIR=$BUILDDIR 54 local DEST_TOPDIR=$BUILDDIR/${SCRIPT_ROOT} 55 fi 61 local ROOT_DIR=/ 62 local DEST_TOPDIR=/${SCRIPT_ROOT} 63 local ICALOGDIR=/${SCRIPT_ROOT}/logs/ICA 64 local FARCELOGDIR=/${SCRIPT_ROOT}/logs/farce 56 65 57 66 if [[ "$RUN_ICA" = "y" ]] ; then -
common/func_validate_configs.sh
r6f75d64 r045b2dc 27 27 local -r blfs_PARAM_LIST="BRANCH_ID BLFS_ROOT BLFS_XML TRACKING_DIR" 28 28 29 local -r blfs_tool_PARAM_LIST="BLFS_BRANCH_ID BLFS_ROOT BLFS_XML TRACKING_DIR DEP_LIBXML DEP_LIBXSLT DEP_ DBXSL DEP_LINKS DEP_SUDO DEP_WGET DEP_SVN DEP_GPM"29 local -r blfs_tool_PARAM_LIST="BLFS_BRANCH_ID BLFS_ROOT BLFS_XML TRACKING_DIR DEP_LIBXML DEP_LIBXSLT DEP_TIDY DEP_UNZIP DEP_DBXML DEP_DBXSL DEP_LINKS DEP_SUDO DEP_WGET DEP_SVN DEP_GPM" 30 30 31 31 local -r ERROR_MSG_pt1='The variable \"${L_arrow}${config_param}${R_arrow}\" value ${L_arrow}${BOLD}${!config_param}${R_arrow} is invalid,' -
common/makefile-functions
r6f75d64 r045b2dc 2 2 # $Id$ 3 3 4 BOLD= "[0;1m" 5 RED= "[1;31m" 6 GREEN= "[0;32m" 7 ORANGE= "[0;33m" 8 BLUE= "[1;34m" 9 WHITE= "[00m" 4 BOLD = "[0;1m" 5 RED = "[1;31m" 6 GREEN = "[0;32m" 7 ORANGE = "[0;33m" 8 BLUE = "[1;34m" 9 WHITE = "[00m" 10 YELLOW = "[1;33m" 11 12 OFF = "[0m" 13 BOLD = "[1m" 14 REVERSE = "[7m" 15 16 17 define echo_PHASE 18 @clear 19 @echo $(BOLD)-------------------------------------------------------------------------------- 20 @echo Executing $(BLUE)$(1)$(WHITE) scripts 21 @echo $(BOLD)-------------------------------------------------------------------------------- 22 #echo $(WHITE) 23 endef 24 25 define echo_SU_request 26 @echo $(BOLD)-------------------------------------------------------------------------------- 27 @echo $(BLUE)$@ 28 @echo $(WHITE)ROOT privilege is required to perform a number commands 29 @echo sudo will request a password to all high privilege cmds to execute correctly 30 endef 31 32 define echo_SULUSER_request 33 @clear 34 @echo $(BOLD)-------------------------------------------------------------------------------- 35 @echo $(BOLD)$(BLUE)$@ 36 @echo $(WHITE)You are going to log into the user account $(BOLD)$(YELLOW)$(LUSER)$(OFF) 37 @echo su requires a password 38 endef 39 40 define echo_CHROOT_request 41 @clear 42 @echo $(BOLD)-------------------------------------------------------------------------------- 43 @echo $(BOLD)$(BLUE)$@ 44 @echo $(WHITE)You are going to CHROOT into $(MOUNT_PT) $(BOLD)$(YELLOW)$(LUSER)$(OFF) 45 @echo a password is required 46 endef 10 47 11 48 define echo_message 12 @echo $(BOLD) 13 @echo -------------------------------------------------------------------------------- 14 @echo $(BOLD)$(1) target $(BLUE)$@$(BOLD) 15 @echo $(WHITE) 49 @echo $(BOLD)-------------------------------------------------------------------------------- 50 @echo $(BOLD)$(1) target $(BLUE)$@$(BOLD)$(WHITE) 16 51 endef 17 52 … … 24 59 25 60 define remove_existing_dirs2 26 @PKG_PATH= \`ls -t $(SRC)/$(1) | head -n1\` && \61 @PKG_PATH=`ls -t $(SRC)/$(1) | head -n1` && \ 27 62 ROOT=`tar -tf $$PKG_PATH | head -n1 | sed -e 's@^./@@;s@/.*@@'` && \ 28 63 rm -rf $(SRC)/$$ROOT && \ … … 45 80 @touch $@ && \ 46 81 sleep .25 && \ 47 echo -e "\n\n "$(BOLD)Target $(BLUE)$@$(BOLD)OK && \82 echo -e "\n" $(BOLD)Target $(BLUE)$@ $(WHITE)$(BOLD)OK && \ 48 83 echo --------------------------------------------------------------------------------$(WHITE) 49 84 … … 63 98 @ROOT=`head -n1 $(SRC)/$(PKG_LST) | sed 's@^./@@;s@/.*@@'` && \ 64 99 echo "export PKGDIR=$(SRC)/$$ROOT" > envars 100 endef 101 102 define get_pkg_root_LUSER 103 @ROOT=`head -n1 $(SRCSDIR)/$(PKG_LST) | sed 's@^./@@;s@/.*@@'` && \ 104 echo "export PKGDIR=$(SRCSDIR)/$$ROOT" > envars 65 105 endef 66 106 -
common/progress_bar.sh
r6f75d64 r045b2dc 37 37 38 38 # initialize screen 39 write_or_exit "${RESET_LINE}${TS_POSITION}0 min. 0 sec ."39 write_or_exit "${RESET_LINE}${TS_POSITION}0 min. 0 sec" 40 40 41 41 # loop forever..
Note:
See TracChangeset
for help on using the changeset viewer.