Prefer pkgconfig for `GTestDependency`

pull/4114/head
David Seifert 7 years ago
parent 3d86a24b55
commit 0aa973777f
No known key found for this signature in database
GPG Key ID: CE36E117202E3842
  1. 22
      mesonbuild/dependencies/dev.py

@ -15,14 +15,14 @@
# This file contains the detection logic for external dependencies useful for
# development purposes, such as testing, debugging, etc..
import functools
import os
import re
from .. import mlog
from .. import mesonlib
from ..mesonlib import version_compare, stringlistify, extract_as_list
from .base import (
DependencyException, ExternalDependency, PkgConfigDependency,
DependencyException, DependencyMethods, ExternalDependency, PkgConfigDependency,
strip_system_libdirs, ConfigToolDependency,
)
@ -80,6 +80,24 @@ class GTestDependency(ExternalDependency):
else:
return 'building self'
@classmethod
def _factory(cls, environment, kwargs):
methods = cls._process_method_kw(kwargs)
candidates = []
if DependencyMethods.PKGCONFIG in methods:
pcname = 'gtest_main' if kwargs.get('main', False) else 'gtest'
candidates.append(functools.partial(PkgConfigDependency, pcname, environment, kwargs))
if DependencyMethods.SYSTEM in methods:
candidates.append(functools.partial(GTestDependency, environment, kwargs))
return candidates
@staticmethod
def get_methods():
return [DependencyMethods.PKGCONFIG, DependencyMethods.SYSTEM]
class GMockDependency(ExternalDependency):
def __init__(self, environment, kwargs):

Loading…
Cancel
Save