#!/usr/bin/env python """IPython release build script. """ import os from toollib import * # The windows builds are fairly painful to set up on a posix system via wine, # so by default we've disabled them and we just build the windows installers # separately in a true Windows VM. do_windows = False # Egg building is also disabled by default. They serve no real purpose in # python2, and getting a setupegg.py file that has valid python2/3 syntax is a # pain in the ass. Since the python devs were too stubborn to leave execfile() # in place in python3, then we just don't build eggs. do_eggs = False # Get main ipython dir, this will raise if it doesn't pass some checks ipdir = get_ipdir() cd(ipdir) # Load release info execfile(pjoin('IPython', 'core', 'release.py')) # Check that everything compiles compile_tree() # Cleanup for d in ['build', 'dist', pjoin('docs', 'build'), pjoin('docs', 'dist'), pjoin('docs', 'source', 'api', 'generated')]: if os.path.isdir(d): remove_tree(d) # Build source and binary distros sh(sdists) # Build eggs if do_eggs: sh(eggs) if do_windows: map(sh, win_builds) # Change name so retarded Vista runs the installer correctly sh("rename 's/linux-i686/win32/' dist/*.exe") sh("rename 's/linux-x86_64/win32/' dist/*.exe") # exe files aren't really executable under *nix. sh("chmod -x dist/*.exe")