Changeset 2507cf7 for jhalfs


Ignore:
Timestamp:
03/08/2012 05:42:55 PM (12 years ago)
Author:
Pierre Labastie <pierre@…>
Branches:
ablfs
Children:
9a865396
Parents:
34986b8
Message:

Major change for the inclusion of blfs-tool dependencies:

  • build them before custom tools
  • use instructions in the BLFS book instead of harcoded ones
  • use the dependency tracker of the tool itself (kind of bootstrap)
File:
1 edited

Legend:

Unmodified
Added
Removed
  • jhalfs

    r34986b8 r2507cf7  
    177177BOOK=${BOOK:=$PROGNAME-$LFSVRS}
    178178
     179
     180#--- Envars not sourced from configuration
     181case $PROGNAME in
     182# TODO: clfs is now on git
     183#  clfs* ) declare -r SVN="http://svn.cross-lfs.org/svn/repos" ;;
     184      * ) declare -r SVN="svn://svn.linuxfromscratch.org" ;;
     185esac
     186declare -r LOG=000-masterscript.log
     187  # Needed for fetching BLFS book sources when building CLFS
     188declare -r SVN_2="svn://svn.linuxfromscratch.org"
     189
     190# Set true internal variables
     191COMMON_DIR="common"
     192PACKAGE_DIR=$(echo $PROGNAME | tr '[a-z]' '[A-Z]')
     193MODULE=$PACKAGE_DIR/master.sh
     194PKGMNGTDIR="pkgmngt"
     195# The name packageManager.xml is hardcoded in *.xsl, so no variable.
     196
     197[[ $VERBOSITY > 0 ]] && echo -n "Loading common-functions module..."
     198source $COMMON_DIR/common-functions
     199[[ $? > 0 ]] && echo " $COMMON_DIR/common-functions did not load.." && exit
     200[[ $VERBOSITY > 0 ]] && echo "OK"
     201[[ $VERBOSITY > 0 ]] && echo -n "Loading code module <$MODULE>..."
     202source $MODULE
     203[[ $? > 0 ]] && echo "$MODULE did not load.." && exit 2
     204[[ $VERBOSITY > 0 ]] && echo "OK"
     205#
     206[[ $VERBOSITY > 0 ]] && echo "${SD_BORDER}${nl_}"
     207
     208
     209#*******************************************************************#
     210[[ $VERBOSITY > 0 ]] && echo -n "Loading function <func_check_version.sh>..."
     211source $COMMON_DIR/libs/func_check_version.sh
     212[[ $? > 0 ]] && echo " function module did not load.." && exit 2
     213[[ $VERBOSITY > 0 ]] && echo "OK"
     214
     215[[ $VERBOSITY > 0 ]] && echo -n "Loading function <func_validate_configs.sh>..."
     216source $COMMON_DIR/libs/func_validate_configs.sh
     217[[ $? > 0 ]] && echo " function module did not load.." && exit 2
     218[[ $VERBOSITY > 0 ]] && echo "OK"
     219
     220[[ $VERBOSITY > 0 ]] && echo -n "Loading function <func_custom_pkgs>..."
     221source $COMMON_DIR/libs/func_custom_pkgs
     222[[ $? > 0 ]] && echo " function module did not load.." && exit 2
     223[[ $VERBOSITY > 0 ]] && echo "OK"
     224
     225
     226[[ $VERBOSITY > 0 ]] && echo "${SD_BORDER}${nl_}"
     227
    179228# blfs-tool envars
    180229BLFS_TOOL=${BLFS_TOOL:-n}
     
    189238              * )  BLFS_TREE=tags/${BLFS_BRANCH_ID} ;;
    190239  esac
    191   # Dependencies envars, easier to update.
    192   # Tidy and Unzip version are harcoded also in wrt_blfs_tool_targets()
    193     # libxml2
    194   LIBXML_PKG="libxml2-2.7.8.tar.gz"
    195   LIBXML_URL="ftp://xmlsoft.org/libxml2/${LIBXML_PKG}"
    196   LIBXML_MD5="8127a65e8c3b08856093099b52599c86"
    197     # libxslt
    198   LIBXSLT_PKG="libxslt-1.1.26.tar.gz"
    199   LIBXSLT_URL="ftp://xmlsoft.org/libxslt/${LIBXSLT_PKG}"
    200   LIBXSLT_MD5="e61d0364a30146aaa3001296f853b2b9"
    201     # tidy
    202   TIDY_PKG="tidy-cvs_20101110.tar.bz2"
    203   TIDY_URL="http://anduin.linuxfromscratch.org/sources/BLFS/svn/t/${TIDY_PKG}"
    204   TIDY_MD5="dd1fe109b4259ad3f364b175787ad5e9"
    205     # unzip
    206   UNZIP_PKG="unzip60.tar.gz"
    207   UNZIP_URL="http://downloads.sourceforge.net/infozip/${UNZIP_PKG}"
    208   UNZIP_MD5="62b490407489521db863b523a7f86375"
    209     # DocBook XML DTD
    210   DBXML_PKG="docbook-xml-4.5.zip"
    211   DBXML_URL="http://www.docbook.org/xml/4.5/${DBXML_PKG}"
    212   DBXML_MD5="03083e288e87a7e829e437358da7ef9e"
    213     # DocBook XSL
    214 #   DBXSL_PKG="docbook-xsl-1.69.1.tar.bz2"
    215 #   DBXSL_URL="http://prdownloads.sourceforge.net/docbook/${DBXSL_PKG}"
    216 #   DBXSL_MD5="6ebd29a67f2dcc3f2220f475ee6f6552"
    217     # Lynx
    218   LYNX_PKG="lynx2.8.8dev.10.tar.bz2"
    219   LYNX_URL="http://lynx.isc.org/current/${LYNX_PKG}"
    220   LYNX_MD5="1c9ef3746520c69914b461f88de6b12e"
    221     # sudo
    222   SUDO_PKG="sudo-1.8.2.tar.gz"
    223   SUDO_URL="http://www.sudo.ws/sudo/dist/${SUDO_PKG}"
    224   SUDO_MD5="000f458e7391be9fdf459a9ad6a4912a"
    225     # wget
    226   WGET_PKG="wget-1.13.4.tar.xz"
    227   WGET_URL="ftp://ftp.gnu.org/gnu/wget/${WGET_PKG}"
    228   WGET_MD5="7f518b3a71e9efd330e9a0c3714f8463"
    229     # SQLite (for subversion)
    230   SQLITE_PKG="sqlite-autoconf-3071000.tar.gz"
    231   SQLITE_URL="http://sqlite.org/${SQLITE_PKG}"
    232   SQLITE_MD5="9ed2ca93577b58cfa0d01f64b9312ab9"
    233     # Apache Portable Runtime (for subversion)
    234   APR_PKG="apr-1.4.5.tar.bz2"
    235   APR_URL="http://mirror.speednetwork.de/apache/apr/$APR_PKG"
    236   APR_MD5="8b53f5a5669d0597f2da889a2f576eb6"
    237     # APR config patch
    238   APR_PATCH_1="apr-1.4.5-config.patch"
    239   APR_PATCH_1_URL="file:///sources/local-patches/${APR_PATCH_1}"
    240   APR_PATCH_1_MD5="fff6eddf998f4e956915f8053c15e41e"
    241     # Apache Portable Runtime Utilities (for subversion)
    242   APR_U_PKG="apr-util-1.4.1.tar.bz2"
    243   APR_U_URL="http://mirrors.ircam.fr/pub/apache/apr/$APR_U_PKG"
    244   APR_U_MD5="52b31b33fb1aa16e65ddaefc76e41151"
    245     # APR-util config patch
    246   APR_U_PATCH_1="apr-util-1.4.1-config.patch"
    247   APR_U_PATCH_1_URL="file:///sources/local-patches/${APR_U_PATCH_1}"
    248   APR_U_PATCH_1_MD5="4c07cb0d298ae9ddc75cd2d5acdedb2b"
    249     # Subversion
    250   SVN_PKG="subversion-1.7.1.tar.bz2"
    251   SVN_URL="http://archive.apache.org/dist/subversion/${SVN_PKG}"
    252   SVN_MD5="8a4fa74385df85a9702141b6b68b8307"
    253     # GPM
    254   GPM_PKG="gpm-1.20.6.tar.bz2"
    255   GPM_URL="http://www.nico.schottelius.org/software/gpm/archives/$GPM_PKG"
    256   GPM_MD5="6b534da16dc1b28ba828dea89e520f6f"
    257 fi
    258 
    259 #--- Envars not sourced from configuration
    260 case $PROGNAME in
    261 # TODO: clfs is now on git
    262 #  clfs* ) declare -r SVN="http://svn.cross-lfs.org/svn/repos" ;;
    263       * ) declare -r SVN="svn://svn.linuxfromscratch.org" ;;
    264 esac
    265 declare -r LOG=000-masterscript.log
    266   # Needed for fetching BLFS book sources when building CLFS
    267 declare -r SVN_2="svn://svn.linuxfromscratch.org"
    268 
    269 # Set true internal variables
    270 COMMON_DIR="common"
    271 PACKAGE_DIR=$(echo $PROGNAME | tr '[a-z]' '[A-Z]')
    272 MODULE=$PACKAGE_DIR/master.sh
    273 PKGMNGTDIR="pkgmngt"
    274 # The name packageManager.xml is hardcoded in *.xsl, so no variable.
    275 
    276 [[ $VERBOSITY > 0 ]] && echo -n "Loading common-functions module..."
    277 source $COMMON_DIR/common-functions
    278 [[ $? > 0 ]] && echo " $COMMON_DIR/common-functions did not load.." && exit
    279 [[ $VERBOSITY > 0 ]] && echo "OK"
    280 [[ $VERBOSITY > 0 ]] && echo -n "Loading code module <$MODULE>..."
    281 source $MODULE
    282 [[ $? > 0 ]] && echo "$MODULE did not load.." && exit 2
    283 [[ $VERBOSITY > 0 ]] && echo "OK"
    284 #
    285 [[ $VERBOSITY > 0 ]] && echo "${SD_BORDER}${nl_}"
    286 
    287 
    288 #*******************************************************************#
    289 [[ $VERBOSITY > 0 ]] && echo -n "Loading function <func_check_version.sh>..."
    290 source $COMMON_DIR/libs/func_check_version.sh
    291 [[ $? > 0 ]] && echo " function module did not load.." && exit 2
    292 [[ $VERBOSITY > 0 ]] && echo "OK"
    293 
    294 [[ $VERBOSITY > 0 ]] && echo -n "Loading function <func_validate_configs.sh>..."
    295 source $COMMON_DIR/libs/func_validate_configs.sh
    296 [[ $? > 0 ]] && echo " function module did not load.." && exit 2
    297 [[ $VERBOSITY > 0 ]] && echo "OK"
    298 
    299 [[ $VERBOSITY > 0 ]] && echo -n "Loading function <func_custom_pkgs>..."
    300 source $COMMON_DIR/libs/func_custom_pkgs
    301 [[ $? > 0 ]] && echo " function module did not load.." && exit 2
    302 [[ $VERBOSITY > 0 ]] && echo "OK"
    303 
    304 
    305 [[ $VERBOSITY > 0 ]] && echo "${SD_BORDER}${nl_}"
    306 
     240  [[ $VERBOSITY > 0 ]] && echo -n "Loading blfs tools installation function..."
     241  source $COMMON_DIR/libs/func_install_blfs
     242  [[ $? > 0 ]] && echo "function module did not load.." && exit 1
     243  [[ $VERBOSITY > 0 ]] && echo "OK"
     244fi
    307245
    308246###################################
     
    387325  [[ "$GETPKG" = "y" ]] && cp $COMMON_DIR/urls.xsl  $JHALFSDIR/
    388326  #
    389   # Copy APR patches, if needed
    390   [[ "$DEP_SVN" = "y" ]] &&
    391          cp $COMMON_DIR/blfs-tool-deps/apr*.patch  $BUILDDIR/sources
    392   #
    393327  # Create the test-log directory, if needed
    394328  [[ "$TEST" != "0" ]] && [[ ! -d $TESTLOGDIR ]] && install -d -m 1777 $TESTLOGDIR
     
    414348  fi
    415349  #
    416 
    417350  # Copy custom tools config files, if requested
    418351  if [[ "${CUSTOM_TOOLS}" = "y" ]]; then
     
    424357  # Install blfs-tool, if requested.
    425358  if [[ "${BLFS_TOOL}" = "y" ]] ; then
    426     # Install the files
    427     [[ ! -d ${BUILDDIR}${BLFS_ROOT} ]] && mkdir -p ${BUILDDIR}${BLFS_ROOT}
    428     cp -r BLFS/* ${BUILDDIR}${BLFS_ROOT}
    429     cp -r menu ${BUILDDIR}${BLFS_ROOT}
    430     cp $COMMON_DIR/progress_bar.sh ${BUILDDIR}${BLFS_ROOT}
    431     cp README.BLFS ${BUILDDIR}${BLFS_ROOT}
    432     # Clean-up
    433     make -C ${BUILDDIR}${BLFS_ROOT}/menu clean
    434     rm -rf ${BUILDDIR}${BLFS_ROOT}/libs/.svn
    435     rm -rf ${BUILDDIR}${BLFS_ROOT}/xsl/.svn
    436     rm -rf ${BUILDDIR}${BLFS_ROOT}/menu/.svn
    437     rm -rf ${BUILDDIR}${BLFS_ROOT}/menu/lxdialog/.svn
    438     # Set some harcoded envars to their proper values
    439     sed -i 's,tracking-dir,'$TRACKING_DIR',' ${BUILDDIR}${BLFS_ROOT}/{Makefile,gen-makefile.sh}
    440     # Copy the dependencies build scripts
    441     cp -r $COMMON_DIR/blfs-tool-deps $JHALFSDIR/
    442     rm -rf $JHALFSDIR/blfs-tool-deps/.svn
     359    echo Downloading and validating the BLFS book
     360    echo '(may take some time...)'
     361    install_blfs_tools 2>&1 | tee -a $LOGDIR/$LOG
    443362  fi
    444363  #
     
    446365  get_book
    447366  echo "${SD_BORDER}${nl_}"
    448 
    449   # Get the BLFS book, if requested.
    450   if [[ "${BLFS_TOOL}" = "y" ]] ; then
    451     echo -n "Downloading the BLFS document, $BLFS_BRANCH_ID version... "
    452     if [[ ! -d ${BUILDDIR}${BLFS_ROOT}/${BLFS_XML} ]] ; then
    453       mkdir -p ${BUILDDIR}${BLFS_ROOT}/${BLFS_XML}
    454       svn co $SVN_2/BLFS/$BLFS_TREE ${BUILDDIR}${BLFS_ROOT}/${BLFS_XML} >>$LOGDIR/$LOG 2>&1
    455     else
    456       pushd ${BUILDDIR}${BLFS_ROOT}/${BLFS_XML} 1> /dev/null
    457         svn up >>$LOGDIR/$LOG 2>&1
    458       popd 1> /dev/null
    459     fi
    460     echo -ne "done\n"
    461     echo "${SD_BORDER}${nl_}"
    462   fi
    463367
    464368fi
Note: See TracChangeset for help on using the changeset viewer.