Rev 4766: Remove some of the build dependencies from the bzr source tree. in http://bazaar.launchpad.net/~jameinel/bzr/2.1-remove-win32-build
John Arbash Meinel
john at arbash-meinel.com
Fri Oct 23 16:02:07 BST 2009
At http://bazaar.launchpad.net/~jameinel/bzr/2.1-remove-win32-build
------------------------------------------------------------
revno: 4766
revision-id: john at arbash-meinel.com-20091023150154-8zvuomodlwti819a
parent: pqm at pqm.ubuntu.com-20091022150452-ii7isyvx3j3jsvm5
committer: John Arbash Meinel <john at arbash-meinel.com>
branch nick: 2.1-remove-win32-build
timestamp: Fri 2009-10-23 10:01:54 -0500
message:
Remove some of the build dependencies from the bzr source tree.
Note that the build process still uses *some* files from the bzr source.
Which is bad (IMO), but the way it is until we get a real overhaul and cleanup.
-------------- next part --------------
=== modified file 'Makefile'
--- a/Makefile 2009-10-13 15:05:13 +0000
+++ b/Makefile 2009-10-23 15:01:54 +0000
@@ -21,11 +21,6 @@
### Core Stuff ###
PYTHON=python
-PYTHON24=python24
-PYTHON25=python25
-PYTHON26=python26
-BZR_TARGET=release
-PLUGIN_TARGET=plugin-release
PYTHON_BUILDFLAGS=
.PHONY: all clean extensions pyflakes api-docs check-nodocs check
@@ -317,81 +312,6 @@
@echo Generating $@
@dot -Tpng $< -o$@ || echo "Dot not installed; skipping generation of $@"
-
-### Windows Support ###
-
-# make all the installers completely from scratch, using zc.buildout
-# to fetch the dependencies
-# These are files that need to be copied into the build location to boostrap
-# the build process.
-# Note that the path is relative to tools/win32
-BUILDOUT_FILES := buildout.cfg \
- buildout-templates/bin/build-installer.bat.in \
- ostools.py bootstrap.py
-
-installer-all:
- @echo Make all the installers from scratch
- @# Build everything in a separate directory, to avoid cluttering the WT
- $(PYTHON) tools/win32/ostools.py makedir build-win32
- @# cd to tools/win32 so that the relative paths are copied correctly
- cd tools/win32 && $(PYTHON) ostools.py copytree $(BUILDOUT_FILES) ../../build-win32
- @# There seems to be a bug in gf.release.bzr, It doesn't correctly update
- @# existing release directories, so delete them manually before building
- @# It means things may be rebuilt that don't need to be, but at least
- @# it will be correct when they do.
- cd build-win32 && $(PYTHON) ostools.py remove release */release
- cd build-win32 && $(PYTHON) bootstrap.py
- cd build-win32 && bin/buildout
- cd build-win32 && bin/build-installer.bat $(BZR_TARGET) $(PLUGIN_TARGET)
-
-
-clean-installer-all:
- $(PYTHON) tools/win32/ostools.py remove build-win32
-
-# make bzr.exe for win32 with py2exe
-exe:
- @echo *** Make bzr.exe
- $(PYTHON) tools/win32/ostools.py remove bzrlib/*.pyd
- $(PYTHON) setup.py build_ext -i -f $(PYTHON_BUILDFLAGS)
- $(PYTHON) setup.py py2exe > py2exe.log
- $(PYTHON) tools/win32/ostools.py copytodir tools/win32/start_bzr.bat win32_bzr.exe
- $(PYTHON) tools/win32/ostools.py copytodir tools/win32/bazaar.url win32_bzr.exe
-
-# win32 installer for bzr.exe
-installer: exe copy-docs
- @echo *** Make Windows installer
- $(PYTHON) tools/win32/run_script.py cog.py -d -o tools/win32/bzr.iss tools/win32/bzr.iss.cog
- iscc /Q tools/win32/bzr.iss
-
-# win32 Python's distutils-based installer
-# require to have Python interpreter installed on win32
-py-inst-24: docs
- $(PYTHON24) setup.py bdist_wininst --install-script="bzr-win32-bdist-postinstall.py" -d .
-
-py-inst-25: docs
- $(PYTHON25) setup.py bdist_wininst --install-script="bzr-win32-bdist-postinstall.py" -d .
-
-py-inst-26: docs
- $(PYTHON26) setup.py bdist_wininst --install-script="bzr-win32-bdist-postinstall.py" -d .
-
-python-installer: py-inst-24 py-inst-25 py-inst-26
-
-
-copy-docs: docs
- $(PYTHON) tools/win32/ostools.py copytodir README win32_bzr.exe/doc
- $(PYTHON) tools/win32/ostools.py copytree $(WEB_DOCS) win32_bzr.exe
-
-# clean on win32 all installer-related files and directories
-clean-win32: clean-docs
- $(PYTHON) tools/win32/ostools.py remove build
- $(PYTHON) tools/win32/ostools.py remove win32_bzr.exe
- $(PYTHON) tools/win32/ostools.py remove py2exe.log
- $(PYTHON) tools/win32/ostools.py remove tools/win32/bzr.iss
- $(PYTHON) tools/win32/ostools.py remove bzr-setup*.exe
- $(PYTHON) tools/win32/ostools.py remove bzr-*win32.exe
- $(PYTHON) tools/win32/ostools.py remove dist
-
-
### Packaging Targets ###
.PHONY: dist dist-upload-escudero check-dist-tarball
=== removed file 'tools/win32/bootstrap.py'
--- a/tools/win32/bootstrap.py 2009-05-29 14:19:29 +0000
+++ b/tools/win32/bootstrap.py 1970-01-01 00:00:00 +0000
@@ -1,77 +0,0 @@
-##############################################################################
-#
-# Copyright (c) 2006 Zope Corporation and Contributors.
-# All Rights Reserved.
-#
-# This software is subject to the provisions of the Zope Public License,
-# Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution.
-# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
-# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
-# FOR A PARTICULAR PURPOSE.
-#
-##############################################################################
-"""Bootstrap a buildout-based project
-
-Simply run this script in a directory containing a buildout.cfg.
-The script accepts buildout command-line options, so you can
-use the -c option to specify an alternate configuration file.
-
-$Id: bootstrap.py 90478 2008-08-27 22:44:46Z georgyberdyshev $
-"""
-
-import os, shutil, sys, tempfile, urllib2
-
-tmpeggs = tempfile.mkdtemp()
-
-is_jython = sys.platform.startswith('java')
-
-try:
- import pkg_resources
-except ImportError:
- ez = {}
- exec urllib2.urlopen('http://peak.telecommunity.com/dist/ez_setup.py'
- ).read() in ez
- ez['use_setuptools'](to_dir=tmpeggs, download_delay=0)
-
- import pkg_resources
-
-if sys.platform == 'win32':
- def quote(c):
- if ' ' in c:
- return '"%s"' % c # work around spawn lamosity on windows
- else:
- return c
-else:
- def quote (c):
- return c
-
-cmd = 'from setuptools.command.easy_install import main; main()'
-ws = pkg_resources.working_set
-
-if is_jython:
- import subprocess
-
- assert subprocess.Popen([sys.executable] + ['-c', quote(cmd), '-mqNxd',
- quote(tmpeggs), 'zc.buildout'],
- env=dict(os.environ,
- PYTHONPATH=
- ws.find(pkg_resources.Requirement.parse('setuptools')).location
- ),
- ).wait() == 0
-
-else:
- assert os.spawnle(
- os.P_WAIT, sys.executable, quote (sys.executable),
- '-c', quote (cmd), '-mqNxd', quote (tmpeggs), 'zc.buildout',
- dict(os.environ,
- PYTHONPATH=
- ws.find(pkg_resources.Requirement.parse('setuptools')).location
- ),
- ) == 0
-
-ws.add_entry(tmpeggs)
-ws.require('zc.buildout')
-import zc.buildout.buildout
-zc.buildout.buildout.main(sys.argv[1:] + ['bootstrap'])
-shutil.rmtree(tmpeggs)
=== removed file 'tools/win32/build_release.py'
--- a/tools/win32/build_release.py 2009-07-31 19:09:31 +0000
+++ b/tools/win32/build_release.py 1970-01-01 00:00:00 +0000
@@ -1,207 +0,0 @@
-#!/cygdrive/C/Python25/python
-"""A script to help automate the build process."""
-
-# When preparing a new release, make sure to set all of these to the latest
-# values.
-VERSIONS = {
- 'bzr': '1.17',
- 'qbzr': '0.12',
- 'bzrtools': '1.17.0',
- 'bzr-svn': '0.6.3',
- 'bzr-rewrite': '0.5.2',
- 'subvertpy': '0.6.8',
-}
-
-# This will be passed to 'make' to ensure we build with the right python
-PYTHON='/cygdrive/c/Python25/python'
-
-# Create the final build in this directory
-TARGET_ROOT='release'
-
-DEBUG_SUBPROCESS = True
-
-
-import os
-import shutil
-import subprocess
-import sys
-
-
-BZR_EXE = None
-def bzr():
- global BZR_EXE
- if BZR_EXE is not None:
- return BZR_EXE
- try:
- subprocess.call(['bzr', '--version'], stdout=subprocess.PIPE,
- stderr=subprocess.PIPE)
- BZR_EXE = 'bzr'
- except OSError:
- try:
- subprocess.call(['bzr.bat', '--version'], stdout=subprocess.PIPE,
- stderr=subprocess.PIPE)
- BZR_EXE = 'bzr.bat'
- except OSError:
- raise RuntimeError('Could not find bzr or bzr.bat on your path.')
- return BZR_EXE
-
-
-def call_or_fail(*args, **kwargs):
- """Call a subprocess, and fail if the return code is not 0."""
- if DEBUG_SUBPROCESS:
- print ' calling: "%s"' % (' '.join(args[0]),)
- p = subprocess.Popen(*args, **kwargs)
- (out, err) = p.communicate()
- if p.returncode != 0:
- raise RuntimeError('Failed to run: %s, %s' % (args, kwargs))
- return out
-
-
-TARGET = None
-def get_target():
- global TARGET
- if TARGET is not None:
- return TARGET
- out = call_or_fail([sys.executable, get_bzr_dir() + '/bzr',
- 'version', '--short'], stdout=subprocess.PIPE)
- version = out.strip()
- TARGET = os.path.abspath(TARGET_ROOT + '-' + version)
- return TARGET
-
-
-def clean_target():
- """Nuke the target directory so we know we are starting from scratch."""
- target = get_target()
- if os.path.isdir(target):
- print "Deleting: %s" % (target,)
- shutil.rmtree(target)
-
-def get_bzr_dir():
- return 'bzr.' + VERSIONS['bzr']
-
-
-def update_bzr():
- """Make sure we have the latest bzr in play."""
- bzr_dir = get_bzr_dir()
- if not os.path.isdir(bzr_dir):
- bzr_version = VERSIONS['bzr']
- # bzr_url = 'http://bazaar-vcs.org/bzr/bzr.' + bzr_version
- bzr_url = 'lp:bzr/' + bzr_version
- print "Getting bzr release %s from %s" % (bzr_version, bzr_url)
- call_or_fail([bzr(), 'co', bzr_url, bzr_dir])
- else:
- print "Ensuring %s is up-to-date" % (bzr_dir,)
- call_or_fail([bzr(), 'update', bzr_dir])
-
-
-def create_target():
- target = get_target()
- print "Creating target dir: %s" % (target,)
- call_or_fail([bzr(), 'co', get_bzr_dir(), target])
-
-
-def get_plugin_trunk_dir(plugin_name):
- return '%s/trunk' % (plugin_name,)
-
-
-def get_plugin_release_dir(plugin_name):
- return '%s/%s' % (plugin_name, VERSIONS[plugin_name])
-
-
-def get_plugin_trunk_branch(plugin_name):
- return 'lp:%s' % (plugin_name,)
-
-
-def update_plugin_trunk(plugin_name):
- trunk_dir = get_plugin_trunk_dir(plugin_name)
- if not os.path.isdir(trunk_dir):
- plugin_trunk = get_plugin_trunk_branch(plugin_name)
- print "Getting latest %s trunk" % (plugin_name,)
- call_or_fail([bzr(), 'co', plugin_trunk,
- trunk_dir])
- else:
- print "Ensuring %s is up-to-date" % (trunk_dir,)
- call_or_fail([bzr(), 'update', trunk_dir])
- return trunk_dir
-
-
-def _plugin_tag_name(plugin_name):
- if plugin_name in ('bzr-svn', 'bzr-rewrite', 'subvertpy'):
- return '%s-%s' % (plugin_name, VERSIONS[plugin_name])
- # bzrtools and qbzr use 'release-X.Y.Z'
- return 'release-' + VERSIONS[plugin_name]
-
-
-def update_plugin(plugin_name):
- release_dir = get_plugin_release_dir(plugin_name)
- if not os.path.isdir(plugin_name):
- if plugin_name in ('bzr-svn', 'bzr-rewrite'):
- # bzr-svn uses a different repo format
- call_or_fail([bzr(), 'init-repo', '--rich-root-pack', plugin_name])
- else:
- os.mkdir(plugin_name)
- if os.path.isdir(release_dir):
- print "Removing existing dir: %s" % (release_dir,)
- shutil.rmtree(release_dir)
- # First update trunk
- trunk_dir = update_plugin_trunk(plugin_name)
- # Now create the tagged directory
- tag_name = _plugin_tag_name(plugin_name)
- print "Creating the branch %s" % (release_dir,)
- call_or_fail([bzr(), 'co', '-rtag:%s' % (tag_name,),
- trunk_dir, release_dir])
- return release_dir
-
-
-def install_plugin(plugin_name):
- release_dir = update_plugin(plugin_name)
- # at least bzrtools doesn't like you to call 'setup.py' unless you are in
- # that directory specifically, so we cd, rather than calling it from
- # outside
- print "Installing %s" % (release_dir,)
- call_or_fail([sys.executable, 'setup.py', 'install', '-O1',
- '--install-lib=%s' % (get_target(),)],
- cwd=release_dir)
-
-
-def update_tbzr():
- tbzr_loc = os.environ.get('TBZR', None)
- if tbzr_loc is None:
- raise ValueError('You must set TBZR to the location of tortoisebzr.')
- print 'Updating %s' % (tbzr_loc,)
- call_or_fail([bzr(), 'update', tbzr_loc])
-
-
-def build_installer():
- target = get_target()
- print
- print
- print '*' * 60
- print 'Building standalone installer'
- call_or_fail(['make', 'PYTHON=%s' % (PYTHON,), 'installer'],
- cwd=target)
-
-
-def main(args):
- import optparse
-
- p = optparse.OptionParser(usage='%prog [OPTIONS]')
- opts, args = p.parse_args(args)
-
- update_bzr()
- update_tbzr()
- clean_target()
- create_target()
- install_plugin('subvertpy')
- install_plugin('bzrtools')
- install_plugin('qbzr')
- install_plugin('bzr-svn')
- install_plugin('bzr-rewrite')
-
- build_installer()
-
-
-if __name__ == '__main__':
- main(sys.argv[1:])
-
-# vim: ts=4 sw=4 sts=4 et ai
=== removed directory 'tools/win32/buildout-templates'
=== removed directory 'tools/win32/buildout-templates/bin'
=== removed file 'tools/win32/buildout-templates/bin/build-installer.bat.in'
--- a/tools/win32/buildout-templates/bin/build-installer.bat.in 2009-08-12 22:03:06 +0000
+++ b/tools/win32/buildout-templates/bin/build-installer.bat.in 1970-01-01 00:00:00 +0000
@@ -1,108 +0,0 @@
- at echo off
-setlocal
-
-set ROOT=${buildout:directory}
-
-set RELEASE=%ROOT%\release\bzr.${settings:bzr-release}
-set DEV=%ROOT%\dev\bzr.dev
-set TARGET=
-set BZR_TARGET=
-set PLUGIN_TARGET=
-
-set SVN_DEV=${buildout:directory}/${svn-dev:destination}
-set SVN_BDB=${buildout:directory}/${svn-db4:destination}
-set SVN_LIBINTL=${buildout:directory}/${svn-libintl:destination}
-set TBZR=${buildout:directory}/tbzr/trunk
-set INSTALLERS=%ROOT%\installers
-set PYTHON=${buildout:executable}
-
-set ORIGINAL_PYTHONPATH=%PYTHONPATH%
-set ORIGINAL_DIRECTORY=%CD%
-
-set BUILD_ERROR=0
-
-set TORTOISE_OVERLAYS_MSI_WIN32_CMD=%PYTHON% %ROOT%/ostools.py basename ${settings:tortoise-overlays-win32-url}
-FOR /f "tokens=1 delims= " %%G IN ('%TORTOISE_OVERLAYS_MSI_WIN32_CMD%') DO set BASENAME=%%G
-set TORTOISE_OVERLAYS_MSI_WIN32=${buildout:directory}/tortoise-overlays/%BASENAME%
-
-set TORTOISE_OVERLAYS_MSI_X64_CMD=%PYTHON% %ROOT%/ostools.py basename ${settings:tortoise-overlays-x64-url}
-FOR /f "tokens=1 delims= " %%G IN ('%TORTOISE_OVERLAYS_MSI_X64_CMD%') DO set BASENAME=%%G
-set TORTOISE_OVERLAYS_MSI_X64=${buildout:directory}/tortoise-overlays/%BASENAME%
-
-FOR /f "tokens=1 delims= " %%G IN ('cygpath %PYTHON%') DO set CYG_PYTHON=%%G
-
-:ARGS
-if "%1"=="release" (set TARGET=%RELEASE%) & (set BZR_TARGET=release) & shift & goto ARGS
-if "%1"=="dev" (set TARGET=%DEV%) & (set BZR_TARGET=trunk) & shift & goto ARGS
-if "%1"=="plugin-release" (set PLUGIN_TARGET=release) & shift & goto ARGS
-if "%1"=="plugin-dev" (set PLUGIN_TARGET=trunk) & shift & goto ARGS
-
-if not defined TARGET (set TARGET=%RELEASE%) & (set BZR_TARGET=release)
-if not defined PLUGIN_TARGET (set PLUGIN_TARGET=release)
-
-%PYTHON% %ROOT%/ostools.py remove %TARGET%
- at if %ERRORLEVEL% NEQ 0 (set BUILD_ERROR=%ERRORLEVEL%) & goto End
-
-%PYTHON% %ROOT%/ostools.py makedir %TARGET%
- at if %ERRORLEVEL% NEQ 0 (set BUILD_ERROR=%ERRORLEVEL%) & goto End
-
-%PYTHON% %ROOT%/ostools.py makedir %INSTALLERS%
- at if %ERRORLEVEL% NEQ 0 (set BUILD_ERROR=%ERRORLEVEL%) & goto End
-
-rem Use %COMSPEC% /c in case bzr is actually a .bat file
-%COMSPEC% /c bzr co %ROOT%/bzr/%BZR_TARGET% %TARGET%
- at if %ERRORLEVEL% NEQ 0 (set BUILD_ERROR=%ERRORLEVEL%) & goto End
-
-rem Build the python installers first, because we don't want to
-rem include any of the 3rd-party plugins, because we don't bundle
-rem their dependencies.
-cd %TARGET%
-
-rem This is slightly redundant with 'make installer-all'
-rem except in that case we have to do cygwin path translations for all the
-rem different versions of python
-${settings:python24} setup.py bdist_wininst --install-script="bzr-win32-bdist-postinstall.py" -d .
- at if %ERRORLEVEL% NEQ 0 (set BUILD_ERROR=%ERRORLEVEL%) & goto End
-
-${settings:python25} setup.py bdist_wininst --install-script="bzr-win32-bdist-postinstall.py" -d .
- at if %ERRORLEVEL% NEQ 0 (set BUILD_ERROR=%ERRORLEVEL%) & goto End
-
-${settings:python26} setup.py bdist_wininst --install-script="bzr-win32-bdist-postinstall.py" -d .
- at if %ERRORLEVEL% NEQ 0 (set BUILD_ERROR=%ERRORLEVEL%) & goto End
-
-cd %ROOT%/subvertpy/%PLUGIN_TARGET%
-%PYTHON% setup.py install -O1 --install-lib=%TARGET%
- at if %ERRORLEVEL% NEQ 0 (set BUILD_ERROR=%ERRORLEVEL%) & goto End
-
-cd %ROOT%/bzrtools/%PLUGIN_TARGET%
-%PYTHON% setup.py install -O1 --install-lib=%TARGET%
- at if %ERRORLEVEL% NEQ 0 (set BUILD_ERROR=%ERRORLEVEL%) & goto End
-
-cd %ROOT%/qbzr/%PLUGIN_TARGET%
-%PYTHON% setup.py install -O1 --install-lib=%TARGET%
- at if %ERRORLEVEL% NEQ 0 (set BUILD_ERROR=%ERRORLEVEL%) & goto End
-
-cd %ROOT%/bzr-svn/%PLUGIN_TARGET%
-%PYTHON% setup.py install -O1 --install-lib=%TARGET%
- at if %ERRORLEVEL% NEQ 0 (set BUILD_ERROR=%ERRORLEVEL%) & goto End
-
-cd %ROOT%/bzr-rewrite/%PLUGIN_TARGET%
-%PYTHON% setup.py install -O1 --install-lib=%TARGET%
- at if %ERRORLEVEL% NEQ 0 (set BUILD_ERROR=%ERRORLEVEL%) & goto End
-
-set PYTHONPATH=%PYTHONPATH%;%TARGET%
-cd %ROOT%/tbzr/trunk
-%PYTHON% setup.py build
- at if %ERRORLEVEL% NEQ 0 (set BUILD_ERROR=%ERRORLEVEL%) & goto End
-
-cd %TARGET%
-make installer PYTHON=%CYG_PYTHON%
- at if %ERRORLEVEL% NEQ 0 (set BUILD_ERROR=%ERRORLEVEL%) & goto End
-
-%PYTHON% %ROOT%/ostools.py copytodir %TARGET%/bzr*.exe %INSTALLERS%
- at if %ERRORLEVEL% NEQ 0 (set BUILD_ERROR=%ERRORLEVEL%) & goto End
-
-:End
-set PYTHONPATH=%ORIGINAL_PYTHONPATH%
-cd %ORIGINAL_DIRECTORY%
-exit /b %BUILD_ERROR%
=== removed file 'tools/win32/buildout.cfg'
--- a/tools/win32/buildout.cfg 2009-08-20 09:30:34 +0000
+++ b/tools/win32/buildout.cfg 1970-01-01 00:00:00 +0000
@@ -1,197 +0,0 @@
-[buildout]
-newest = false
-versions = versions
-parts =
- svn-lib
- svn-dev
- svn-db4
- svn-libintl
- zlib
- tortoise-overlays-win32
- tortoise-overlays-x64
-
- bzr
- qbzr
- tbzr
- bzrtools
- bzr-svn
- bzr-rewrite
- subvertpy
- templates
-
-develop =
-
-[versions]
-zc.buildout = 1.2.1
-setuptools = 0.6c9
-z3c.recipe.filetemplate = 2.0.3
-gf.recipe.bzr = 1.0rc8
-
-[settings]
-python24=c:\Python24\python.exe
-python25=c:\Python25\python.exe
-python26=c:\Python26\python.exe
-download-ignore-existing = false
-svn-dev-url =
- http://subversion.tigris.org/files/documents/15/45228/svn-win32-1.5.6_dev.zip
-svn-lib-url =
- http://subversion.tigris.org/files/documents/15/45222/svn-win32-1.5.6.zip
-svn-db4-url =
- http://subversion.tigris.org/files/documents/15/32472/db-4.4.20-win32.zip
-svn-libintl-url =
- http://subversion.tigris.org/files/documents/15/20739/svn-win32-libintl.zip
-tortoise-overlays-win32-url = http://guest:password@tortoisesvn.tigris.org/svn/tortoisesvn/TortoiseOverlays/version-1.0.4/bin/TortoiseOverlays-1.0.4.11886-win32.msi
-tortoise-overlays-x64-url = http://guest:password@tortoisesvn.tigris.org/svn/tortoisesvn/TortoiseOverlays/version-1.0.4/bin/TortoiseOverlays-1.0.4.11886-x64.msi
-zlib-url =
- http://www.zlib.net/zlib123-dll.zip
-
-bzr-release = 1.18
-# Older releases were @ http://bazaar-vcs.org, new releases are hosted directly
-# on Launchpad
-# bzr-release-url = http://bazaar-vcs.org/bzr/bzr.${settings:bzr-release}
-bzr-release-url = lp:bzr/${settings:bzr-release}
-bzr-trunk-url = http://bazaar-vcs.org/bzr/bzr.dev
-
-bzrtools-release = 1.18.0
-bzrtools-release-tag = tag:release-${settings:bzrtools-release}
-bzrtools-trunk-url = lp:bzrtools
-
-qbzr-release = 0.13.1
-qbzr-release-tag = tag:release-${settings:qbzr-release}
-qbzr-trunk-url = lp:qbzr
-
-tbzr-release = 0.1.0
-tbzr-release-tag = tag:release-${settings:tbzr-release}
-tbzr-trunk-url = lp:tortoisebzr
-
-bzr-svn-release = 0.6.4
-bzr-svn-release-tag = tag:bzr-svn-${settings:bzr-svn-release}
-bzr-svn-trunk-url = lp:bzr-svn
-
-# This isn't a typo, as of last release, the branch is lp:bzr-rewrite but the
-# tag is bzr-rebase-0.5.3
-bzr-rewrite-release = 0.5.3
-bzr-rewrite-release-tag = tag:bzr-rebase-${settings:bzr-rewrite-release}
-bzr-rewrite-trunk-url = lp:bzr-rewrite
-
-subvertpy-release = 0.6.8
-subvertpy-release-tag = tag:subvertpy-${settings:subvertpy-release}
-subvertpy-trunk-url = lp:subvertpy
-
-[templates]
-recipe = z3c.recipe.filetemplate
-source-directory = buildout-templates
-
-[svn-lib]
-recipe = hexagonit.recipe.download
-url = ${settings:svn-lib-url}
-ignore-existing = ${settings:download-ignore-existing}
-strip-top-level-dir = true
-destination = svn
-
-# This package needs to be extracted on top of svn-lib above, so we
-# explicitly set it to ignore existing here.
-[svn-dev]
-recipe = hexagonit.recipe.download
-url = ${settings:svn-dev-url}
-ignore-existing = true
-strip-top-level-dir = true
-destination = svn
-
-[svn-db4]
-recipe = hexagonit.recipe.download
-url = ${settings:svn-db4-url}
-ignore-existing = ${settings:download-ignore-existing}
-strip-top-level-dir = true
-destination = db4
-
-[svn-libintl]
-recipe = hexagonit.recipe.download
-url = ${settings:svn-libintl-url}
-ignore-existing = ${settings:download-ignore-existing}
-strip-top-level-dir = true
-destination = libintl
-
-[zlib]
-recipe = hexagonit.recipe.download
-url = ${settings:zlib-url}
-ignore-existing = ${settings:download-ignore-existing}
-strip-top-level-dir = false
-destination = zlib
-
-[tortoise-overlays-win32]
-recipe = hexagonit.recipe.download
-url = ${settings:tortoise-overlays-win32-url}
-ignore-existing = ${settings:download-ignore-existing}
-destination = tortoise-overlays
-download-only = true
-
-[tortoise-overlays-x64]
-recipe = hexagonit.recipe.download
-url = ${settings:tortoise-overlays-x64-url}
-ignore-existing = ${settings:download-ignore-existing}
-destination = tortoise-overlays
-download-only = true
-
-[bzr]
-recipe = gf.recipe.bzr:strict
-shared-repo = false
-format = 1.9
-urls =
- ${settings:bzr-release-url} release
- ${settings:bzr-trunk-url} trunk
-develop = false
-
-[bzrtools]
-recipe = gf.recipe.bzr:strict
-shared-repo = true
-format = 2a
-urls =
- ${settings:bzrtools-trunk-url} trunk
- ${buildout:directory}/bzrtools/trunk@${settings:bzrtools-release-tag} release
-develop = false
-
-[qbzr]
-recipe = gf.recipe.bzr:strict
-shared-repo = true
-format = 1.9
-urls =
- ${settings:qbzr-trunk-url} trunk
- ${buildout:directory}/qbzr/trunk@${settings:qbzr-release-tag} release
-develop = false
-
-[tbzr]
-recipe = gf.recipe.bzr:strict
-shared-repo = true
-format = 1.9
-urls =
- ${settings:tbzr-trunk-url} trunk
- ${buildout:directory}/tbzr/trunk@${settings:tbzr-release-tag} release
-develop = false
-
-[bzr-svn]
-recipe = gf.recipe.bzr:strict
-shared-repo = true
-format = 2a
-urls =
- ${settings:bzr-svn-trunk-url} trunk
- ${buildout:directory}/bzr-svn/trunk@${settings:bzr-svn-release-tag} release
-develop = false
-
-[bzr-rewrite]
-recipe = gf.recipe.bzr:strict
-shared-repo = true
-format = 1.9-rich-root
-urls =
- ${settings:bzr-rewrite-trunk-url} trunk
- ${buildout:directory}/bzr-rewrite/trunk@${settings:bzr-rewrite-release-tag} release
-develop = false
-
-[subvertpy]
-recipe = gf.recipe.bzr:strict
-shared-repo = true
-format = 1.9-rich-root
-urls =
- ${settings:subvertpy-trunk-url} trunk
- ${buildout:directory}/subvertpy/trunk@${settings:subvertpy-release-tag} release
-develop = false
=== removed file 'tools/win32/ostools.py'
--- a/tools/win32/ostools.py 2009-07-04 02:30:35 +0000
+++ b/tools/win32/ostools.py 1970-01-01 00:00:00 +0000
@@ -1,138 +0,0 @@
-#!/usr/bin/python
-
-"""Cross-platform os tools: files/directories manipulations
-Usage:
-
- ostools.py help
- prints this help
-
- ostools.py copytodir FILES... DIR
- copy files to specified directory
-
- ostools.py copytree FILES... DIR
- copy files to specified directory keeping relative paths
-
- ostools.py remove [FILES...] [DIRS...]
- remove files or directories (recursive)
-"""
-
-import glob
-import os
-import shutil
-import sys
-
-def makedir(dirname):
- if not os.path.exists(dirname):
- os.makedirs(dirname)
- if not os.path.isdir(dirname):
- print "Error: Destination is not a directory", dirname
- return 2
- return 0
-
-def main(argv=None):
- if argv is None:
- argv = sys.argv[1:]
-
- if not argv:
- argv = ['help']
-
- cmd = argv.pop(0)
-
- if cmd == 'help':
- print __doc__
- return 0
-
- if cmd == 'copytodir':
- if len(argv) < 2:
- print "Usage: ostools.py copytodir FILES... DIR"
- return 1
-
- todir = argv.pop()
- retcode = makedir(todir)
- if retcode:
- return retcode
-
- files = []
- for possible_glob in argv:
- files += glob.glob(possible_glob)
-
- for src in files:
- dest = os.path.join(todir, os.path.basename(src))
- shutil.copy(src, dest)
- print "Copied:", src, "=>", dest
-
- return 0
-
- if cmd == 'copytree':
- if len(argv) < 2:
- print "Usage: ostools.py copytree FILES... DIR"
- return 1
-
- todir = argv.pop()
- retcode = makedir(todir)
- if retcode:
- return retcode
-
- files = []
- for possible_glob in argv:
- files += glob.glob(possible_glob)
-
- for src in files:
- relative_path = src
- dest = os.path.join(todir, relative_path)
- dest_dir = os.path.dirname(dest)
- retcode = makedir(dest_dir)
- if retcode:
- return retcode
- shutil.copy(src, dest)
- print "Copied:", src, "=>", dest
-
- return 0
-
- if cmd == 'remove':
- if len(argv) == 0:
- print "Usage: ostools.py remove [FILES...] [DIRS...]"
- return 1
-
- filesdirs = []
- for possible_glob in argv:
- filesdirs += glob.glob(possible_glob)
-
- for i in filesdirs:
- if os.path.isdir(i):
- shutil.rmtree(i)
- print "Removed:", i
- elif os.path.isfile(i):
- os.remove(i)
- print "Removed:", i
- else:
- print "Not found:", i
-
- return 0
-
- if cmd == "basename":
- if len(argv) == 0:
- print "Usage: ostools.py basename [PATH | URL]"
- return 1
-
- for path in argv:
- print os.path.basename(path)
- return 0
-
- if cmd == 'makedir':
- if len(argv) == 0:
- print "Usage: ostools.py makedir DIR"
- return 1
-
- retcode = makedir(argv.pop())
- if retcode:
- return retcode
- return 0
-
- print "Usage error"
- print __doc__
- return 1
-
-
-if __name__ == "__main__":
- sys.exit(main())
=== removed file 'tools/win32/run_script.py'
--- a/tools/win32/run_script.py 2008-07-17 00:41:25 +0000
+++ b/tools/win32/run_script.py 1970-01-01 00:00:00 +0000
@@ -1,16 +0,0 @@
-# A utility that executes a script from our %PYTHON%\Scripts directory.
-# Example usage:
-# 'python run_script.py cog.py arg1 arg2'
-# which will locate %PYTHON_HOME%/Scripts/cog.py and execute it with the args.
-# This is only necessary for Windows, and only when the build process is
-# executed via a cygwin/*nix based make utility, which doesn't honor the
-# PATHEXT environment variable.
-import sys
-import os
-
-if __name__ == '__main__':
- # clobber me, new sys.argv[0] is the script to run.
- del sys.argv[0]
- assert not os.path.isabs(sys.argv[0]), "If you know the FQ path, just use it!"
- sys.argv[0] = os.path.join(sys.prefix, "Scripts", sys.argv[0])
- execfile(sys.argv[0])
More information about the bazaar-commits
mailing list