diff options
| author | Paul Morelle <paul@scengrafics.com> | 2015-08-19 00:52:32 +0200 |
|---|---|---|
| committer | Matthew Iversen <teh.ivo@gmail.com> | 2015-09-19 20:54:55 +1000 |
| commit | 84a4a89068d1596d65b5a7139b33983654364296 (patch) | |
| tree | dc4c6e2c147dff6a08e5229f925f2ee994201462 /virtualenv_embedded/python-config | |
| parent | a2292600206e7307b06fde6b8f59a82ac3477910 (diff) | |
| download | virtualenv-84a4a89068d1596d65b5a7139b33983654364296.tar.gz | |
Adding python-config script to virtualenv_embeded
File was missing, as commented Ivoz (Matt Iversen)
References pypa/virtualenv#169
Diffstat (limited to 'virtualenv_embedded/python-config')
| -rw-r--r-- | virtualenv_embedded/python-config | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/virtualenv_embedded/python-config b/virtualenv_embedded/python-config new file mode 100644 index 0000000..c46f29c --- /dev/null +++ b/virtualenv_embedded/python-config @@ -0,0 +1,55 @@ +#!__VIRTUAL_ENV__/__BIN_NAME__/python + +import sys +import os +import getopt +from distutils import sysconfig + +valid_opts = ['prefix', 'exec-prefix', 'includes', 'libs', 'cflags', + 'ldflags', 'help'] + +def exit_with_usage(code=1): + print >>sys.stderr, "Usage: %s [%s]" % (sys.argv[0], + '|'.join('--'+opt for opt in valid_opts)) + sys.exit(code) + +try: + opts, args = getopt.getopt(sys.argv[1:], '', valid_opts) +except getopt.error: + exit_with_usage() + +if not opts: + exit_with_usage() + +pyver = sysconfig.get_config_var('VERSION') +getvar = sysconfig.get_config_var + +opt_flags = [flag for (flag, val) in opts] + +if '--help' in opt_flags: + exit_with_usage(code=0) + +for opt in opt_flags: + if opt == '--prefix': + print sysconfig.PREFIX + + elif opt == '--exec-prefix': + print sysconfig.EXEC_PREFIX + + elif opt in ('--includes', '--cflags'): + flags = ['-I' + sysconfig.get_python_inc(), + '-I' + sysconfig.get_python_inc(plat_specific=True)] + if opt == '--cflags': + flags.extend(getvar('CFLAGS').split()) + print ' '.join(flags) + + elif opt in ('--libs', '--ldflags'): + libs = getvar('LIBS').split() + getvar('SYSLIBS').split() + libs.append('-lpython'+pyver) + # add the prefix/lib/pythonX.Y/config dir, but only if there is no + # shared library in prefix/lib/. + if opt == '--ldflags': + if not getvar('Py_ENABLE_SHARED'): + libs.insert(0, '-L' + getvar('LIBPL')) + libs.extend(getvar('LINKFORSHARED').split()) + print ' '.join(libs) |
