sconstruct #10

  • //
  • guest/
  • robert_cowham/
  • perforce/
  • API/
  • python/
  • main/
  • sconstruct
  • View
  • Commits
  • Open Download .zip Download (1 KB)
# Sconstruct file for P4Python
# see www.scons.org for details.
# $Id: //guest/robert_cowham/perforce/API/python/main/sconstruct#10 $

import glob
import os
import sys

def dist_name():
    "Work out the name of the built windows executable"
    sys.path.insert(0, '.')
    from setup import NAME, VERSION
    ver = sys.version[0:3]
    name = NAME + "-" + VERSION + ".win32-py" + ver + ".exe"
    return os.path.join('dist', name)

def dist_targets(target, source, env):
    target = [dist_name()]
    return target, source

create_dist = Builder(action = 'setup.py bdist_wininst',
                      emitter = dist_targets)

files = ['p4.py', 'setup.py', 'setup.cfg', 'P4Clientmodule.cc', 'P4.html', 'CHANGELOG.txt', 'LICENSE.txt',
         'DEBUG.txt', 'test_apis.bat']
files.extend(glob.glob('test/*.py'))
files.extend(glob.glob('utils/*.py'))

zip_file = 'p4python.zip'

env = Environment()
env.Append(BUILDERS = {'Dist' : create_dist})

dist = dist_name()
env.Dist('setup.py')
Depends(dist, files)

env.Zip(zip_file, files)

# Default targets to build
Default(zip_file, dist)

# Change User Description Committed
#10 6044 Robert Cowham Change filetypes
#9 6043 Robert Cowham Changed license (with Mike's agreement) to make it more easily distributable and also maintainable by Perforce
#8 5967 Robert Cowham - Upgrade to use Perforce API 2007.2 (new structure of api dirs and minor code change)
#7 5966 Robert Cowham - Bug fix in spec handling as suggested by Peter Fornwall
- Also changed API handling suggested by Peter to allow standard argument parsing
- Upgraded version to 1.0
#6 5754 Robert Cowham Added new attributes (and tests):

GetConfig
SetProg
SetVersion
SetTicketFile
#5 5747 Robert Cowham Improved the spec test for 2005.2 API
#4 5059 Robert Cowham Tidied docs and ensured added to .zip file.
#3 5057 Robert Cowham - Added P4Error class and catch all errors - shouldn't see P4Client.error any more!
- Raise the error when appropriate.
- Added translate() function to allow working with Internationalised servers.
- Fix problem with diff2 and diff
#2 4771 Robert Cowham Revised build procedures.
Release updated binaries from previous checkin.
#1 4766 Robert Cowham Rather better documentation (and license and changelog).
Reorganised dirs.
Added .zip file and windows binary installer.