summaryrefslogtreecommitdiff
path: root/scons
diff options
context:
space:
mode:
authorJosé Fonseca <jfonseca@vmware.com>2012-02-07 11:17:35 +0000
committerJosé Fonseca <jfonseca@vmware.com>2012-02-07 11:41:08 +0000
commit2470e918cc29e5d057a28551ce9c15e7d83fab7e (patch)
tree9d0673c8ea17242d6391534d8a0e7cfb7c986093 /scons
parentf763ad51302a8b3517e85ae7f2ee94d40b1e0326 (diff)
scons: Require same pkg-config versions as configure.
Diffstat (limited to 'scons')
-rw-r--r--scons/custom.py5
-rwxr-xr-xscons/gallium.py12
2 files changed, 10 insertions, 7 deletions
diff --git a/scons/custom.py b/scons/custom.py
index 08073162e7..cc953bd999 100644
--- a/scons/custom.py
+++ b/scons/custom.py
@@ -174,6 +174,9 @@ def _pkg_check_modules(env, name, modules):
if subprocess.call(["pkg-config", "--exists", ' '.join(modules)]) != 0:
return
+ # Strip version expressions from modules
+ modules = [module.split(' ', 1)[0] for module in modules]
+
# Other flags may affect the compilation of unrelated targets, so store
# them with a prefix, (e.g., XXX_CFLAGS, XXX_LIBS, etc)
try:
@@ -189,7 +192,7 @@ def _pkg_check_modules(env, name, modules):
def pkg_check_modules(env, name, modules):
- sys.stdout.write('Checking for %s...' % name)
+ sys.stdout.write('Checking for %s (%s)...' % (name, ' '.join(modules)))
_pkg_check_modules(env, name, modules)
result = env['HAVE_' + name]
sys.stdout.write(' %s\n' % ['no', 'yes'][int(bool(result))])
diff --git a/scons/gallium.py b/scons/gallium.py
index eed89cf71c..c7e9e9caf7 100755
--- a/scons/gallium.py
+++ b/scons/gallium.py
@@ -507,12 +507,12 @@ def generate(env):
env.PkgCheckModules('X11', ['x11', 'xext', 'xdamage', 'xfixes'])
env.PkgCheckModules('XCB', ['x11-xcb', 'xcb-glx'])
env.PkgCheckModules('XF86VIDMODE', ['xxf86vm'])
- env.PkgCheckModules('DRM', ['libdrm'])
- env.PkgCheckModules('DRM_INTEL', ['libdrm_intel'])
- env.PkgCheckModules('DRM_RADEON', ['libdrm_radeon'])
- env.PkgCheckModules('XORG', ['xorg-server'])
- env.PkgCheckModules('KMS', ['libkms'])
- env.PkgCheckModules('UDEV', ['libudev'])
+ env.PkgCheckModules('DRM', ['libdrm >= 2.4.24'])
+ env.PkgCheckModules('DRM_INTEL', ['libdrm_intel >= 2.4.38'])
+ env.PkgCheckModules('DRM_RADEON', ['libdrm_radeon >= 2.4.31'])
+ env.PkgCheckModules('XORG', ['xorg-server >= 1.6.0'])
+ env.PkgCheckModules('KMS', ['libkms >= 2.4.24'])
+ env.PkgCheckModules('UDEV', ['libudev > 150'])
env['dri'] = env['x11'] and env['drm']