xref: /openbmc/phosphor-hwmon/test/meson.build (revision a385d8999fa1893690e150383c93b2b91f43d339)
1bb25973aSWilliam A. Kennington IIIgtest = dependency('gtest', main: true, disabler: true, required: false)
2bb25973aSWilliam A. Kennington IIIgmock = dependency('gmock', disabler: true, required: false)
3bb25973aSWilliam A. Kennington IIIif not gtest.found() or not gmock.found()
4bb25973aSWilliam A. Kennington III    gtest_opts = import('cmake').subproject_options()
5bb25973aSWilliam A. Kennington III    gtest_opts.add_cmake_defines({'CMAKE_CXX_FLAGS': '-Wno-pedantic'})
6bb25973aSWilliam A. Kennington III    gtest_proj = import('cmake').subproject(
7bb25973aSWilliam A. Kennington III        'googletest',
8bb25973aSWilliam A. Kennington III        options: gtest_opts,
9*a385d899SPatrick Williams        required: false,
10*a385d899SPatrick Williams    )
11bb25973aSWilliam A. Kennington III    if gtest_proj.found()
12bb25973aSWilliam A. Kennington III        gtest = declare_dependency(
13bb25973aSWilliam A. Kennington III            dependencies: [
14bb25973aSWilliam A. Kennington III                dependency('threads'),
15bb25973aSWilliam A. Kennington III                gtest_proj.dependency('gtest'),
16bb25973aSWilliam A. Kennington III                gtest_proj.dependency('gtest_main'),
17*a385d899SPatrick Williams            ],
18*a385d899SPatrick Williams        )
19bb25973aSWilliam A. Kennington III        gmock = gtest_proj.dependency('gmock')
20bb25973aSWilliam A. Kennington III    else
2158bd8ba8SPatrick Williams        assert(not get_option('tests').allowed(), 'Googletest is required')
22bb25973aSWilliam A. Kennington III    endif
23bb25973aSWilliam A. Kennington IIIendif
24bb25973aSWilliam A. Kennington III
25bb25973aSWilliam A. Kennington IIItests = [
265906173aSBrad Bishop    'average_unittest',
275906173aSBrad Bishop    'env_unittest',
285906173aSBrad Bishop    'fanpwm_unittest',
295906173aSBrad Bishop    'hwmon_unittest',
305906173aSBrad Bishop    'hwmonio_default_unittest',
315906173aSBrad Bishop    'sensor_unittest',
32bb25973aSWilliam A. Kennington III]
33bb25973aSWilliam A. Kennington III
34bb25973aSWilliam A. Kennington IIIforeach t : tests
35bb25973aSWilliam A. Kennington III    test(
36bb25973aSWilliam A. Kennington III        t,
37bb25973aSWilliam A. Kennington III        executable(
38bb25973aSWilliam A. Kennington III            t.underscorify(),
39bb25973aSWilliam A. Kennington III            t + '.cpp',
405906173aSBrad Bishop            'gpio.cpp',
41bb25973aSWilliam A. Kennington III            implicit_include_directories: false,
42*a385d899SPatrick Williams            dependencies: [hwmon_dep, gtest, gmock],
43*a385d899SPatrick Williams        ),
44*a385d899SPatrick Williams    )
45bb25973aSWilliam A. Kennington IIIendforeach
46