Magellan Linux

Diff of /trunk/mage/usr/lib/mage/smage2.sh

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 875 by niro, Thu May 21 19:06:26 2009 UTC revision 951 by niro, Sat Nov 21 14:31:50 2009 UTC
# Line 20  SMAGENAME="$1" Line 20  SMAGENAME="$1"
20  SMAGESUFFIX="smage2"  SMAGESUFFIX="smage2"
21  MLIBDIR=/usr/lib/mage  MLIBDIR=/usr/lib/mage
22  SMAGEVERSION="$( < ${MLIBDIR}/version)"  SMAGEVERSION="$( < ${MLIBDIR}/version)"
 SMAGE_LOG_CMD="tee -a /var/log/smage/${PKGNAME}.log"  
   
23    
24  ## only for tests -> normally in /etc/rc.d/init.d/functions  ## only for tests -> normally in /etc/rc.d/init.d/functions
25  COLRED="\033[1;6m\033[31m"  COLRED="\033[1;6m\033[31m"
# Line 75  die() Line 73  die()
73   exit 1   exit 1
74  }  }
75    
76    die_pipestatus()
77    {
78     # the status change if we do any parameter declarations!!
79     # dont do this anymore, keep this in mind!
80     #
81     # local pos="$1"
82     # local comment="$2"
83     #
84     # [ ${PIPESTATUS[${pos}]} -ne 0 ] && die "${comment}"
85     #
86     [ ${PIPESTATUS[$1]} -ne 0 ] && die "$2"
87    }
88    
89  xtitle()  xtitle()
90  {  {
91   if [[ ${TERM} = xterm ]]   if [[ ${TERM} = xterm ]]
# Line 173  download_sources() Line 184  download_sources()
184   my_SOURCEDIR="${SOURCEDIR}/${PNAME}"   my_SOURCEDIR="${SOURCEDIR}/${PNAME}"
185   fi   fi
186    
187     # create the SOURCEDIR
188     install -d ${my_SOURCEDIR}
189    
190   # if an mirrored file than replace first the mirror uri   # if an mirrored file than replace first the mirror uri
191   if [[ -n $(echo ${my_SRC_URI} | grep 'mirror://') ]]   if [[ -n $(echo ${my_SRC_URI} | grep 'mirror://') ]]
192   then   then
# Line 188  download_sources() Line 202  download_sources()
202   --tries 3 \   --tries 3 \
203   --continue \   --continue \
204   --progress bar \   --progress bar \
205   --directory-prefix="${my_SOURCEDIR}" \   --output-document="${my_SOURCEDIR}/$(basename ${my_SRC_URI_MIRROR})" \
206   "${my_SRC_URI_MIRROR}"   "${my_SRC_URI_MIRROR}"
207   if [[ $? = 0 ]]   if [[ $? = 0 ]]
208   then   then
# Line 212  download_sources() Line 226  download_sources()
226   --tries 3 \   --tries 3 \
227   --continue \   --continue \
228   --progress bar \   --progress bar \
229   --directory-prefix="${my_SOURCEDIR}" \   --output-document="${my_SOURCEDIR}/$(basename ${my_SRC_URI_MIRROR})" \
230   "${my_SRC_URI_MIRROR}"   "${my_SRC_URI_MIRROR}"
231   if [[ $? = 0 ]]   if [[ $? = 0 ]]
232   then   then
# Line 236  download_sources() Line 250  download_sources()
250   --tries 3 \   --tries 3 \
251   --continue \   --continue \
252   --progress bar \   --progress bar \
253   --directory-prefix="${my_SOURCEDIR}" \   --output-document="${my_SOURCEDIR}/$(basename ${my_SRC_URI_MIRROR})" \
254   "${my_SRC_URI_MIRROR}"   "${my_SRC_URI_MIRROR}"
255   if [[ $? = 0 ]]   if [[ $? = 0 ]]
256   then   then
# Line 260  download_sources() Line 274  download_sources()
274   --tries 3 \   --tries 3 \
275   --continue \   --continue \
276   --progress bar \   --progress bar \
277   --directory-prefix="${my_SOURCEDIR}" \   --output-document="${my_SOURCEDIR}/$(basename ${my_SRC_URI_MIRROR})" \
278   "${my_SRC_URI_MIRROR}"   "${my_SRC_URI_MIRROR}"
279   if [[ $? = 0 ]]   if [[ $? = 0 ]]
280   then   then
# Line 284  download_sources() Line 298  download_sources()
298   --tries 3 \   --tries 3 \
299   --continue \   --continue \
300   --progress bar \   --progress bar \
301   --directory-prefix="${my_SOURCEDIR}" \   --output-document="${my_SOURCEDIR}/$(basename ${my_SRC_URI_MIRROR})" \
302   "${my_SRC_URI_MIRROR}"   "${my_SRC_URI_MIRROR}"
303   if [[ $? = 0 ]]   if [[ $? = 0 ]]
304   then   then
# Line 303  download_sources() Line 317  download_sources()
317   --tries 3 \   --tries 3 \
318   --continue \   --continue \
319   --progress bar \   --progress bar \
320   --directory-prefix="${my_SOURCEDIR}" \   --output-document="${my_SOURCEDIR}/$(basename ${my_SRC_URI})" \
321   "${my_SRC_URI}"   "${my_SRC_URI}"
322   fi   fi
323   fi   fi
# Line 540  mstripbins() Line 554  mstripbins()
554   find ${stripdir} | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null   find ${stripdir} | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
555  }  }
556    
557    mcompressdocs()
558    {
559     local bindir="$@"
560    
561     if [ -d ${bindir}/usr/share/man ]
562     then
563     echo -e "${COLBLUE}===${COLGREEN} compressing man-pages ...${COLDEFAULT}"
564     ${MLIBDIR}/compressdoc -g -9 ${bindir}/usr/share/man
565     fi
566    
567     if [ -d ${bindir}/usr/share/info ]
568     then
569     echo -e "${COLBLUE}===${COLGREEN} compressing info-pages ...${COLDEFAULT}"
570     ${MLIBDIR}/compressdoc -g -9 ${bindir}/usr/share/info
571     fi
572    }
573    
574  sminclude()  sminclude()
575  {  {
576   local i   local i
# Line 655  EOF Line 686  EOF
686  #   INHERITS              which functions get included  #   INHERITS              which functions get included
687  #   SPECIAL_FUNCTIONS     special functions which should also be added  #   SPECIAL_FUNCTIONS     special functions which should also be added
688  #                         warning: they get killed before the build starts !  #                         warning: they get killed before the build starts !
689    #   SPLIT_PACKAGES        names of all subpackages which are splitted from parent
690    #   SPLIT_PACKAGE_BASE    base package name for splitpackages
691    #                         (only in the resulting magefile}
692  #  #
693  #   MAGE_TREE_DEST        target destination of the generated tree  #   MAGE_TREE_DEST        target destination of the generated tree
694  #   REGEN_MAGE_TREE       set to 'true' to enable this  #   REGEN_MAGE_TREE       set to 'true' to enable this
# Line 665  build_mage_script() Line 699  build_mage_script()
699   local magefile   local magefile
700   local dest   local dest
701   local target   local target
702     local split_pkg_base
703   local sym   local sym
704   local depname   local depname
705    
# Line 672  build_mage_script() Line 707  build_mage_script()
707   : ${MAGE_TREE_DEST=${BUILDDIR}/mage-tree}   : ${MAGE_TREE_DEST=${BUILDDIR}/mage-tree}
708    
709   # determinate which suffix this mage file should get, if any   # determinate which suffix this mage file should get, if any
710   [ -n "$1" ] && target="-$1"   [[ $1 = --target ]] && shift && target="-$1"
711    
712     # mark package as splitpackage
713     [[ $1 = --split-pkg-base ]] && shift && split_pkg_base="$1"
714    
715   # name of magefile   # name of magefile
716   magefile="${PNAME}${target}-${PVER}-${PBUILD}.mage"   magefile="${PNAME}${target}-${PVER}-${PBUILD}.mage"
# Line 709  build_mage_script() Line 747  build_mage_script()
747   echo "MAGE_TARGETS=\"${target}\"" >> ${dest}   echo "MAGE_TARGETS=\"${target}\"" >> ${dest}
748   echo >> ${dest}   echo >> ${dest}
749    
750     # split package base
751     echo "SPLIT_PACKAGE_BASE=\"${split_pkg_base}\"" >> ${dest}
752     echo >> ${dest}
753    
754   # add special vars   # add special vars
755   if [ -n "${SPECIAL_VARS}" ]   if [ -n "${SPECIAL_VARS}" ]
756   then   then
# Line 776  regen_mage_tree() Line 818  regen_mage_tree()
818   if [[ ${REGEN_MAGE_TREE} = true ]]   if [[ ${REGEN_MAGE_TREE} = true ]]
819   then   then
820   # run it without targets   # run it without targets
821   if [ -z "${MAGE_TARGETS}" ]   if [[ -n ${MAGE_TARGETS} ]]
822   then   then
823     # build for each target a mage file
824     # run it with several targets
825   echo   echo
826   build_mage_script   for i in ${MAGE_TARGETS}
827     do
828     build_mage_script --target "${i}"
829     done
830   echo   echo
  else  
831    
832   # build for each target an mage file   # run it for splitpackages
833     elif [[ -n ${SPLIT_PACKAGES} ]]
834     then
835     local split_pkg_base="${PNAME}"
836     # save smage environment
837     split_save_variables
838     # build for each subpackage a mage file
839   # run it with several targets   # run it with several targets
840   for i in ${MAGE_TARGETS}   echo
841     for i in ${SPLIT_PACKAGES}
842   do   do
843   echo   # get the right variables for the split
844   build_mage_script "${i}"   export PNAME="${i}"
845   echo   split_info_${i}
846     build_mage_script --split-pkg-base "${split_pkg_base}"
847     # restore smage environment
848     split_restore_variables
849   done   done
850     echo
851     # unset all saved smage variables
852     split_unset_variables
853    
854     else
855     echo
856     build_mage_script
857     echo
858   fi   fi
859   fi   fi
860    
# Line 821  regen_mage_tree() Line 885  regen_mage_tree()
885   unset postremove   unset postremove
886  }  }
887    
888    split_save_variables()
889    {
890     export SAVED_PNAME="${PNAME}"
891     export SAVED_PVER="${PVER}"
892     export SAVED_PBUILD="${PBUILD}"
893     export SAVED_PCATEGORIE="${PCATEGORIE}"
894     export SAVED_DESCRIPTION="${DESCRIPTION}"
895     export SAVED_HOMEPAGE="${HOMEPAGE}"
896     export SAVED_SPECIAL_VARS="${SPECIAL_VARS}"
897     export SAVED_STATE="${STATE}"
898     export SAVED_PKGTYPE="${PKGTYPE}"
899     export SAVED_INHERITS="${INHERITS}"
900     export SAVED_DEPEND="${DEPEND}"
901     export SAVED_SDEPEND="${SDEPEND}"
902     export SAVED_PROVIDE="${PROVIDE}"
903     export SAVED_NOPKGBUILD="${NOPKGBUILD}"
904    
905     # bindir too
906     export SAVED_BINDIR="${BINDIR}"
907    
908     # export the SPLIT_PACKAGE_BASE
909     export SPLIT_PACKAGE_BASE="${SAVED_PNAME}"
910    
911     # functions
912     if [[ ! -z $(typeset -f preinstall) ]]
913     then
914     # rename the old one
915     local saved_preinstall
916     saved_preinstall=SAVED_$(typeset -f preinstall)
917     eval "${saved_preinstall}"
918     export -f SAVED_preinstall
919     fi
920    
921     if [[ ! -z $(typeset -f postinstall) ]]
922     then
923     # rename the old one
924     local saved_postinstall
925     saved_postinstall=SAVED_$(typeset -f postinstall)
926     eval "${saved_postinstall}"
927     export -f SAVED_postinstall
928     fi
929    
930     if [[ ! -z $(typeset -f preremove) ]]
931     then
932     # rename the old one
933     local saved_preremove
934     saved_preremove=SAVED_$(typeset -f preremove)
935     eval "${saved_preremove}"
936     export -f SAVED_preremove
937     fi
938    
939     if [[ ! -z $(typeset -f postremove) ]]
940     then
941     # rename the old one
942     local saved_postremove
943     saved_postremove=SAVED_$(typeset -f postremove)
944     eval "${saved_postremove}"
945     export -f SAVED_postremove
946     fi
947    }
948    
949    split_restore_variables()
950    {
951     export PNAME="${SAVED_PNAME}"
952     export PVER="${SAVED_PVER}"
953     export PBUILD="${SAVED_PBUILD}"
954     export PCATEGORIE="${SAVED_PCATEGORIE}"
955     export DESCRIPTION="${SAVED_DESCRIPTION}"
956     export HOMEPAGE="${SAVED_HOMEPAGE}"
957     export SPECIAL_VARS="${SAVED_SPECIAL_VARS}"
958     export STATE="${SAVED_STATE}"
959     export PKGTYPE="${SAVED_PKGTYPE}"
960     export INHERITS="${SAVED_INHERITS}"
961     export DEPEND="${SAVED_DEPEND}"
962     export SDEPEND="${SAVED_SDEPEND}"
963     export PROVIDE="${SAVED_PROVIDE}"
964     export NOPKGBUILD="${SAVED_NOPKGBUILD}"
965    
966     # bindir too
967     export BINDIR="${SAVED_BINDIR}"
968    
969     # functions
970     if [[ ! -z $(typeset -f SAVED_preinstall) ]]
971     then
972     # rename the old one
973     local saved_preinstall
974     saved_preinstall=$(typeset -f SAVED_preinstall)
975     eval "${saved_preinstall/SAVED_/}"
976     export -f preinstall
977     fi
978    
979     if [[ ! -z $(typeset -f SAVED_postinstall) ]]
980     then
981     # rename the old one
982     local saved_postinstall
983     saved_postinstall=$(typeset -f SAVED_postinstall)
984     eval "${saved_postinstall/SAVED_/}"
985     export -f postinstall
986     fi
987    
988     if [[ ! -z $(typeset -f SAVED_preremove) ]]
989     then
990     # rename the old one
991     local saved_preremove
992     saved_preremove=$(typeset -f SAVED_preremove)
993     eval "${saved_preremove/SAVED_/}"
994     export -f preremove
995     fi
996    
997     if [[ ! -z $(typeset -f SAVED_postremove) ]]
998     then
999     # rename the old one
1000     local saved_postremove
1001     saved_postremove=$(typeset -f SAVED_postremove)
1002     eval "${saved_postremove/SAVED_/}"
1003     export -f postremove
1004     fi
1005    }
1006    
1007    split_unset_variables()
1008    {
1009     # unset saved vars; not needed anymore
1010     unset SAVED_PNAME
1011     unset SAVED_PVER
1012     unset SAVED_PBUILD
1013     unset SAVED_PCATEGORIE
1014     unset SAVED_DESCRIPTION
1015     unset SAVED_HOMEPAGE
1016     unset SAVED_SPECIAL_VARS
1017     unset SAVED_STATE
1018     unset SAVED_PKGTYPE
1019     unset SAVED_INHERITS
1020     unset SAVED_DEPEND
1021     unset SAVED_SDEPEND
1022     unset SAVED_PROVIDE
1023     unset SAVED_BINDIR
1024     unset SAVED_NOPKGBUILD
1025     unset SPLIT_PACKAGE_BASE
1026     unset -f SAVED_preinstall
1027     unset -f SAVED_postinstall
1028     unset -f SAVED_preremove
1029     unset -f SAVED_postremove
1030    }
1031    
1032  export_inherits()  export_inherits()
1033  {  {
1034   local include="$1"   local include="$1"
# Line 882  generate_package_md5sum() Line 1090  generate_package_md5sum()
1090   # fix target as it may be empty !   # fix target as it may be empty !
1091   [ -n "${target}" ] && target="-${target}"   [ -n "${target}" ] && target="-${target}"
1092    
1093    
1094   # build pkgname   # build pkgname
1095   pkgname="${pname}${target}-${pver}-${parch}-${pbuild}"   pkgname="${pname}${target}-${pver}-${parch}-${pbuild}"
1096    
# Line 901  generate_package_md5sum() Line 1110  generate_package_md5sum()
1110   : ${MAGE_TREE_DEST=${BUILDDIR}/mage-tree}   : ${MAGE_TREE_DEST=${BUILDDIR}/mage-tree}
1111    
1112   # setup md5 dir   # setup md5 dir
1113   dest="${MAGE_TREE_DEST}/${pcat}/${pname}/md5"   dest="${MAGE_TREE_DEST}/${pcat}/${pname}${target}/md5"
1114   install -d ${dest}   install -d ${dest}
1115    
1116   # gen md5sum   # gen md5sum
# Line 943  step_by_step() Line 1152  step_by_step()
1152  {  {
1153   if [[ ${STEP_BY_STEP} = true ]]   if [[ ${STEP_BY_STEP} = true ]]
1154   then   then
1155   echo "${COLRED}Step-by-step enabled! Paused after $1.${COLDEFAULT}"   echo -e "${COLRED}Step-by-step enabled! Paused after $1.${COLDEFAULT}"
1156   echo "Press [enter] to continue"   echo "Press [enter] to continue"
1157   read   read
1158   fi   fi
# Line 1069  then Line 1278  then
1278    
1279   regen_mage_tree   regen_mage_tree
1280    
1281   # build md5sum for existing packages   # build several targets
1282   generate_package_md5sum \   if [[ -n ${MAGE_TARGETS} ]]
1283   --pcat "${PCATEGORIE}" \   then
1284   --pname "${PNAME}" \   for target in ${MAGE_TARGETS}
1285   --pver "${PVER}" \   do
1286   --pbuild "${PBUILD}" \   # build md5sum for existing packages
1287   --parch "${ARCH}" \   generate_package_md5sum \
1288   --target "${target}"   --pcat "${PCATEGORIE}" \
1289     --pname "${PNAME}" \
1290     --pver "${PVER}" \
1291     --pbuild "${PBUILD}" \
1292     --parch "${ARCH}" \
1293     --target "${target}"
1294     done
1295    
1296     # build several subpackages
1297     elif [[ -n ${SPLIT_PACKAGES} ]]
1298     then
1299     split_save_variables
1300     for subpackage in ${SPLIT_PACKAGE}
1301     do
1302     # get the right variables for the split
1303     export PNAME="${subpackage}"
1304     split_info_${subpackage}
1305     # build md5sum for existing packages
1306     generate_package_md5sum \
1307     --pcat "${PCATEGORIE}" \
1308     --pname "${PNAME}" \
1309     --pver "${PVER}" \
1310     --pbuild "${PBUILD}" \
1311     --parch "${ARCH}"
1312     # restore smage environment
1313     split_restore_variables
1314     done
1315     # unset all saved smage variables
1316     split_unset_variables
1317    
1318     else
1319     # build md5sum for existing packages
1320     generate_package_md5sum \
1321     --pcat "${PCATEGORIE}" \
1322     --pname "${PNAME}" \
1323     --pver "${PVER}" \
1324     --pbuild "${PBUILD}" \
1325     --parch "${ARCH}"
1326     fi
1327    
1328   exit 0   exit 0
1329  fi  fi
# Line 1141  fi Line 1388  fi
1388  source ${SMAGENAME} || die "source failed"  source ${SMAGENAME} || die "source failed"
1389  PKGNAME="${PNAME}-${PVER}-${ARCH}-${PBUILD}"  PKGNAME="${PNAME}-${PVER}-${ARCH}-${PBUILD}"
1390  MD5DIR="$(dirname ${SMAGENAME})/md5"  MD5DIR="$(dirname ${SMAGENAME})/md5"
1391    SMAGE_LOG_CMD="tee -a /var/log/smage/${PKGNAME}.log"
1392    
1393  xtitle "Compiling ${PKGNAME}"  xtitle "Compiling ${PKGNAME}"
1394  echo -e "${COLGREEN}Compiling ${PKGNAME}${COLDEFAULT}"  echo -e "${COLGREEN}Compiling ${PKGNAME}${COLDEFAULT}"
# Line 1219  fi Line 1467  fi
1467  [[ ! -d /var/log/smage ]] && install -d /var/log/smage  [[ ! -d /var/log/smage ]] && install -d /var/log/smage
1468  echo -e "### Build started on $(date) ###\n" > /var/log/smage/${PKGNAME}.log  echo -e "### Build started on $(date) ###\n" > /var/log/smage/${PKGNAME}.log
1469    
1470  ( src_prepare || die "src_prepare failed" ) | ${SMAGE_LOG_CMD}  src_prepare | ${SMAGE_LOG_CMD}
1471  step_by_step $_  die_pipestatus 0 "src_prepare failed"
 ( src_compile || die "src_compile failed" ) | ${SMAGE_LOG_CMD}  
 step_by_step $_  
 ( src_install || die "src_install failed" ) | ${SMAGE_LOG_CMD}  
1472  step_by_step $_  step_by_step $_
1473    
1474    src_compile | ${SMAGE_LOG_CMD}
1475    die_pipestatus 0 "src_compile failed"
1476    step_by_step $_
1477    
1478  # compressing doc, info & man files  # build several subpackages
1479  if [ -d ${BUILDDIR}/builded/usr/share/man ]  if [[ -n ${SPLIT_PACKAGES} ]]
1480  then  then
1481   echo -e "${COLBLUE}===${COLGREEN} compressing man-pages ...${COLDEFAULT}"   # save bindir & pname
1482   ${MLIBDIR}/compressdoc -g -9 ${BUILDDIR}/builded/usr/share/man   split_save_variables
1483     export SAVED_BINDIR="${BINDIR}"
1484     for subpackage in ${SPLIT_PACKAGES}
1485     do
1486     if typeset -f src_install_${subpackage} > /dev/null
1487     then
1488     # export subpackage bindir
1489     export BINDIR="${SAVED_BINDIR}_${subpackage}"
1490     # export PNAME, several internal function and include
1491     # rely on this variable
1492     export PNAME="${subpackage}"
1493    
1494     echo
1495     echo -en "${COLBLUE}*** ${COLDEFAULT}"
1496     echo -en "  Running ${COLGREEN}split src_install()${COLDEFAULT}"
1497     echo -en " for subpkg: ${COLBLUE}${PNAME}${COLDEFAULT}"
1498     echo -e " - basepkg: ${COLBLUE}${SPLIT_PACKAGE_BASE}${COLDEFAULT} ..."
1499    
1500     src_install_${subpackage} | ${SMAGE_LOG_CMD}
1501     die_pipestatus 0 "src_install_${subpackage} failed"
1502     step_by_step $_
1503     fi
1504     done
1505     # restore bindir & pname
1506     split_restore_variables
1507     # unset all saved smage variables
1508     split_unset_variables
1509    else
1510     src_install | ${SMAGE_LOG_CMD}
1511     die_pipestatus 0 "src_install failed"
1512     step_by_step $_
1513  fi  fi
1514    
1515  if [ -d ${BUILDDIR}/builded/usr/share/info ]  # compressing doc, info & man files
1516    if [[ -n ${SPLIT_PACKAGES} ]]
1517  then  then
1518   echo -e "${COLBLUE}===${COLGREEN} compressing info-pages ...${COLDEFAULT}"   for subpackage in ${SPLIT_PACKAGE}
1519   ${MLIBDIR}/compressdoc -g -9 ${BUILDDIR}/builded/usr/share/info   do
1520     mcompressdocs ${BINDIR}_${subpackage}
1521     done
1522    else
1523     mcompressdocs ${BINDIR}
1524  fi  fi
1525    
1526    
1527  # stripping all bins and libs  # stripping all bins and libs
1528  case ${NOSTRIP} in  case ${NOSTRIP} in
1529   true|TRUE|yes|y)   true|TRUE|yes|y)
1530   echo -e "NOSTRIP=true detected; Package will not be stripped ..."   echo -e "NOSTRIP=true detected; Package will not be stripped ..."
1531   ;;   ;;
1532   *)   *)
1533   echo -e "${COLBLUE}===${COLGREEN} stripping binaries ...${COLDEFAULT}"   if [[ -n ${SPLIT_PACKAGES} ]]
1534   mstripbins ${BINDIR}   then
1535   echo -e "${COLBLUE}===${COLGREEN} stripping libraries ...${COLDEFAULT}"   for subpackage in ${SPLIT_PACKAGE}
1536   mstriplibs ${BINDIR}   do
1537     echo -e "${COLBLUE}===${COLGREEN} stripping binaries ...${COLDEFAULT}"
1538     mstripbins ${BINDIR}_${subpackage}
1539     echo -e "${COLBLUE}===${COLGREEN} stripping libraries ...${COLDEFAULT}"
1540     mstriplibs ${BINDIR}_${subpackage}
1541     done
1542     else
1543     echo -e "${COLBLUE}===${COLGREEN} stripping binaries ...${COLDEFAULT}"
1544     mstripbins ${BINDIR}
1545     echo -e "${COLBLUE}===${COLGREEN} stripping libraries ...${COLDEFAULT}"
1546     mstriplibs ${BINDIR}
1547     fi
1548   ;;   ;;
1549  esac  esac
1550    
# Line 1260  case ${NOPKGBUILD} in Line 1555  case ${NOPKGBUILD} in
1555   ;;   ;;
1556   *)   *)
1557   # build several targets   # build several targets
1558   if [ -n "${MAGE_TARGETS}" ]   if [[ -n ${MAGE_TARGETS} ]]
1559   then   then
1560   for target in ${MAGE_TARGETS}   for target in ${MAGE_TARGETS}
1561   do   do
# Line 1286  case ${NOPKGBUILD} in Line 1581  case ${NOPKGBUILD} in
1581    
1582   echo -e "${COLGREEN}\nPackage ${PNAME}-${target}-${PVER}-${ARCH}-${PBUILD} successfully builded.\n${COLDEFAULT}"   echo -e "${COLGREEN}\nPackage ${PNAME}-${target}-${PVER}-${ARCH}-${PBUILD} successfully builded.\n${COLDEFAULT}"
1583   done   done
1584    
1585     # build several subpackages
1586     elif [[ -n ${SPLIT_PACKAGES} ]]
1587     then
1588     split_save_variables
1589     for subpackage in ${SPLIT_PACKAGES}
1590     do
1591     # get the right variables for the split
1592     export PNAME="${subpackage}"
1593     split_info_${PNAME}
1594    
1595     # jump to next one if NOPKGBUILD is set in split_info
1596     case ${NOPKGBUILD} in
1597     true|TRUE|yes|y) continue ;;
1598     esac
1599    
1600     # check if an special subpackage_pkgbuild exists
1601     if typeset -f ${PNAME}_pkgbuild > /dev/null
1602     then
1603     # run it
1604     ${PNAME}_pkgbuild
1605     fi
1606     # now create the target package
1607     ${MLIBDIR}/pkgbuild_dir.sh \
1608     "${PNAME}-${PVER}-${ARCH}-${PBUILD}" \
1609     "${BINDIR}_${PNAME}" || die "split_package: ${PNAME} package-build failed"
1610    
1611     # build pkg-md5-sum if requested
1612     generate_package_md5sum \
1613     --pcat "${PCATEGORIE}" \
1614     --pname "${PNAME}" \
1615     --pver "${PVER}" \
1616     --pbuild "${PBUILD}" \
1617     --parch "${ARCH}"
1618    
1619     echo -e "${COLGREEN}\nPackage ${PNAME}-${PVER}-${ARCH}-${PBUILD} successfully builded.\n${COLDEFAULT}"
1620    
1621     # restore smage environment
1622     split_restore_variables
1623     done
1624     # unset all saved smage variables
1625     split_unset_variables
1626    
1627   else   else
1628   ${MLIBDIR}/pkgbuild_dir.sh ${PKGNAME} ${BINDIR} || die "package-build failed"   ${MLIBDIR}/pkgbuild_dir.sh ${PKGNAME} ${BINDIR} || die "package-build failed"
1629    

Legend:
Removed from v.875  
changed lines
  Added in v.951