Magellan Linux

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

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

revision 441 by niro, Mon Mar 19 19:21:40 2007 UTC revision 875 by niro, Thu May 21 19:06:26 2009 UTC
# Line 4  Line 4 
4  # needs pkgbuild_dir (mage)  # needs pkgbuild_dir (mage)
5    
6  # SMAGE2  # SMAGE2
7  # $Header: /home/cvsd/magellan-cvs/magellan-src/mage/usr/lib/mage/smage2.sh,v 1.54 2007-03-19 19:21:40 niro Exp $  # $Header: /home/cvsd/magellan-cvs/magellan-src/mage/usr/lib/mage/smage2.sh,v 1.62 2007-11-28 10:47:50 niro Exp $
8    
9  #01.10.2004  #01.10.2004
10  # added ccache support  # added ccache support
# 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)"
23    SMAGE_LOG_CMD="tee -a /var/log/smage/${PKGNAME}.log"
24    
25    
26  ## only for tests -> normally in /etc/rc.d/init.d/functions  ## only for tests -> normally in /etc/rc.d/init.d/functions
27  COLRED="\033[1;6m\033[31m"  COLRED="\033[1;6m\033[31m"
# Line 244  download_sources() Line 246  download_sources()
246   fi   fi
247   fi   fi
248   done   done
249     elif [[ -n $(echo ${my_SRC_URI} | grep 'kde://') ]]
250     then
251     for mirror in ${KDE_MIRRORS}
252     do
253     my_SRC_URI_MIRROR="$(echo ${my_SRC_URI} | sed "s|kde:/|${mirror}|g")"
254    
255     if [[ ${FETCHING} = true ]]
256     then
257     echo -e "${COLBLUE}==>${COLGREEN} fetching ${my_SRC_URI_MIRROR}${COLDEFAULT}"
258     wget \
259     --passive-ftp \
260     --tries 3 \
261     --continue \
262     --progress bar \
263     --directory-prefix="${my_SOURCEDIR}" \
264     "${my_SRC_URI_MIRROR}"
265     if [[ $? = 0 ]]
266     then
267     break
268     else
269     continue
270     fi
271     fi
272     done
273     elif [[ -n $(echo ${my_SRC_URI} | grep 'gnome://') ]]
274     then
275     for mirror in ${GNOME_MIRRORS}
276     do
277     my_SRC_URI_MIRROR="$(echo ${my_SRC_URI} | sed "s|gnome:/|${mirror}|g")"
278    
279     if [[ ${FETCHING} = true ]]
280     then
281     echo -e "${COLBLUE}==>${COLGREEN} fetching ${my_SRC_URI_MIRROR}${COLDEFAULT}"
282     wget \
283     --passive-ftp \
284     --tries 3 \
285     --continue \
286     --progress bar \
287     --directory-prefix="${my_SOURCEDIR}" \
288     "${my_SRC_URI_MIRROR}"
289     if [[ $? = 0 ]]
290     then
291     break
292     else
293     continue
294     fi
295     fi
296     done
297   else   else
298   if [[ ${FETCHING} = true ]]   if [[ ${FETCHING} = true ]]
299   then   then
# Line 314  mconfigure() Line 364  mconfigure()
364   ./configure \   ./configure \
365   --prefix=/usr \   --prefix=/usr \
366   --host=${CHOST} \   --host=${CHOST} \
367     --build=${CHOST} \
368   --mandir=/usr/share/man \   --mandir=/usr/share/man \
369   --infodir=/usr/share/info \   --infodir=/usr/share/info \
370   --datadir=/usr/share \   --datadir=/usr/share \
# Line 357  munpack() Line 408  munpack()
408    
409   SRCFILE=$1   SRCFILE=$1
410    
411   if [ -z "$2" ]   if [[ -z $2 ]]
412   then   then
413   DEST=${BUILDDIR}   DEST=${BUILDDIR}
414   else   else
# Line 372  munpack() Line 423  munpack()
423   IFTAR="${IFTAR##*.}"   IFTAR="${IFTAR##*.}"
424   if [[ ${IFTAR} = tar ]]   if [[ ${IFTAR} = tar ]]
425   then   then
426   tar --no-same-owner -xvjf ${SOURCEDIR}/${PNAME}/${SRCFILE} -C ${DEST}   tar --no-same-owner -xvjf ${SOURCEDIR}/${PNAME}/${SRCFILE} -C ${DEST} || die ".tar.bz2 unpack failed."
427     else
428     pushd ${DEST} > /dev/null
429     bzcat ${SOURCEDIR}/${PNAME}/${SRCFILE} > ${DEST}/$(basename ${SRCFILE} .bz2) || die ".bz2 unpack failed."
430     popd > /dev/null
431   fi   fi
432   ;;   ;;
433   gz)   gz)
# Line 380  munpack() Line 435  munpack()
435   IFTAR="${IFTAR##*.}"   IFTAR="${IFTAR##*.}"
436   if [[ ${IFTAR} = tar ]]   if [[ ${IFTAR} = tar ]]
437   then   then
438   tar --no-same-owner -xvzf ${SOURCEDIR}/${PNAME}/${SRCFILE} -C ${DEST}   tar --no-same-owner -xvzf ${SOURCEDIR}/${PNAME}/${SRCFILE} -C ${DEST} || die ".tar.gz unpack failed."
439     else
440     pushd ${DEST} > /dev/null
441     zcat ${SOURCEDIR}/${PNAME}/${SRCFILE} > ${DEST}/$(basename ${SRCFILE} .gz) || die ".gz unpack failed."
442     popd > /dev/null
443   fi   fi
444   ;;   ;;
445   tbz2)   tbz2|mpks|mpk)
446   tar --no-same-owner -xvjf ${SOURCEDIR}/${PNAME}/${SRCFILE} -C ${DEST}   tar --no-same-owner -xvjf ${SOURCEDIR}/${PNAME}/${SRCFILE} -C ${DEST} || die ".tbz2 unpack failed."
447   ;;   ;;
448   tgz)   tgz)
449   tar --no-same-owner -xvzf ${SOURCEDIR}/${PNAME}/${SRCFILE} -C ${DEST}   tar --no-same-owner -xvzf ${SOURCEDIR}/${PNAME}/${SRCFILE} -C ${DEST} || die ".tgz unpack failed."
450     ;;
451     rar)
452     unrar x ${SOURCEDIR}/${PNAME}/${SRCFILE} ${DEST}  || die ".rar unpack failed."
453     ;;
454     zip|xpi)
455     unzip ${SOURCEDIR}/${PNAME}/${SRCFILE} -d ${DEST} || die ".zip unpack failed."
456     ;;
457     rpm)
458     pushd ${DEST} > /dev/null
459     rpm2targz ${SOURCEDIR}/${PNAME}/${SRCFILE} || die "rpm2targz: .rpm unpack failed."
460     tar --no-same-owner -xvzf ${SRCFILE/.rpm/.tar.gz} || die "tar: .rpm unpack failed."
461     if [[ -f ${DEST}/${SRCFILE/.rpm/.tar.gz} ]]
462     then
463     rm ${DEST}/${SRCFILE/.rpm/.tar.gz}
464     fi
465   ;;   ;;
466   *)   *)
467   die "munpack failed"   die "munpack failed"
# Line 399  mpatch() Line 473  mpatch()
473  {  {
474   local PATCHOPTS   local PATCHOPTS
475   local PATCHFILE   local PATCHFILE
476     local i
477    
478   PATCHOPTS=$1   PATCHOPTS=$1
479   PATCHFILE=$2   PATCHFILE=$2
480    
481     if [[ -z $2 ]]
482     then
483     PATCHFILE=$1
484    
485     ## patch level auto-detection, get patch level
486     for ((i=0; i < 10; i++))
487     do
488     patch --dry-run -Np${i} -i ${SOURCEDIR}/${PNAME}/${PATCHFILE} > /dev/null
489     if [[ $? = 0 ]]
490     then
491     PATCHOPTS="-Np${i}"
492     break
493     fi
494     done
495     fi
496    
497   echo -e "${COLBLUE}*** ${COLGREEN}Applying patch '${PATCHFILE}'${COLDEFAULT}"   echo -e "${COLBLUE}*** ${COLGREEN}Applying patch '${PATCHFILE}'${COLDEFAULT}"
498   patch "${PATCHOPTS}" -i ${SOURCEDIR}/${PNAME}/${PATCHFILE}   patch "${PATCHOPTS}" -i ${SOURCEDIR}/${PNAME}/${PATCHFILE}
499  }  }
500    
501    mlibtoolize()
502    {
503     local opts="$@"
504     [[ -z ${opts} ]] && opts="--copy --force"
505    
506     libtoolize ${opts} || die "running: mlibtoolize ${opts}"
507    }
508    
509  minstalldocs()  minstalldocs()
510  {  {
# Line 555  EOF Line 653  EOF
653  # special tags:  # special tags:
654  #   PKGTYPE               type of pkg  #   PKGTYPE               type of pkg
655  #   INHERITS              which functions get included  #   INHERITS              which functions get included
656  #   SPECIAL_FUNCTIONS     special functions wich should also be added  #   SPECIAL_FUNCTIONS     special functions which should also be added
657  #                         warning: they get killed before the build starts !  #                         warning: they get killed before the build starts !
658  #  #
659  #   MAGE_TREE_DEST        target destination of the generated tree  #   MAGE_TREE_DEST        target destination of the generated tree
# Line 591  build_mage_script() Line 689  build_mage_script()
689   > ${dest}   > ${dest}
690    
691   # header   # header
692   echo '# $Header: /home/cvsd/magellan-cvs/magellan-src/mage/usr/lib/mage/smage2.sh,v 1.54 2007-03-19 19:21:40 niro Exp $' >> ${dest}   echo '# $Header: /home/cvsd/magellan-cvs/magellan-src/mage/usr/lib/mage/smage2.sh,v 1.62 2007-11-28 10:47:50 niro Exp $' >> ${dest}
693   echo  >> ${dest}   echo  >> ${dest}
694    
695   # pgkname and state   # pgkname and state
# Line 699  regen_mage_tree() Line 797  regen_mage_tree()
797   # now unset all uneeded vars to be safe   # now unset all uneeded vars to be safe
798   # unset PKGNAME <-- don't do that; smage needs this var   # unset PKGNAME <-- don't do that; smage needs this var
799   # unset to be safe (quotes needed !)   # unset to be safe (quotes needed !)
800   for i in ${SPECIAL_FUNCTIONS}  # for i in ${SPECIAL_FUNCTIONS}
801   do  # do
802   unset "${i}"  # unset "${i}"
803   done  # done
804   unset SPECIAL_FUNCTIONS   unset SPECIAL_FUNCTIONS
805   for i in ${SPECIAL_VARS}  # for i in ${SPECIAL_VARS}
806   do  # do
807   unset "${i}"  # unset "${i}"
808   done  # done
809   unset SPECIAL_VARS   unset SPECIAL_VARS
810   unset STATE   unset STATE
811   unset DESCRIPTION   unset DESCRIPTION
# Line 841  source_pkg_build() Line 939  source_pkg_build()
939   echo -e "${COLGREEN}Source package ${COLBLUE}${PNAME}-${PVER}-${PBUILD}.${SRCPKGSUFFIX} ${COLGREEN}successfully builded.${COLDEFAULT}"   echo -e "${COLGREEN}Source package ${COLBLUE}${PNAME}-${PVER}-${PBUILD}.${SRCPKGSUFFIX} ${COLGREEN}successfully builded.${COLDEFAULT}"
940  }  }
941    
942    step_by_step()
943    {
944     if [[ ${STEP_BY_STEP} = true ]]
945     then
946     echo "${COLRED}Step-by-step enabled! Paused after $1.${COLDEFAULT}"
947     echo "Press [enter] to continue"
948     read
949     fi
950    }
951    
952    
953  # print out our version  # print out our version
954  showversion  showversion
# Line 1107  then Line 1215  then
1215   mage rmstamp   mage rmstamp
1216  fi  fi
1217    
1218  src_prepare || die "src_prepare failed"  # setup build loggins
1219  src_compile || die "src_compile failed"  [[ ! -d /var/log/smage ]] && install -d /var/log/smage
1220  src_install || die "src_install failed"  echo -e "### Build started on $(date) ###\n" > /var/log/smage/${PKGNAME}.log
1221    
1222    ( src_prepare || die "src_prepare failed" ) | ${SMAGE_LOG_CMD}
1223    step_by_step $_
1224    ( src_compile || die "src_compile failed" ) | ${SMAGE_LOG_CMD}
1225    step_by_step $_
1226    ( src_install || die "src_install failed" ) | ${SMAGE_LOG_CMD}
1227    step_by_step $_
1228    
1229    
1230  # compressing doc, info & man files  # compressing doc, info & man files
# Line 1190  case ${NOPKGBUILD} in Line 1305  case ${NOPKGBUILD} in
1305   ;;   ;;
1306  esac  esac
1307    
1308    if [[ ${SMAGE_BUILD_LOGGING} != false ]]
1309    then
1310     bzip2 -9f /var/log/smage/${PKGNAME}.log
1311    else
1312     [[ -f /var/log/smage/${PKGNAME}.log ]] && rm /var/log/smage/${PKGNAME}.log
1313    fi
1314    
1315  # for sure  # for sure
1316  unset NOPKGBUILD  unset NOPKGBUILD
1317  unset NOSTRIP  unset NOSTRIP

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