blob: a9d0d35db8a204247c53e7ff166a28db0386d0bb [file] [log] [blame]
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(