vasabi:samba-build: also copy and re-use .lock-wscript with suffix
authorMichael Adam <obnox@samba.org>
Mon, 20 Apr 2015 15:01:14 +0000 (17:01 +0200)
committerMichael Adam <obnox@samba.org>
Mon, 20 Apr 2015 15:01:14 +0000 (17:01 +0200)
Signed-off-by: Michael Adam <obnox@samba.org>
script/samba-build.py

index f7bb3a4eab1cbe855b0ea341ac058b6985850bbb..694af7cc262b778959a217b8fa6861ecc96c8bf9 100755 (executable)
@@ -26,6 +26,7 @@ if not uname:
 
 default_bindir_suffix = "%s" % uname
 bindir = None
+lock_wscript = None
 
 default_srcdir = "."
 homedir = os.path.expanduser("~")
@@ -40,6 +41,9 @@ backup_suffix = "orig.%s" % timestr
 
 src_dir_bin = None
 bld_dir_bin = None
+src_dir_lock = None
+bld_dir_lock = None
+
 rsync_verbose_opt = ""
 
 do_out_of_tree = True
@@ -76,8 +80,11 @@ def determine_make():
 def process_args():
     global options
     global bin_dir
+    global lock_wscript
     global src_dir_bin
     global bld_dir_bin
+    global src_dir_lock
+    global bld_dir_lock
     global rsync_verbose_opt
 
     parser = optparse.OptionParser()
@@ -212,9 +219,12 @@ def process_args():
         parser.error("srcdir may not be equal to blddir")
 
     bin_dir = "bin.%s" % options.bindir_suffix
+    lock_wscript = ".lock-wscript.%s" % options.bindir_suffix
 
     src_dir_bin = "%s/%s" % ( options.srcdir, bin_dir )
     bld_dir_bin = "%s/%s" % ( options.blddir, bin_dir )
+    src_dir_lock = "%s/%s" % ( options.srcdir, lock_wscript )
+    bld_dir_lock = "%s/%s" % ( options.blddir, lock_wscript )
 
     if options.verbose:
         rsync_verbose_opt = "-i"
@@ -307,6 +317,8 @@ def setup_env():
             "-not", "-name", "st*",
             "-not", "-name", "bin",
             "-not", "-name", "bin*",
+            "-not", "-name", ".lock-wscript",
+            "-not", "-name", ".lock-wscript*",
             "-exec", "ln", "-sf", "{}", options.blddir, ";" ]
     if options.verbose:
         print "cmd: '%s'" % ' '.join(cmd)
@@ -338,6 +350,11 @@ def setup_env():
     rm_rf("%s/bin" % options.blddir)
     os.symlink(bin_dir, "%s/bin" % options.blddir)
 
+    if os.path.exists(src_dir_lock):
+        shutil.copy2(src_dir_lock, options.blddir)
+        rm_rf("%s/.lock-wscript" % options.blddir)
+        os.symlink(lock_wscript, "%s/.lock-wscript" % options.blddir)
+
 
 def do_build():
     """ run the actual build and test commands """
@@ -387,6 +404,9 @@ def save_results():
             print "cmd: '%s'" % ' '.join(cmd)
         subprocess.check_call(cmd)
 
+    if os.path.exists(bld_dir_lock):
+        shutil.copy2(bld_dir_lock, options.srcdir)
+
 def main():
     process_args()
     setup_env()