Mercurial > touhou
changeset 562:991c817d1e6b
Fail when libepoxy can’t be found, pass --disable-opengl to skip the OpenGL backend compilation.
author | Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> |
---|---|
date | Thu, 05 Jun 2014 18:48:24 +0200 |
parents | bafe6361c0af |
children | ab0a5580bc40 |
files | setup.py |
diffstat | 1 files changed, 22 insertions(+), 13 deletions(-) [+] |
line wrap: on
line diff
--- a/setup.py +++ b/setup.py @@ -25,7 +25,6 @@ extensions = [] debug = False # True to generate HTML annotations and display infered types. anmviewer = False # It’s currently broken anyway. -use_opengl = True # Compile the OpenGL backend if True nthreads = 4 # How many processes to use for Cython compilation. @@ -40,6 +39,28 @@ if sys.argv[1] == 'clean': sys.exit(0) +try: + sys.argv.remove('--disable-opengl') +except ValueError: + use_opengl = True +else: + use_opengl = False + + +# Check for epoxy.pc, and don’t compile the OpenGL backend if it isn’t present. +if use_opengl: + try: + check_output([COMMAND] + GL_LIBRARIES) + except CalledProcessError: + print('libepoxy not found. Please install it or pass --disable-opengl') + sys.exit(1) + except OSError: + # Assume GL is here if we can’t use pkg-config, but display a warning. + print('You don’t seem to have pkg-config installed. Please get a copy ' + 'from http://pkg-config.freedesktop.org/ and install it.\n' + 'Continuing without it, assuming every dependency is available.') + + default_libs = { 'sdl2': '-lSDL2', 'SDL2_image': '-lSDL2_image', @@ -49,18 +70,6 @@ default_libs = { } -# Check for epoxy.pc, and don’t compile the OpenGL backend if it isn’t present. -try: - check_output([COMMAND] + GL_LIBRARIES) -except CalledProcessError: - use_opengl = False -except OSError: - # Assume GL is here if we can’t use pkg-config, but display a warning. - print('You don’t seem to have pkg-config installed. Please get a copy ' - 'from http://pkg-config.freedesktop.org/ and install it.\n' - 'Continuing without it, assuming every dependency is available.') - - def get_arguments(arg, libraries): try: return check_output([COMMAND, arg] + libraries).split()