Magellan Linux

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

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

revision 63 by niro, Wed Feb 16 01:00:39 2005 UTC revision 202 by niro, Sun Aug 21 23:52:50 2005 UTC
# Line 4  Line 4 
4  # needs pkgbuild_dir (mage)  # needs pkgbuild_dir (mage)
5    
6  # SMAGE2  # SMAGE2
7  # version: 0.3.6-r14  # $Header: /home/cvsd/magellan-cvs/magellan-src/mage/usr/lib/mage/smage2.sh,v 1.33 2005-08-21 23:52:47 niro Exp $
8    
9  #01.10.2004  #01.10.2004
10  # added ccache support  # added ccache support
11  # added distcc support  # added distcc support
12    
13  ## setup ##  ## setup ##
 SMAGEVERSION=0.3.6-r14  
14  PKGSUFFIX="mpk"  PKGSUFFIX="mpk"
15  SMAGENAME="$1"  SMAGENAME="$1"
16  SMAGESUFFIX="smage2"  SMAGESUFFIX="smage2"
# Line 19  SMAGESUFFIX="smage2" Line 18  SMAGESUFFIX="smage2"
18  #SMAGESCRIPTSDIR="/bootstrap/smage2-install-scripts"  #SMAGESCRIPTSDIR="/bootstrap/smage2-install-scripts"
19  #SMAGE2RSYNC="rsync://192.168.0.2/smage2-scripts"  #SMAGE2RSYNC="rsync://192.168.0.2/smage2-scripts"
20  MLIBDIR=/usr/lib/mage  MLIBDIR=/usr/lib/mage
21    SMAGEVERSION="$( < ${MLIBDIR}/version)"
22    
23    # export default C locale
24    export LC_ALL=C
25    
26  source /etc/mage.rc  source /etc/mage.rc
27    
# Line 103  download_sources() { Line 106  download_sources() {
106   [ -z "${SRC_URI}" ] && echo -e "\nNothing declared to download.\n" && return 0   [ -z "${SRC_URI}" ] && echo -e "\nNothing declared to download.\n" && return 0
107    
108   local EOA=${#SRC_URI[*]}   local EOA=${#SRC_URI[*]}
109   local MY_SRC_URI   local my_SRC_URI
110     local my_SRC_URI_DEST
111     local my_SRC_URI_MIRROR
112     local my_SOURCEDIR
113   local DB_MD5_SUM_FILE="${MD5DIR}/$(basename ${SMAGENAME} .${SMAGESUFFIX}).md5"   local DB_MD5_SUM_FILE="${MD5DIR}/$(basename ${SMAGENAME} .${SMAGESUFFIX}).md5"
114   local FETCHING   local FETCHING
115   local i mirror   local i mirror
# Line 113  download_sources() { Line 119  download_sources() {
119   [ ! -d ${SOURCEDIR}/${PNAME} ] && install -d ${SOURCEDIR}/${PNAME}   [ ! -d ${SOURCEDIR}/${PNAME} ] && install -d ${SOURCEDIR}/${PNAME}
120    
121   # check if FETCHING is needed   # check if FETCHING is needed
122   ( cd ${SOURCEDIR}/${PNAME}; md5sum --check ${DB_MD5_SUM_FILE} > /dev/null )   ( cd ${SOURCEDIR}/${PNAME}; md5sum --check ${DB_MD5_SUM_FILE} &> /dev/null )
123   if [[ $? == 0 ]]   if [[ $? == 0 ]]
124   then   then
125   # md5's ok, not fetching needed   # md5's ok, not fetching needed
# Line 124  download_sources() { Line 130  download_sources() {
130    
131   for ((i=0; i < EOA; i++))   for ((i=0; i < EOA; i++))
132   do   do
133   # get MD5 sum from database   # url to file
134     my_SRC_URI="$(echo ${SRC_URI[${i}]} | cut -d' ' -f1)"
135    
136     # subdir in sources dir; the my_SRCI_URI file goes to there
137     my_SRC_URI_DEST="$(echo ${SRC_URI[${i}]} | cut -d' ' -f2)"
138    
139     # if my_src_uri_dest is not equal my_src_uri; than an other dir is used
140     if [[ ${my_SRC_URI_DEST} != ${my_SRC_URI} ]]
141     then
142     my_SOURCEDIR="${SOURCEDIR}/${PNAME}/${my_SRC_URI_DEST}"
143     else
144     my_SOURCEDIR="${SOURCEDIR}/${PNAME}"
145     fi
146    
   
147   # if an mirrored file than replace first the mirror uri   # if an mirrored file than replace first the mirror uri
148   if [ -n "$(echo ${SRC_URI[${i}]} | grep 'mirror://')" ]   if [ -n "$(echo ${my_SRC_URI} | grep 'mirror://')" ]
149   then   then
150   for mirror in ${MIRRORS}   for mirror in ${MIRRORS}
151   do   do
152   MY_SRC_URI="$(echo ${SRC_URI[${i}]} | sed "s|mirror:/|${mirror}/sources|g")"   my_SRC_URI_MIRROR="$(echo ${my_SRC_URI} | sed "s|mirror:/|${mirror}/sources|g")"
153    
154   #echo "DEBUG: ${MY_SRC_URI}"   #echo "DEBUG: ${MY_SRC_URI}"
155   if [[ ${FETCHING} == true ]]   if [[ ${FETCHING} == true ]]
156   then   then
157   echo "==> fetching ${MY_SRC_URI}"   echo "==> fetching ${my_SRC_URI_MIRROR}"
158   wget \   wget \
159   --passive-ftp \   --passive-ftp \
160   --tries 3 \   --tries 3 \
161   --continue \   --continue \
162   --progress bar \   --progress bar \
163   --directory-prefix="${SOURCEDIR}/${PNAME}" \   --directory-prefix="${my_SOURCEDIR}" \
164   "${MY_SRC_URI}"   "${my_SRC_URI_MIRROR}"
165   if [ "$?" == "0" ]   if [ "$?" == "0" ]
166   then   then
167   break   break
# Line 157  download_sources() { Line 174  download_sources() {
174   #echo "DEBUG: ${SRC_URI[${i}]}"   #echo "DEBUG: ${SRC_URI[${i}]}"
175   if [[ ${FETCHING} == true ]]   if [[ ${FETCHING} == true ]]
176   then   then
177   echo "==> fetching ${SRC_URI[${i}]}"   echo "==> fetching ${my_SRC_URI}"
178   wget \   wget \
179   --passive-ftp \   --passive-ftp \
180   --tries 3 \   --tries 3 \
181   --continue \   --continue \
182   --progress bar \   --progress bar \
183   --directory-prefix="${SOURCEDIR}/${PNAME}" \   --directory-prefix="${my_SOURCEDIR}" \
184   "${MY_SRC_URI}"   "${my_SRC_URI}"
185   if [ "$?" == "0" ]  # only needed to run through a list of mirrors
186   then  # if [ "$?" == "0" ]
187   break  # then
188   else  # break
189   continue  # else
190   fi  # continue
191    # fi
192   fi   fi
193   fi   fi
194    
195     # unset them to be shure
196     unset my_SRC_URI
197     unset my_SRC_URI_DEST
198     unset my_SRC_URI_MIRROR
199     unset my_SOURCEDIR
200   done   done
201    
202   # recheck md5 sums   # recheck md5 sums
# Line 207  src_install() { Line 230  src_install() {
230   return 0   return 0
231  }  }
232    
   
 build_mage_script() {  
  return 0  
 }  
   
233  mconfigure() {  mconfigure() {
234   if [ -x ./configure ]   if [ -x ./configure ]
235   then   then
# Line 320  minstalldocs() { Line 338  minstalldocs() {
338   done   done
339  }  }
340    
341    mstriplibs() {
342     local stripdir="$@"
343    
344     [ -z "${stripdir}" ] && stripdir=${BINDIR}
345     find ${stripdir} | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
346    }
347    
348    mstripbins() {
349     local stripdir="$@"
350    
351     [ -z "${stripdir}" ] && stripdir=${BINDIR}
352     find ${stripdir} | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
353    }
354    
355    sminclude() {
356     local i
357    
358     if [[ -n "$@" ]]
359     then
360     for i in $@
361     do
362     echo "--- Including ${SMAGESCRIPTSDIR}/include/${i}.sminc"
363     source ${SMAGESCRIPTSDIR}/include/${i}.sminc
364     done
365     echo
366     fi
367    }
368    
369  setup_distcc_environment(){  setup_distcc_environment(){
370   if [ -x /usr/bin/distcc ]   if [ -x /usr/bin/distcc ]
371   then   then
# Line 360  setup_ccache_environment(){ Line 406  setup_ccache_environment(){
406   fi   fi
407  }  }
408    
409    
410    # fixes given dependencies to match a MAGE_TARGET
411    # fix_mage_deps -target s/depend # <-- note -target !
412    fix_mage_deps() {
413     local target="$1"
414     local depend="$2"
415     local NDEPEND
416     local sym dep cat pver pname
417    
418     # deps and provides are special
419     # they must be fixed to match the target
420    
421     # run this only if target and depend is not empty
422     if [ -n "${target}" ] && [ -n "${depend}" ]
423     then
424     # fix DEPEND
425     while read sym dep
426     do
427     cat="$(dirname ${dep})"
428     # change if not virtual
429     if [[ ${cat} = virtual ]]
430     then
431     pname="$(basename ${dep})"
432     else
433     # fix pver to target-pver
434     # to get pname-target-pver
435    
436     # doing it backwards !
437     pver="${dep##*-}"
438     # full pver
439     pname="$(basename ${dep/-${pver}/})${target}-${pver}"
440     fi
441    
442     # do not add empty lines
443     if [ -z "${NDEPEND}" ]
444     then
445     NDEPEND="${sym} ${cat}/${pname}"
446     else
447     NDEPEND="${NDEPEND}
448     ${sym} ${cat}/${pname}"
449     fi
450    
451     unset cat pname pver
452     done << EOF
453    ${depend}
454    EOF
455     # set NDEPEND to DEPEND
456     depend="${NDEPEND}"
457     fi
458    
459     echo "${depend}"
460    }
461    
462    # build_mage_script(): helper functions for regen_mage_tree()
463    # generates an mage file with given information in smage file
464    # needs at least:
465    #   PNAME                 name of pkg
466    #   PVER                  version
467    #   PBUILD                revision
468    #   PCATEGORIE            categorie of the pkg
469    #   STATE                 state of pkg stable|unstable|old
470    #   DESCRIPTION           va short description (opt)
471    #   HOMEPAGE              homepage (opt)
472    #   DEPEND                runtime dependencies (opt)
473    #   SDEPEND               add. needed deps to build the pkg (opt)
474    #   PROVIDE               provides a virtual (opt)
475    #
476    # special tags:
477    #   PKGTYPE               type of pkg
478    #   INHERITS              which functions get included
479    #   SPECIAL_FUNCTIONS     special functions wich should also be added
480    #                         warning: they get killed before the build starts !
481    #
482    #   MAGE_TREE_DEST        target destination of the generated tree
483    #   REGEN_MAGE_TREE       set to 'true' to enable this
484    #
485    # gets called with build_mage_script target
486    build_mage_script()
487    {
488     local magefile
489     local dest
490     local target
491     local sym
492     local depname
493    
494     # if MAGE_TREE_DEST not set use BUILDDIR
495     : ${MAGE_TREE_DEST=${BUILDDIR}/mage-tree}
496    
497     # determinate which suffix this mage file should get, if any
498     [ -n "$1" ] && target="-$1"
499    
500     # name of magefile
501     magefile="${PNAME}${target}-${PVER}-${PBUILD}.mage"
502    
503     # destination to magefile
504     dest="${MAGE_TREE_DEST}/${PCATEGORIE}/${PNAME}${target}/${magefile}"
505    
506     # show what we are doing
507     echo "Generating Mage file:"
508     echo "  ${dest}"
509    
510     install -d "$(dirname ${dest})"
511     # now build the mage file
512     > ${dest}
513    
514     # header
515     echo '# $Header: /home/cvsd/magellan-cvs/magellan-src/mage/usr/lib/mage/smage2.sh,v 1.33 2005-08-21 23:52:47 niro Exp $' >> ${dest}
516     echo  >> ${dest}
517    
518     # pgkname and state
519     echo "PKGNAME=\"${PNAME}${target}-${PVER}-\${ARCH}-${PBUILD}\"" >> ${dest}
520     echo "STATE=\"${STATE}\"" >> ${dest}
521     echo >> ${dest}
522    
523     # description and homepage
524     echo "DESCRIPTION=\"${DESCRIPTION}\"" >> ${dest}
525     echo "HOMEPAGE=\"${HOMEPAGE}\"" >> ${dest}
526     echo >> ${dest}
527    
528     # special tags and vars
529     echo "PKGTYPE=\"${PKGTYPE}\""  >> ${dest}
530     # add special vars
531     if [ -n "${SPECIAL_VARS}" ]
532     then
533     local i
534     for i in ${SPECIAL_VARS}
535     do
536     # being tricky here :)
537     echo "${i}=\"$(eval echo \$${i})\"" >> ${dest}
538     done
539     echo  >> ${dest}
540     fi
541     # add at least all includes
542     if [ -n "${INHERITS}" ]
543     then
544     echo -n "minclude"  >> ${dest}
545     local i
546     for i in ${INHERITS}
547     do
548     echo -n " ${i}"  >> ${dest}
549     done
550     echo  >> ${dest}
551     fi
552     echo >> ${dest}
553    
554     # deps and provides
555     echo "DEPEND=\"$(fix_mage_deps "${target}" "${DEPEND}")\"" >> ${dest}
556     echo >> ${dest}
557     echo "SDEPEND=\"$(fix_mage_deps "${target}" "${SDEPEND}")\"" >> ${dest}
558     echo >> ${dest}
559     echo "PROVIDE=\"${PROVIDE}\"" >> ${dest}
560     echo >> ${dest}
561    
562     # add special functions
563     if [ -n "${SPECIAL_FUNCTIONS}" ]
564     then
565     local i
566     for i in ${SPECIAL_FUNCTIONS}
567     do
568     # add to mage (quotes needed !)
569     typeset -f "${i}" >> ${dest}
570     # unset to be safe (quotes needed !)
571     #unset "${i}" <-- later to get every target built
572     done
573     echo  >> ${dest}
574     fi
575    
576     # pre|post-install|removes
577     typeset -f preinstall >> ${dest}
578     echo  >> ${dest}
579     typeset -f postinstall >> ${dest}
580     echo  >> ${dest}
581     typeset -f preremove >> ${dest}
582     echo  >> ${dest}
583     typeset -f postremove >> ${dest}
584     echo  >> ${dest}
585    }
586    
587    regen_mage_tree()
588    {
589     local i
590    
591     # build them only if requested
592     if [[ ${REGEN_MAGE_TREE} = true ]]
593     then
594     # run it without targets
595     if [ -z "${MAGE_TARGETS}" ]
596     then
597     echo
598     build_mage_script
599     echo
600     else
601    
602     # build for each target an mage file
603     # run it with several targets
604     for i in ${MAGE_TARGETS}
605     do
606     echo
607     build_mage_script "${i}"
608     echo
609     done
610     fi
611     fi
612    
613     # now unset all uneeded vars to be safe
614     # unset PKGNAME <-- don't do that; smage needs this var
615     # unset to be safe (quotes needed !)
616     for i in ${SPECIAL_FUNCTIONS}
617     do
618     unset "${i}"
619     done
620     unset SPECIAL_FUNCTIONS
621     for i in ${SPECIAL_VARS}
622     do
623     unset "${i}"
624     done
625     unset SPECIAL_VARS
626     unset STATE
627     unset DESCRIPTION
628     unset HOMEPAGE
629     unset PKGTYPE
630     unset INHERITS
631     unset DEPEND
632     unset SDEPEND
633     unset PROVIDE
634     unset preinstall
635     unset postinstall
636     unset preremove
637     unset postremove
638    }
639    
640  # print out our version  # print out our version
641  showversion  showversion
642  echo  echo
# Line 371  then Line 648  then
648   exit 1   exit 1
649  fi  fi
650    
651  #updating smage2-scripts  # updating smage2-scripts
652  if [ "$1" == "update" ]  if [ "$1" == "update" ]
653  then  then
654   if [ ! -d ${SOURCEDIR} ]   if [ ! -d ${SOURCEDIR} ]
# Line 382  then Line 659  then
659   exit 0   exit 0
660  fi  fi
661    
662  #creates md5sums for smages to given dir  # creates md5sums for smages to given dir
663  if [ "$1" == "calcmd5" ]  if [ "$1" == "calcmd5" ]
664  then  then
665   if [ $# -ge 3 ]   if [ $# -ge 3 ]
666   then   then
  # overridable sourcedir  
  CALC_SOURCEDIR="${CALC_SOURCEDIR:="${SOURCEDIR}/${PNAME}"}"  
   
667   SMAGENAME="$2"   SMAGENAME="$2"
668   MD5DIR="$3"   MD5DIR="$3"
669   source ${SMAGENAME} || die "download source failed"   source ${SMAGENAME} || die "download source failed"
670    
671     # overridable sourcedir; must be declared after source of the smage2
672     CALC_SOURCEDIR="${CALC_SOURCEDIR:="${SOURCEDIR}/${PNAME}"}"
673    
674   [ -z "${SRC_URI}" ] && die "Nothing declared to calculate."   [ -z "${SRC_URI}" ] && die "Nothing declared to calculate."
675    
676   # end of array   # end of array
# Line 407  then Line 684  then
684    
685   for ((i=0; i < EOA; i++))   for ((i=0; i < EOA; i++))
686   do   do
687   MY_SRC_FILE="$(basename ${SRC_URI[${i}]})"   # url to file
688     my_SRC_URI="$(echo ${SRC_URI[${i}]} | cut -d' ' -f1)"
689    
690     # subdir in sources dir; the my_SRCI_URI file goes to there
691     my_SRC_URI_DEST="$(echo ${SRC_URI[${i}]} | cut -d' ' -f2)"
692    
693     # if my_src_uri_dest is not equal my_src_uri; than an other dir is used
694     if [[ ${my_SRC_URI_DEST} != ${my_SRC_URI} ]]
695     then
696     MY_SRC_FILE="${my_SRC_URI_DEST}/$(basename ${SRC_URI[${i}]})"
697     else
698     MY_SRC_FILE="$(basename ${SRC_URI[${i}]})"
699     fi
700    
701   if [ -e "${CALC_SOURCEDIR}/${MY_SRC_FILE}" ]   if [ -e "${CALC_SOURCEDIR}/${MY_SRC_FILE}" ]
702   then   then
703   echo "calculating $(basename ${MY_SRC_FILE}) ..."   echo "calculating $(basename ${MY_SRC_FILE}) ..."
# Line 415  then Line 705  then
705   else   else
706   echo "WARNING: File '$(basename ${MY_SRC_FILE}) not found in ${CALC_SOURCEDIR}."   echo "WARNING: File '$(basename ${MY_SRC_FILE}) not found in ${CALC_SOURCEDIR}."
707   fi   fi
708    
709     # unset them to be shure
710     unset my_SRC_URI
711     unset my_SRC_URI_DEST
712     unset my_SRC_URI_MIRROR
713     unset my_SOURCEDIR
714   done   done
715    
716   echo   echo
# Line 433  then Line 729  then
729   exit 0   exit 0
730  fi  fi
731    
732  #download sources  # download sources
733  if [ "$1" == "download" -a -n "$2" ]  if [ "$1" == "download" -a -n "$2" ]
734  then  then
  showversion  
735   if [ ! -d ${SMAGESCRIPTSDIR} ]   if [ ! -d ${SMAGESCRIPTSDIR} ]
736   then   then
737   install -d ${SMAGESCRIPTSDIR}   install -d ${SMAGESCRIPTSDIR}
# Line 451  then Line 746  then
746   exit 0   exit 0
747  fi  fi
748    
749    # regen-mage-tree
750    if [ "$1" == "only-regen-tree" -a -n "$2" ]
751    then
752     # set correct SMAGENAME
753     SMAGENAME="$2"
754     MD5DIR="$(dirname ${SMAGENAME})/md5"
755     source ${SMAGENAME} || die "regen: smage2 not found"
756    
757     regen_mage_tree
758     exit 0
759    fi
760    
761  if [ ! -e ${MLIBDIR}/pkgbuild_dir.sh ]  if [ ! -e ${MLIBDIR}/pkgbuild_dir.sh ]
762  then  then
763   die "Error: ${MLIBDIR}/pkgbuild_dir.sh not found. Aborting."   die "Error: ${MLIBDIR}/pkgbuild_dir.sh not found. Aborting."
# Line 505  MD5DIR="$(dirname ${SMAGENAME})/md5" Line 812  MD5DIR="$(dirname ${SMAGENAME})/md5"
812  xtitle "Compiling ${PKGNAME}"  xtitle "Compiling ${PKGNAME}"
813  echo "Compiling ${PKGNAME}"  echo "Compiling ${PKGNAME}"
814    
815  #download sources  # auto regen mage tree if requested
816    regen_mage_tree
817    
818    # download sources
819  download_sources  download_sources
820    
821  #fixes some issues with these functions  # fixes some issues with these functions
822  export -f src_prepare || die "src_prepare export failed"  export -f src_prepare || die "src_prepare export failed"
823  export -f src_compile || die "src_compile export failed"  export -f src_compile || die "src_compile export failed"
824  export -f src_install || die "src_install export failed"  export -f src_install || die "src_install export failed"
825    
826  #fixes some compile issues  # fixes some compile issues
827  export CHOST="${CHOST}" || die "CHOST export failed"  export CHOST="${CHOST}" || die "CHOST export failed"
828  export CFLAGS="${CFLAGS}" || die "CFLAGS export failed"  export CFLAGS="${CFLAGS}" || die "CFLAGS export failed"
829  export CXXFLAGS="${CFLAGS}" || die "CXXFLAGS export failed"  export CXXFLAGS="${CFLAGS}" || die "CXXFLAGS export failed"
# Line 521  export BINDIR="${BINDIR}" || die "BINDIR Line 831  export BINDIR="${BINDIR}" || die "BINDIR
831  export MAKEOPTS="${MAKEOPTS}" || die "MAKEOPTS export failed"  export MAKEOPTS="${MAKEOPTS}" || die "MAKEOPTS export failed"
832    
833    
834  #setup distcc  # setup distcc
835  #distcc mus be setup *before* ccache, as ccache need to be before distcc in path  # distcc mus be setup *before* ccache, as ccache need to be before distcc in path
836  if [ "${SMAGE_USE_DISTCC}" == "true" ]  if [ "${SMAGE_USE_DISTCC}" == "true" ]
837  then  then
838   setup_distcc_environment   setup_distcc_environment
839  fi  fi
840    
841  #setup ccache  # setup ccache
842  if [ "${SMAGE_USE_CCACHE}" == "true" ]  if [ "${SMAGE_USE_CCACHE}" == "true" ]
843  then  then
844   setup_ccache_environment   setup_ccache_environment
# Line 549  sleep 1 Line 859  sleep 1
859  #read  #read
860  #debug end  #debug end
861    
862  #cleans up build if a previously one exists  # cleans up build if a previously one exists
863  if [ -d ${BUILDDIR} ]  if [ -d ${BUILDDIR} ]
864  then  then
865   rm -rf ${BUILDDIR}/* || die "couldn't cleanup \$BUILDDIR."   rm -rf ${BUILDDIR}/* || die "couldn't cleanup \$BUILDDIR."
866  fi  fi
867  install -d ${BUILDDIR} || die "couldn't create \$BUILDDIR."  install -d ${BUILDDIR} || die "couldn't create \$BUILDDIR."
868    
869  #cleans up srcdir if a previously unpacked one exists  # cleans up srcdir if a previously unpacked one exists
870  if [ -d ${SRCDIR} ]  if [ -d ${SRCDIR} ]
871  then  then
872   rm -rf ${SRCDIR}   rm -rf ${SRCDIR}
873  fi  fi
874    
875  #cleans up bindir if a previous build exists or creates a new one  # cleans up bindir if a previous build exists or creates a new one
876  if [ -d ${BINDIR} ]  if [ -d ${BINDIR} ]
877  then  then
878   rm -rf ${BINDIR}   rm -rf ${BINDIR}
879  fi  fi
880  install -d ${BINDIR} || die "couldn't create \$BINDIR."  install -d ${BINDIR} || die "couldn't create \$BINDIR."
881    
882  #cleans up package temp dir if a previous build exists  # cleans up package temp dir if a previous build exists
883  if [ -d ${BUILDDIR}/${PKGNAME} ]  if [ -d ${BUILDDIR}/${PKGNAME} ]
884  then  then
885   rm -rf ${BUILDDIR}/${PKGNAME}   rm -rf ${BUILDDIR}/${PKGNAME}
886  fi  fi
887    
888  #cleans up timestamp if one exists  # cleans up timestamp if one exists
889  if [ -f /var/tmp/timestamp ]  if [ -f /var/tmp/timestamp ]
890  then  then
891   mage rmstamp   mage rmstamp
# Line 586  src_compile || die "src_compile failed" Line 896  src_compile || die "src_compile failed"
896  src_install || die "src_install failed"  src_install || die "src_install failed"
897    
898    
899  #compressing doc, info & man files  # compressing doc, info & man files
900  echo -e "Compressing man-pages ..."  echo -e "Compressing man-pages ..."
901  if [ -d ${BUILDDIR}/builded/usr/share/man ]  if [ -d ${BUILDDIR}/builded/usr/share/man ]
902  then  then
# Line 599  then Line 909  then
909   ${MLIBDIR}/compressdoc -g -9 ${BUILDDIR}/builded/usr/share/info   ${MLIBDIR}/compressdoc -g -9 ${BUILDDIR}/builded/usr/share/info
910  fi  fi
911    
912  #the new buildpkg command  # stripping all bins and libs
913    case ${NOSTRIP} in
914     true|TRUE|yes|y)
915     echo -e "NOSTRIP=true detected; Package will not be stripped ..."
916     ;;
917     *)
918     echo -e "Stripping binaries ..."
919     mstripbins ${BINDIR}
920     echo -e "Stripping libraries ..."
921     mstriplibs ${BINDIR}
922     ;;
923    esac
924    
925    # the new buildpkg command
926  case ${NOPKGBUILD} in  case ${NOPKGBUILD} in
927   true|TRUE|yes|y)   true|TRUE|yes|y)
928   echo -e "NOPGKBUILD=true detected; Package will not be build ..."   echo -e "NOPGKBUILD=true detected; Package will not be build ..."
929   ;;   ;;
930   *)   *)
931   ${MLIBDIR}/pkgbuild_dir.sh ${PKGNAME} ${BINDIR} || die "package-build failed"   # build serveral targets
932   echo -e "\nPackage ${PKGNAME} successfully builded.\n"   if [ -n "${MAGE_TARGETS}" ]
933     then
934     for target in ${MAGE_TARGETS}
935     do
936     # check if an special target_pkgbuild exists
937     if typeset -f ${target}_pkgbuild > /dev/null
938     then
939     # run it
940     ${target}_pkgbuild
941     fi
942     # now create the target package
943     ${MLIBDIR}/pkgbuild_dir.sh \
944     "${PNAME}-${target}-${PVER}-${CHOST%%-*}-${PBUILD}" \
945     ${BINDIR} || die "target: ${target} package-build failed"
946     echo -e "\nPackage ${PNAME}-${target}-${PVER}-${CHOST%%-*}-${PBUILD} successfully builded.\n"
947     done
948     else
949     ${MLIBDIR}/pkgbuild_dir.sh ${PKGNAME} ${BINDIR} || die "package-build failed"
950     echo -e "\nPackage ${PKGNAME} successfully builded.\n"
951     fi
952   ;;   ;;
953  esac  esac
954    
955  #for sure  # for sure
956  unset NOPKGBUILD  unset NOPKGBUILD
957    unset NOSTRIP
958    
959  xtitleclean  xtitleclean
960  #echo -e "\nPackage ${PKGNAME} successfully builded.\n"  #echo -e "\nPackage ${PKGNAME} successfully builded.\n"

Legend:
Removed from v.63  
changed lines
  Added in v.202