mdwsetup.py (pkg_config): Check environment for settings.
authorMark Wooding <mdw@distorted.org.uk>
Tue, 1 Oct 2019 21:57:40 +0000 (22:57 +0100)
committerMark Wooding <mdw@distorted.org.uk>
Fri, 8 May 2020 11:30:13 +0000 (12:30 +0100)
This can override or replace pkg-config(1), similar to the
`PKG_CHECK_MODULES' Autoconf macro.

mdwsetup.py

index 322e194..06990a8 100644 (file)
@@ -104,11 +104,14 @@ def pkg_config(pkg, version):
 
   spec = '%s >= %s' % (pkg, version)
 
-  for word in progoutput(['pkg-config', '--cflags', spec]).split():
+  try: cflags = OS.environ["%s_CFLAGS" % pkg]
+  except KeyError: cflags = progoutput(['pkg-config', '--cflags', spec])
+  for word in cflags.split():
     if word.startswith('-I'): INCLUDEDIRS.append(word[2:])
     else: weird('CFLAGS', word)
-
-  for word in progoutput(['pkg-config', '--libs', spec]).split():
+  try: libs = OS.environ["%s_LIBS" % pkg]
+  except KeyError: libs = progoutput(['pkg-config', '--libs', spec])
+  for word in libs.split():
     if word.startswith('-L'): LIBDIRS.append(word[2:])
     elif word.startswith('-l'): LIBS.append(word[2:])
     else: weird('LIBS', word)