#!/usr/bin/env python # -*-coding:utf-8 -* import errno import getopt import os import subprocess import sys def mkdir_p(path): try: os.makedirs(path) except OSError as exc: # Python >2.5 if exc.errno == errno.EEXIST and os.path.isdir(path): pass else: raise def main(argv): """The main function treats the arguments given to our script.""" src_directory = os.getcwd() #build_directory = """./build""" install_directory = """/usr""" mpi_option = """""" try: opts, args = getopt.getopt(argv, """h""", ["""help""", """prefix=""", """MPI_ROOT_DIR=""", """make"""]) except getopt.GetoptError: print("""You gave incorrect arguments.""") sys.exit(2) for opt, arg in opts: if opt in ("-h", "--help"): print("""Possible options: h, help, prefix, MPI_ROOT_DIR.""") # Notice that the make option is hidden. sys.exit() elif opt in ("""--prefix"""): install_directory = str(arg) elif opt in ("""--MPI_ROOT_DIR"""): mpi_directory = str(arg) mpi_option = """-DMPI_ROOT_DIR=""" + mpi_directory # mkdir_p(build_directory) # os.chdir(build_directory) subprocess.call(["""cmake""", """-DCMAKE_INSTALL_PREFIX=""" + install_directory, """-DCMAKE_BUILD_TYPE=Release""", mpi_option, src_directory]) if __name__ == """__main__""": main(sys.argv[1:])