[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gobolinux-commits
Subject:    [gobolinux-commits] r3260 - trunk/ChrootCompile/bin
From:       lucasvr () svn ! gobolinux ! org
Date:       2008-04-28 4:29:20
Message-ID: 20080428042920.157FD81A0 () oakdale ! dreamhost ! com
[Download RAW message or body]

Author: lucasvr
Date: 2008-04-27 21:29:19 -0700 (Sun, 27 Apr 2008)
New Revision: 3260

Modified:
   trunk/ChrootCompile/bin/ChrootCompile
Log:
Use FindDependencies instead of our simplistic 'if there's more than one package for \
$dep, Die()' approach when a Dependencies file is available.


Modified: trunk/ChrootCompile/bin/ChrootCompile
===================================================================
--- trunk/ChrootCompile/bin/ChrootCompile	2008-04-28 03:02:53 UTC (rev 3259)
+++ trunk/ChrootCompile/bin/ChrootCompile	2008-04-28 04:29:19 UTC (rev 3260)
@@ -446,13 +446,19 @@
 function get_package_for() {
    local dep="$1"
    local repositories="$2"
+   local dependenciesfile="$3"
    local pkg=
    for repo in $repositories
    do
-      [ `ls $repo/$dep--* 2> /dev/null | wc -l` -gt 1 ] && {
-         Die "More than one entry for $dep in $repo/ directory."
-      } || true
-      pkg=`ls $repo/$dep--* 2> /dev/null || true`
+      if [ "$dependenciesfile" ]
+      then
+         pkg=$(FindDependencies --repository=local-dir:"$repo" --dependency="$dep" \
"$dependenciesfile") +      else
+         [ `ls $repo/$dep--* 2> /dev/null | wc -l` -gt 1 ] && {
+            Die "More than one entry for $dep in $repo/ directory."
+         } || true
+         pkg=`ls $repo/$dep--* 2> /dev/null || true`
+      fi
       [ "$pkg" ] && break
    done
    echo "$pkg"
@@ -538,13 +544,10 @@
          Die "Dependency $dep could not be found."
       fi
    else
-      local pkg=`get_package_for "$dep" "$repositories"`
+      local pkg=$(get_package_for "$dep" "$repositories" "$dependenciesfile")
 	  local depsdir="$(echo $repositories | awk {'print $NF'})"
-      if [ ! "$pkg" -a ! -z "$dependenciesfile" ]
-      then
-         [ ! "$noweb" ] && pkg=`download_dependency "$dep" "$depsdir" \
                "$dependenciesfile"`
-         [ ! "$pkg" -a ! "$norecursive" ] && compile_dependency "$dep" \
                "$dependenciesfile" && pkg=`get_package_for "$dep" "$putclean"`
-      fi
+      [ ! "$pkg" -a ! "$noweb" ] && pkg=$(download_dependency "$dep" "$depsdir" \
"$dependenciesfile") +      [ ! "$pkg" -a ! "$norecursive" ] && compile_dependency \
"$dep" "$dependenciesfile" && pkg=$(get_package_for "$dep" "$putclean" \
                "$dependenciesfile")
       [ ! "$pkg" ] && Die "Dependency $dep could not be found. You may need to get \
the package and put it at $depsdir."  unpacked=`unpack_package "$pkg" "$dep" "$arch"`
    fi

_______________________________________________
gobolinux-commits mailing list
gobolinux-commits@lists.gobolinux.org
http://lists.gobolinux.org/mailman/listinfo/gobolinux-commits


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic