Ignore:
Timestamp:
10/29/2013 03:42:03 PM (11 years ago)
Author:
Pierre Labastie <pierre@…>
Branches:
2.4, ablfs-more, legacy, new_features, trunk
Children:
5795ad7
Parents:
2e64c47
Message:

Merge ablfs branch. Normally, jhalfs should not perform differently
for building LFS

File:
1 edited

Legend:

Unmodified
Added
Removed
  • BLFS/gen-makefile.sh

    r2e64c47 re576789  
    55set -e
    66
    7 # TEMPORARY VARIABLES.. development use only
     7declare TOPDIR='..'
     8declare ATOPDIR=`cd $TOPDIR; pwd`
    89declare MKFILE=Makefile
    910declare PREV_PACKAGE=""
    10 declare BUILD_SCRIPTS=scripts
    11 declare TRACKING_DIR=tracking-dir
     11declare BUILD_SCRIPTS=${TOPDIR}/scripts
     12declare TRACKING_FILE=tracking-dir/instpkg.xml
     13declare XSLDIR=${TOPDIR}/xsl
     14declare PACK_FILE=${TOPDIR}/packages.xml
     15declare BUMP=${XSLDIR}/bump.xsl
    1216
    1317HEADER="# This file is automatically generated by gen-makefile.sh
     
    3943(
    4044cat << EOF
    41         @source ../envars.conf && ${BUILD_SCRIPTS}/\$@ >logs/\$@ 2>&1
     45        @source ${TOPDIR}/envars.conf && ${BUILD_SCRIPTS}/\$@ >logs/\$@ 2>&1
    4246EOF
    4347) >> $MKFILE.tmp
     
    4852#----------------------------------#
    4953  local pkg_name=$1
    50   local pkg_ver=$2
    51   local alsa_ver=$(grep "^alsa[[:space:]]" ../packages | cut -f3)
    52   local kde_core_ver=$(grep "^kde-core[[:space:]]" ../packages | cut -f3)
    53   local xorg7_ver=$(grep "^xorg7[[:space:]]" ../packages | cut -f3)
    54 
    55   if [[ -n "$pkg_ver" ]] ; then
    56 (
    57 cat << EOF
    58         @rm -f \$(TRACKING_DIR)/${pkg_name#*-?-}-{0..9}* && \\
    59         touch \$(TRACKING_DIR)/${pkg_name#*-?-}-${pkg_ver}
    60 EOF
    61 ) >> $MKFILE.tmp
    62   fi
    63 
    64   case $pkg_name in
    65     *-alsa-lib ) #this the unique mandatory package for ALSA support.
    66 (
    67 cat << EOF
    68         @rm -f \$(TRACKING_DIR)/alsa-{0..9}* && \\
    69         touch \$(TRACKING_DIR)/alsa-${alsa_ver}
    70 EOF
    71 ) >> $MKFILE.tmp
    72       ;;
    73     *-kdebase )
    74 (
    75 cat << EOF
    76         @rm -f \$(TRACKING_DIR)/kde-core-{0..9}* && \\
    77         touch \$(TRACKING_DIR)/kde-core-${kde_core_ver}
    78 EOF
    79 ) >> $MKFILE.tmp
    80       ;;
    81     *-xorg7-driver ) # xtrerm2 and rman are optional
    82 (
    83 cat << EOF
    84         @rm -f \$(TRACKING_DIR)/xorg7-{0..9}* && \\
    85         touch \$(TRACKING_DIR)/xorg7-${xorg7_ver}
    86 EOF
    87 ) >> $MKFILE.tmp
    88       ;;
    89   esac
    9054
    9155(
    9256cat << EOF
    93         @touch  \$@ && \\
     57        @xsltproc --stringparam packages ${PACK_FILE} \\
     58        --stringparam package ${pkg_name#*-?-} \\
     59        -o track.tmp \\
     60        ${BUMP} \$(TRACKING_FILE) && \\
     61        sed -i 's@PACKDESC@${ATOPDIR}/packdesc.dtd@' track.tmp && \\
     62        xmllint --format --postvalid track.tmp > \$(TRACKING_FILE) && \\
     63        rm track.tmp && \\
     64        touch  \$@ && \\
    9465        sleep .25 && \\
    9566        echo -e "\n\n "\$(BOLD)Target \$(BLUE)\$@ \$(BOLD)OK && \\
     
    10475#----------------------------#
    10576  local script_name=$1
    106   local pkg_ver=$2
    10777
    10878  echo -n "${tab_}${tab_} entry for <$script_name>"
     
    11989  # Include a touch of the target name so make can check
    12090  # if it's already been made.
    121   __wrt_touch "${script_name}" "${pkg_ver}"
     91  __wrt_touch "${script_name}"
    12292  #
    12393  #--------------------------------------------------------------------#
     
    12595  #--------------------------------------------------------------------#
    12696  echo " .. OK"
    127 }
    128 
    129 #----------------------------#
    130 __write_meta_pkg_touch() {   #
    131 #----------------------------#
    132   local meta_pkg=$1
    133   local pkg_ver=$(grep "^${meta_pkg}[[:space:]]" ../packages | cut -f3)
    134   local gnome_core_ver=$(grep "^gnome-core[[:space:]]" ../packages | cut -f3)
    135   local kde_full_ver=$(grep "^kde-full[[:space:]]" ../packages | cut -f3)
    136 
    137 (
    138 cat << EOF
    139 
    140 999-z-$meta_pkg:  $PREV_PACKAGE
    141         @rm -f \$(TRACKING_DIR)/${meta_pkg}-{0..9}* && \\
    142         touch \$(TRACKING_DIR)/${meta_pkg}-${pkg_ver}
    143 EOF
    144 ) >> $MKFILE.tmp
    145 
    146   case $meta_pkg in
    147     gnome-full )
    148 (
    149 cat << EOF
    150         @rm -f \$(TRACKING_DIR)/gnome-core-{0..9}* && \\
    151         touch \$(TRACKING_DIR)/gnome-core-${gnome_core_ver}
    152 EOF
    153 ) >> $MKFILE.tmp
    154       ;;
    155     kde-koffice )
    156 (
    157 cat << EOF
    158         @rm -f \$(TRACKING_DIR)/kde-full-{0..9}* && \\
    159         touch \$(TRACKING_DIR)/kde-full-${kde_full_ver}
    160 EOF
    161 ) >> $MKFILE.tmp
    162       ;;
    163   esac
    164 
    165 (
    166 cat << EOF
    167         @touch  \$@
    168 EOF
    169 ) >> $MKFILE.tmp
    170 
    17197}
    17298
     
    183109
    184110
    185   for package_script in scripts/* ; do
     111  for package_script in ${BUILD_SCRIPTS}/* ; do
    186112    this_script=`basename $package_script`
    187     pkg_ver=$(grep "^${this_script#*-?-}[[:space:]]" ../packages | cut -f3)
    188113    pkg_list="$pkg_list ${this_script}"
    189     __write_entry "${this_script}" "${pkg_ver}"
     114    __write_entry "${this_script}"
    190115    PREV_PACKAGE=${this_script}
    191116  done
    192117
    193   PACKAGE=$(basename $PWD)
    194 
    195    # alsa, kde-core and xorg7 are also available dependencies, thus handled
    196    # in another way.
    197   case $PACKAGE in
    198     gnome-core | \
    199     gnome-full | \
    200     kde-full | \
    201     kde-koffice )  pkg_list="$pkg_list 999-z-${PACKAGE}"
    202                   __write_meta_pkg_touch "${PACKAGE}"
    203                   ;;
    204   esac
    205 
    206 
    207   # Add a header, some variables and include the function file
    208   # to the top of the real Makefile.
    209118(
    210119    cat << EOF
    211120$HEADER
    212121
    213 PACKAGE= $PACKAGE
    214 TRACKING_DIR= $TRACKING_DIR
     122TRACKING_FILE= $TRACKING_FILE
    215123
    216124BOLD= "[0;1m"
     
    229137
    230138
    231 define fin_message
     139define end_message
    232140  @echo \$(BOLD)
    233141  @echo --------------------------------------------------------------------------------
     
    237145
    238146all : $pkg_list
    239         @\$(call fin_message )
     147        @\$(call end_message )
    240148EOF
    241149) > $MKFILE
     
    248156}
    249157
    250 if [[ -e Config.in ]] ; then
    251   echo -e "\n\tThis script must be run from inside a target package directory.\n"
     158if [[ ! -d ${BUILD_SCRIPTS} ]] ; then
     159  echo -e "\n\tThe \'${BUILD_SCRIPTS}\' directory has not been found.\n"
    252160  exit 1
    253161fi
    254162
    255 if [[ ! -d scripts ]] ; then
    256   echo -e "\n\tNo ./scripts/ directory has been found.\n"
    257   exit 1
    258 fi
     163# Let us make a clean base:
     164rm -rf *
    259165
    260166generate_Makefile
    261167
    262 cp ../progress_bar.sh .
     168cp ${TOPDIR}/progress_bar.sh .
    263169
    264170mkdir -p logs
Note: See TracChangeset for help on using the changeset viewer.