##// END OF EJS Templates
Cleaned up release tools directory....
Cleaned up release tools directory. Converted almost all to python scripts and made toollib to collect common functions and avoid repetition. Properly commented and documented what each script does. The run_ipy_in_profiler one seems broken, I'm not sure what to do with it. We need to either fix it or remove it later, but it's not critical for 0.10.

File last commit:

r1238:88d61a9a
r2118:ec9810f7
Show More
setupexe.py
106 lines | 3.2 KiB | text/x-python | PythonLexer
#!/usr/bin/env python
# -*- coding: utf-8 -*-
r"""Setup script for exe distribution of IPython (does not require python).
- Requires py2exe
- install pyreadline *package dir* in ipython root directory by running:
svn co http://ipython.scipy.org/svn/ipython/pyreadline/branches/maintenance_1.3/pyreadline/
wget http://ipython.scipy.org/svn/ipython/pyreadline/branches/maintenance_1.3/readline.py
OR (if you want the latest trunk):
svn co http://ipython.scipy.org/svn/ipython/pyreadline/trunk/pyreadline
- Create the distribution in 'dist' by running "python exesetup.py py2exe"
- Run ipython.exe to go.
"""
#*****************************************************************************
# Copyright (C) 2001-2005 Fernando Perez <fperez@colorado.edu>
#
# Distributed under the terms of the BSD License. The full license is in
# the file COPYING, distributed as part of this software.
#*****************************************************************************
# Stdlib imports
import os
import sys
from glob import glob
# A few handy globals
isfile = os.path.isfile
pjoin = os.path.join
from distutils.core import setup
from distutils import dir_util
import py2exe
# update the manuals when building a source dist
# Release.py contains version, authors, license, url, keywords, etc.
execfile(pjoin('IPython','Release.py'))
# A little utility we'll need below, since glob() does NOT allow you to do
# exclusion on multiple endings!
def file_doesnt_endwith(test,endings):
"""Return true if test is a file and its name does NOT end with any
of the strings listed in endings."""
if not isfile(test):
return False
for e in endings:
if test.endswith(e):
return False
return True
egg_extra_kwds = {}
# Call the setup() routine which does most of the work
setup(name = name,
options = {
'py2exe': {
'packages' : ['IPython', 'IPython.Extensions', 'IPython.external',
'pyreadline'],
'excludes' : ["Tkconstants","Tkinter","tcl",'IPython.igrid','wx',
'wxPython','igrid', 'PyQt4', 'zope', 'Zope', 'Zope2',
'_curses','enthought.traits','gtk','qt', 'pydb','idlelib',
]
}
},
version = version,
description = description,
long_description = long_description,
author = authors['Fernando'][0],
author_email = authors['Fernando'][1],
url = url,
download_url = download_url,
license = license,
platforms = platforms,
keywords = keywords,
console = ['ipykit.py'],
# extra params needed for eggs
**egg_extra_kwds
)
minimal_conf = """
import IPython.ipapi
ip = IPython.ipapi.get()
ip.load('ipy_kitcfg')
import ipy_profile_sh
"""
if not os.path.isdir("dist/_ipython"):
print "Creating simple _ipython dir"
os.mkdir("dist/_ipython")
open("dist/_ipython/ipythonrc.ini","w").write("# intentionally blank\n")
open("dist/_ipython/ipy_user_conf.py","w").write(minimal_conf)
if os.path.isdir('bin'):
dir_util.copy_tree('bin','dist/bin')