Magellan Linux

Diff of /branches/mage-next/src/smage2.sh

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

trunk/mage/usr/lib/mage/smage2.sh revision 2042 by niro, Fri Feb 1 09:50:07 2013 UTC branches/mage-next/usr/lib/mage/smage2.sh revision 2525 by niro, Wed Jan 29 10:42:21 2014 UTC
# Line 18  source ${MAGERC} Line 18  source ${MAGERC}
18  source ${MLIBDIR}/mage4.functions.sh  source ${MLIBDIR}/mage4.functions.sh
19  source ${MLIBDIR}/smage2.functions.sh  source ${MLIBDIR}/smage2.functions.sh
20    
21    # export default path
22    export PATH="${PATH}:${MLIBDIR}"
23    
24  ## setup ##  ## setup ##
25  SMAGENAME="$1"  SMAGENAME="$1"
26  SMAGEVERSION="$(< ${MLIBDIR}/version)"  SMAGEVERSION="$(< ${MLIBDIR}/version)"
# Line 154  then Line 157  then
157    
158   regen_mage_tree   regen_mage_tree
159    
  # build several targets  
  if [[ -n ${MAGE_TARGETS} ]]  
  then  
  for target in ${MAGE_TARGETS}  
  do  
  # build md5sum for existing packages  
  generate_package_md5sum \  
  --pcat "${PCAT}" \  
  --pname "${PNAME}" \  
  --pver "${PVER}" \  
  --pbuild "${PBUILD}" \  
  --parch "${ARCH}" \  
  --target "${target}"  
  done  
   
160   # build several subpackages   # build several subpackages
161   elif [[ -n ${SPLIT_PACKAGES} ]]   if [[ -n ${SPLIT_PACKAGES} ]]
162   then   then
163   split_save_variables   split_save_variables
164   for subpackage in ${SPLIT_PACKAGES}   for subpackage in ${SPLIT_PACKAGES}
# Line 318  export MAKEOPTS="${MAKEOPTS}" || die "MA Line 306  export MAKEOPTS="${MAKEOPTS}" || die "MA
306  # setup for distcc goes *before* ccache, so ccache comes before distcc in path  # setup for distcc goes *before* ccache, so ccache comes before distcc in path
307  mqueryfeature "distcc" && setup_distcc_environment  mqueryfeature "distcc" && setup_distcc_environment
308    
309    # setup icecc
310    # setup for icecc goes *before* ccache, so ccache comes before icecc in path
311    mqueryfeature "icecc" && setup_icecc_environment
312    
313  # setup ccache  # setup ccache
314  mqueryfeature "ccache" && setup_ccache_environment  mqueryfeature "ccache" && setup_ccache_environment
315    
# Line 471  else Line 463  else
463   do   do
464   # honor split_info   # honor split_info
465   split_info_${subpackage}   split_info_${subpackage}
466     if [[ ${PKGTYPE} = virtual ]]
467     then
468     # automatically set !pkgbuild here too
469     msetfeature "!pkgbuild"
470     fi
471    
472   if mqueryfeature "!compressdoc"   if mqueryfeature "!compressdoc"
473   then   then
# Line 507  then Line 504  then
504   do   do
505   # honor split_info   # honor split_info
506   split_info_${subpackage}   split_info_${subpackage}
507     if [[ ${PKGTYPE} = virtual ]]
508     then
509     # automatically set !pkgbuild here too
510     msetfeature "!pkgbuild"
511     fi
512    
513   if mqueryfeature "!libtool"   if mqueryfeature "!libtool"
514   then   then
# Line 547  then Line 549  then
549   do   do
550   # honor split_info   # honor split_info
551   split_info_${subpackage}   split_info_${subpackage}
552     if [[ ${PKGTYPE} = virtual ]]
553     then
554     # automatically set !pkgbuild here too
555     msetfeature "!pkgbuild"
556     fi
557    
558   if mqueryfeature "purge"   if mqueryfeature "purge"
559   then   then
# Line 589  else Line 596  else
596   do   do
597   # honor split_info   # honor split_info
598   split_info_${subpackage}   split_info_${subpackage}
599     if [[ ${PKGTYPE} = virtual ]]
600     then
601     # automatically set !pkgbuild here too
602     msetfeature "!pkgbuild"
603     fi
604    
605   if mqueryfeature "!strip"   if mqueryfeature "!strip"
606   then   then
# Line 626  else Line 638  else
638   fi   fi
639  fi  fi
640    
641  if mqueryfeature "!pkgbuild"  if mqueryfeature "qalint"
642  then  then
643   echo -e "!pkgbuild detected; Package will not be build ..."   if mqueryfeature "!pkgbuild"
644  else   then
645   # build several targets   echo "!pkgbuild detected; skipping QA lint checks ..."
646   if [[ -n ${MAGE_TARGETS} ]]   else
647     if [[ -n ${SPLIT_PACKAGES} ]]
648   then   then
649   for target in ${MAGE_TARGETS}   # save smage environment
650     split_save_variables
651     for subpackage in ${SPLIT_PACKAGES}
652   do   do
653   # check if a special target_pkgbuild exists   # honor split_info
654   if typeset -f ${target}_pkgbuild > /dev/null   split_info_${subpackage}
655     if [[ ${PKGTYPE} = virtual ]]
656   then   then
657   # run it   # automatically set !pkgbuild here too
658   run_resume post-${target}_pkgbuild || ${target}_pkgbuild   msetfeature "!pkgbuild"
659   resume_stamp post-${target}_pkgbuild   fi
660    
661     if mqueryfeature "qalint"
662     then
663     if mqueryfeature "!pkgbuild"
664     then
665     echo "!pkgbuild detected; skipping QA lint checks for '${subpackage}' ..."
666     else
667     echo -e "${COLBLUE}===${COLGREEN} running QA lint checks for '${subpackage}' ...${COLDEFAULT}"
668     mqalint ${BINDIR}_${subpackage}
669     fi
670   fi   fi
  # now create the target package  
  run_resume post-pkg_builddir_${target} || ${MLIBDIR}/pkgbuild_dir.sh \  
  "${PNAME}-${target}-${PVER}-${ARCH}$(print_distrotag)-${PBUILD}" \  
  ${BINDIR} || die "target: ${target} package-build failed"  
  resume_stamp post-pkg_builddir_${target}  
   
  # build pkg-md5-sum if requested  
  run_resume post-md5sum_${target} || generate_package_md5sum \  
  --pcat "${PCAT}" \  
  --pname "${PNAME}" \  
  --pver "${PVER}" \  
  --pbuild "${PBUILD}" \  
  --parch "${ARCH}" \  
  --target "${target}"  
  resume_stamp post-md5sum_${target}  
671    
672   echo -e "${COLGREEN}\nPackage ${PNAME}-${target}-${PVER}-${ARCH}$(print_distrotag)-${PBUILD} successfully builded.\n${COLDEFAULT}"   # restore smage environment
673     split_restore_variables
674   done   done
675     # unset saved variables
676     split_unset_variables
677     else
678     echo -e "${COLBLUE}===${COLGREEN} running QA lint checks ...${COLDEFAULT}"
679     mqalint ${BINDIR}
680     fi
681     fi
682    fi
683    
684    if mqueryfeature "!pkgbuild"
685    then
686     echo -e "!pkgbuild detected; Package will not be build ..."
687    else
688   # build several subpackages   # build several subpackages
689   elif [[ -n ${SPLIT_PACKAGES} ]]   if [[ -n ${SPLIT_PACKAGES} ]]
690   then   then
691   split_save_variables   split_save_variables
692   for subpackage in ${SPLIT_PACKAGES}   for subpackage in ${SPLIT_PACKAGES}
# Line 676  else Line 700  else
700   PCAT="${PCATEGORIE}"   PCAT="${PCATEGORIE}"
701   unset PCATEGORIE   unset PCATEGORIE
702   fi   fi
703     if [[ ${PKGTYPE} = virtual ]]
704     then
705     # automatically set !pkgbuild here too
706     msetfeature "!pkgbuild"
707     fi
708    
709   # jump to next one if !pkgbuild is set in split_info   # jump to next one if !pkgbuild is set in split_info
710   if mqueryfeature "!pkgbuild"   if mqueryfeature "!pkgbuild"

Legend:
Removed from v.2042  
changed lines
  Added in v.2525