zine-main / configure

#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
    Configure
    ~~~~~~~~~

    Simple configure script that creates a makefile.

    :copyright: (c) 2010 by the Zine Team, see AUTHORS for more details.
    :license: BSD, see LICENSE for more details.
"""
import os
import sys
from optparse import OptionParser


def main():
    global parser
    parser = OptionParser(usage='%prog')
    parser.add_option('--prefix', dest='prefix', default='/usr/local',
                      help='install architecture-independent files in PREFIX '
                           '[/usr/local]')
    parser.add_option('--python', dest='python', default=sys.executable,
                      help='the python version to use for the installation')
    options, args = parser.parse_args()

    if args:
        parser.error('too many arguments')

    f = file('Makefile.in')
    try:
        makefile_in = f.read()
    finally:
        f.close()
    f = file('Makefile', 'w')
    try:
        f.write(makefile_in % {
            'PYTHON':       options.python,
            'PREFIX':       os.path.abspath(options.prefix)
        })
    finally:
        f.close()
    print 'Generated Makefile'
    print 'type "make install" to install Zine'


if __name__ == '__main__':
    os.chdir(os.path.dirname(__file__) or '.')
    main()
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.