scons: Require same pkg-config versions as configure.

This commit is contained in:
José Fonseca 2012-02-07 11:17:35 +00:00
parent f763ad5130
commit 2470e918cc
2 changed files with 10 additions and 7 deletions

View File

@ -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))])

View File

@ -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']