summaryrefslogtreecommitdiff
path: root/Tools
diff options
context:
space:
mode:
authorWilliam S Fulton <wsf@fultondesigns.co.uk>2013-10-10 07:26:09 +0100
committerWilliam S Fulton <wsf@fultondesigns.co.uk>2013-10-10 07:26:09 +0100
commitbcb7aee0224bb87490ac40080404633eeab42005 (patch)
tree481b541509ce091fe0543c781b2d77e428b496be /Tools
parentde5e0c8655a2409814211415e086868be94031a8 (diff)
parent3fcbb40af94f9209c2da4f806db45ef24ad8408b (diff)
downloadswig-bcb7aee0224bb87490ac40080404633eeab42005.tar.gz
Merge branch 'master' into gsoc2009-matevz
Conflicts: Examples/Makefile.in Examples/guile/Makefile.in Lib/php/php.swg Makefile.in Source/CParse/parser.y configure.ac
Diffstat (limited to 'Tools')
-rw-r--r--Tools/config/ac_compile_warnings.m42
-rwxr-xr-xTools/mkdist.py39
-rwxr-xr-xTools/mkrelease.py5
3 files changed, 38 insertions, 8 deletions
diff --git a/Tools/config/ac_compile_warnings.m4 b/Tools/config/ac_compile_warnings.m4
index 4c030ea59..7e4239a3c 100644
--- a/Tools/config/ac_compile_warnings.m4
+++ b/Tools/config/ac_compile_warnings.m4
@@ -4,7 +4,7 @@ dnl Set the maximum warning verbosity according to C and C++ compiler used.
dnl Currently supports g++ and gcc.
dnl
dnl The compiler options are always added CFLAGS and CXXFLAGS even if
-dnl these are overidden at configure time. Removing the maximum warning
+dnl these are overridden at configure time. Removing the maximum warning
dnl flags can be removed with --without-maximum-compile-warnings. For example:
dnl
dnl ./configure --without-maximum-compile-warnings CFLAGS= CXXFLAGS=
diff --git a/Tools/mkdist.py b/Tools/mkdist.py
index f2a04542c..234c768f2 100755
--- a/Tools/mkdist.py
+++ b/Tools/mkdist.py
@@ -6,6 +6,7 @@
import sys
import string
import os
+import subprocess
def failed():
print "mkdist.py failed to complete"
@@ -34,10 +35,42 @@ os.system("rm -f "+dirname+".tar.gz")
print "Removing "+dirname+".tar.gz if exists"
os.system("rm -f "+dirname+".tar")
-# Do a SVN export into the directory name
+# Grab the code from git
-print "Grabbing latest SWIG from svn"
-os.system("svn export -r HEAD https://swig.svn.sourceforge.net/svnroot/swig/trunk "+dirname) == 0 or failed()
+print "Checking git repository is in sync with remote repository"
+os.system("git remote update") == 0 or failed()
+command = ["git", "status", "--porcelain", "-uno"]
+out = subprocess.check_output(command)
+if out.strip() != "":
+ print "Local git repository has modifications"
+ print " ".join(command)
+ print out
+ sys.exit(3)
+
+command = ["git", "log", "--oneline", "master..origin/master"]
+out = subprocess.check_output(command)
+if out.strip() != "":
+ print "Remote repository has additional modifications to local repository"
+ print " ".join(command)
+ print out
+ sys.exit(3)
+
+command = ["git", "log", "--oneline", "origin/master..master"]
+out = subprocess.check_output(command)
+if out.strip() != "":
+ print "Local repository has modifications not pushed to the remote repository"
+ print "These should be pushed and checked that they pass Continuous Integration testing before continuing"
+ print " ".join(command)
+ print out
+ sys.exit(3)
+
+print "Tagging release"
+tag = "'rel-" + version + "'"
+os.system("git tag -a -m " + tag + " " + tag) == 0 or failed()
+
+outdir = os.path.basename(os.getcwd()) + "/" + dirname + "/"
+print "Grabbing tagged release git repository using 'git archive' into " + outdir
+os.system("(cd .. && git archive --prefix=" + outdir + " " + tag + " . | tar -xf -)") == 0 or failed()
# Remove the debian directory -- it's not official
diff --git a/Tools/mkrelease.py b/Tools/mkrelease.py
index 9ca96bc6f..0623fe786 100755
--- a/Tools/mkrelease.py
+++ b/Tools/mkrelease.py
@@ -43,9 +43,6 @@ os.system("cat swig-" + version + "/README " + "swig-" + version + "/CHANGES.cur
os.system("rsync --archive --verbose -P --times -e ssh " + "swig-" + version + ".tar.gz " + full_readme_file + " " + swig_dir_sf) and failed("")
os.system("rsync --archive --verbose -P --times -e ssh " + "swigwin-" + version + ".zip " + full_readme_file + " " + swigwin_dir_sf) and failed("")
-print "Tagging release"
-os.system("svn copy -m \"rel-" + version + "\" https://swig.svn.sourceforge.net/svnroot/swig/trunk https://swig.svn.sourceforge.net/svnroot/swig/tags/rel-" + version + "/")
-
print "Finished"
-print "Now log in to SourceForge and set the operating systems applicable to the newly uploaded tarball and zip file."
+print "Now log in to SourceForge and set the operating systems applicable to the newly uploaded tarball and zip file. Also remember to do a 'git push --tags'."