| diff -Naur python/setup.py python/setup.py |
| --- python/setup.py 2015-12-30 22:21:46.000000000 +0100 |
| +++ python/setup.py 2016-04-18 00:51:49.490809789 +0200 |
| @@ -190,15 +190,27 @@ |
| extra_compile_args.append('-Werror') |
| sys.argv.remove(warnings_as_errors) |
| |
| + inclD = ['.', '../src'] |
| + libD = [] |
| + try: |
| + subprocess.check_call(['pkg-config', '--exists', 'protobuf']) |
| + inclD += subprocess.check_output(['pkg-config','--variable=includedir','protobuf']).decode().split() |
| + libD = subprocess.check_output(['pkg-config','--variable=libdir','protobuf']).decode().split() |
| + except OSError as osex: |
| + if osex.errno == errno.ENOENT: |
| + info('pkg-config not found') |
| + else: |
| + warn("Running pkg-config failed - %s." % osex) |
| + libD = ['../src/.libs'] |
| # C++ implementation extension |
| ext_module_list.extend([ |
| Extension( |
| "google.protobuf.pyext._message", |
| glob.glob('google/protobuf/pyext/*.cc'), |
| - include_dirs=[".", "../src"], |
| + include_dirs=inclD, |
| libraries=libraries, |
| extra_objects=extra_objects, |
| - library_dirs=['../src/.libs'], |
| + library_dirs=libD, |
| extra_compile_args=extra_compile_args, |
| ), |
| Extension( |
| |