#!/usr/bin/env python """ srelease.py version [python_exe] version is the version string, eg. "0.0.1a" python_exe is python executable to use to package. """ import sys, os from release import clean, check_versions, win_version, check_date NAME = "python-spidermonkey" MODULE_NAME = "spidermonkey" def main(): if len(sys.argv) <= 1: sys.exit("usage: %s version [python_exe]" % sys.argv[0]) version = sys.argv[1] if len(sys.argv) > 2: python_exe = sys.argv[2] else: python_exe = "python" release_dir = "%s-%s" % (NAME, version) os.mkdir(release_dir) os.chdir(NAME) clean() bad_files = check_versions( [MODULE_NAME+".pyx", "setup.py", "ChangeLog", "README.html"], version) if bad_files: sys.exit("version doesn't match in %s" % " ".join(bad_files)) bad_files = check_date(["README.html"]) if bad_files: sys.exit("missing or incorrect date in %s" % " ".join(bad_files)) clean() os.system("make clean") os.system("make") for py in ["python2.3"]: os.system("%s test.py" % py) os.system("make clean") clean() os.system("lynx -dump README.html > README.txt") os.system("cp README.html ../%s/README-%s.html" % ( release_dir, win_version(version))) os.system("cp ChangeLog ../%s/ChangeLog.txt" % release_dir) os.system("rm MANIFEST") os.system(python_exe+" setup.py sdist --formats=gztar,zip") os.chdir("dist") distutils_zip = "%s-%s.zip" % (NAME, version) zip = "%s-%s.zip" % (NAME, win_version(version)) tarball = "%s-%s.tar.gz" % (NAME, version) os.system("mv %s ../../%s/%s" % (distutils_zip, release_dir, zip)) os.system("mv %s ../../%s" % (tarball, release_dir)) os.chdir("..") os.system("rm -rf dist") os.system("rm -rf build") os.chdir("..") print "tarring:" os.system("tar -cvf %s.tar %s" % (release_dir, release_dir)) os.system("rm -rf %s" % release_dir) main()