Author: wade
Date: 2006-07-03 19:35:10 -0400 (Mon, 03 Jul 2006)
New Revision: 62237

Modified:
   trunk/release/packaging/build
   trunk/release/packaging/conf/sunos-10-x86
   trunk/release/packaging/install-deps
   trunk/release/pyutils/packaging.py
   trunk/release/pyutils/utils.py
Log:
build / install-deps / packaging.py:
-add option to install-deps to install packages using HEAD_or_RELEASE
 allows us to build from these packages

conf/sunos-10-x86:
-note about cc -> gcc link for tests

utils.py:
-fix get_version's fail_on_missing.  The package dir will always exist with 
create_links_dir=True,
 so check after candidates are selected



Modified: trunk/release/packaging/build
===================================================================
--- trunk/release/packaging/build       2006-07-03 20:54:09 UTC (rev 62236)
+++ trunk/release/packaging/build       2006-07-03 23:35:10 UTC (rev 62237)
@@ -170,7 +170,7 @@
 build_info.update_step("install-deps", state="inprogress", 
log=os.path.basename(LOGFILE), start=utils.get_time(), finish="")
 
 print "Installing dependencies..."
-(code, output) = utils.launch_process("./install-deps %s %s" % (distro, 
package_name), logger=log_obj)
+(code, output) = utils.launch_process("./install-deps --HEAD_or_RELEASE=%s %s 
%s" % (HEAD_or_RELEASE, distro, package_name), logger=log_obj)
 if code:
        build_env.unlock_env()
        build_info.update_step("install-deps", state="failure", 
finish=utils.get_time())

Modified: trunk/release/packaging/conf/sunos-10-x86
===================================================================
--- trunk/release/packaging/conf/sunos-10-x86   2006-07-03 20:54:09 UTC (rev 
62236)
+++ trunk/release/packaging/conf/sunos-10-x86   2006-07-03 23:35:10 UTC (rev 
62237)
@@ -6,6 +6,7 @@
 
 # Notes about this arch:
 # Removed -mt option from gthread .pc file
+# created symlink cc -> gcc for runtime test
 
 strip_path=/usr/ccs/bin/strip
 tar_path=/usr/sfw/bin/gtar

Modified: trunk/release/packaging/install-deps
===================================================================
--- trunk/release/packaging/install-deps        2006-07-03 20:54:09 UTC (rev 
62236)
+++ trunk/release/packaging/install-deps        2006-07-03 23:35:10 UTC (rev 
62237)
@@ -13,6 +13,7 @@
 import re
 import glob
 import time
+import getopt
 
 sys.path += ['../pyutils']
 
@@ -23,9 +24,19 @@
 
 is_url = re.compile("^(ftp|http)", re.I)
 
-if len(sys.argv) < 3:
+# Default to RELEASE
+HEAD_or_RELEASE = "RELEASE"
+opts, remaining_args = getopt.getopt(sys.argv[1:], "", [ "HEAD_or_RELEASE=" ])
+for option, value in opts:
+        if option == "--HEAD_or_RELEASE":
+               if value != "HEAD" and value != "RELEASE":
+                       print "HEAD_or_RELEASE must be either HEAD or RELEASE 
..."
+                       sys.exit(1)
+               HEAD_or_RELEASE = value
+
+if len(remaining_args) < 2:
        print ""
-       print "Usage: ./install-deps TARGET <package> <local packages>"
+       print "Usage: ./install-deps [ --HEAD_OR_RELEASE=[HEAD|RELEASE] ] 
TARGET <package> <local packages>"
        print " where:"
         print "   package is package to build to install deps for (can also be 
'none')"
         print "   local packages is packages in the defs dir and/or urls if 
distro is zip based"
@@ -33,19 +44,19 @@
        sys.exit(1)
 
 
-target = sys.argv[1]
-build_deps_package = sys.argv[2]
+target = remaining_args[0]
+build_deps_package = remaining_args[1]
 
 
 deps = []
-if len(sys.argv) > 3: deps = sys.argv[3:]
+if len(remaining_args) > 2: deps = remaining_args[2:]
 
 target_env = packaging.buildenv(target, print_output=1)
 
 
 files = []
 if build_deps_package != 'none':
-       package = packaging.package(target_env, build_deps_package)
+       package = packaging.package(target_env, build_deps_package, 
HEAD_or_RELEASE=HEAD_or_RELEASE)
        files += package.get_dep_files()
 
 for dep in deps:
@@ -54,7 +65,7 @@
                files += [ 'external_zip_pkg' + os.sep + os.path.basename(dep) ]
 
        else:   
-               package = packaging.package(target_env, dep)
+               package = packaging.package(target_env, dep, 
HEAD_or_RELEASE=HEAD_or_RELEASE)
                files += package.get_files()
                files += package.get_dep_files()
 

Modified: trunk/release/pyutils/packaging.py
===================================================================
--- trunk/release/pyutils/packaging.py  2006-07-03 20:54:09 UTC (rev 62236)
+++ trunk/release/pyutils/packaging.py  2006-07-03 23:35:10 UTC (rev 62237)
@@ -469,7 +469,7 @@
                for dep in self.get_mono_deps():
                        # Get files for mono deps
                                # Woah, total cheat here, I imported packaging, 
and am using it!
-                       package = packaging.package(self.package_env, dep)
+                       package = packaging.package(self.package_env, dep, 
HEAD_or_RELEASE=self.HEAD_or_RELEASE)
                        files += package.get_files()
 
                        # Get url files

Modified: trunk/release/pyutils/utils.py
===================================================================
--- trunk/release/pyutils/utils.py      2006-07-03 20:54:09 UTC (rev 62236)
+++ trunk/release/pyutils/utils.py      2006-07-03 23:35:10 UTC (rev 62237)
@@ -460,10 +460,6 @@
                                candidates.append(file)
                files = candidates
 
-               if len(files) == 0 and fail_on_missing:
-                       print "utils.get_latest_ver: Could not find dir entry 
for '%s/%s', exiting" % (dir, version)
-                       sys.exit(1)
-
        # Or if a version reg is specified, only select versions matching it
        elif version_reg:
                candidates = []
@@ -472,11 +468,15 @@
                                candidates.append(file)
                files = candidates
 
-       if files:
-               latest_version = version_sort(files).pop()
-       else:
+       if len(files) == 0:
                latest_version = ""
+               if fail_on_missing:
+                       print "utils.get_latest_ver: No candidates for dir 
entry for '%s/%s', exiting" % (dir, version)
+                       sys.exit(1)
 
+       else:
+               latest_version = version_sort(files).pop()
+
         return latest_version
 
 

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to