blob: c218b5fd5854f364a5d139c7393339573f321abd [file] [log] [blame]
Deepak Kodihalli3c275e12019-09-21 06:39:39 -05001if get_option('oe-sdk').enabled()
2 # Setup OE SYSROOT
3 OECORE_TARGET_SYSROOT = run_command('sh', '-c', 'echo $OECORE_TARGET_SYSROOT').stdout().strip()
4 if OECORE_TARGET_SYSROOT == ''
5 error('Unable to get $OECORE_TARGET_SYSROOT, check your environment.')
6 endif
7 message('OE_SYSROOT: ' + OECORE_TARGET_SYSROOT)
8 rpath = ':'.join([OECORE_TARGET_SYSROOT + '/lib', OECORE_TARGET_SYSROOT + '/usr/lib'])
9 ld_so = run_command('sh', '-c', 'find ' + OECORE_TARGET_SYSROOT + '/lib/ld-*.so | sort -r -n | head -n1').stdout().strip()
10 dynamic_linker = ['-Wl,-dynamic-linker,' + ld_so]
11else
12 dynamic_linker = []
13endif
14
Patrick Williams70c74882021-04-19 11:43:10 -050015gtest = dependency('gtest', main: true, disabler: true, required: false)
16gmock = dependency('gmock', disabler: true, required: false)
17if not gtest.found() or not gmock.found()
18 gtest_proj = import('cmake').subproject('googletest', required: false)
19 if gtest_proj.found()
20 gtest = declare_dependency(
21 dependencies: [
22 dependency('threads'),
23 gtest_proj.dependency('gtest'),
24 gtest_proj.dependency('gtest_main'),
25 ]
26 )
27 gmock = gtest_proj.dependency('gmock')
28 else
29 assert(
30 not get_option('tests').enabled(),
31 'Googletest is required if tests are enabled'
32 )
33 endif
34endif
35
Pavithra Barithaya51efaf82020-04-02 02:42:27 -050036pldmd = declare_dependency(
37 sources: [
Deepak Kodihalli1521f6d2020-06-16 08:51:02 -050038 '../pldmd/instance_id.cpp',
39 '../pldmd/dbus_impl_requester.cpp',
Deepak Kodihalliac19bd62020-06-16 08:25:23 -050040 '../host-bmc/host_pdr_handler.cpp',
41 '../host-bmc/dbus_to_host_effecters.cpp'])
Deepak Kodihalli3c275e12019-09-21 06:39:39 -050042
43tests = [
Deepak Kodihalli3c275e12019-09-21 06:39:39 -050044 'libpldmresponder_base_test',
Deepak Kodihalli3c275e12019-09-21 06:39:39 -050045 'libpldmresponder_bios_test',
John Wange2efdcc2020-02-12 17:02:06 +080046 'libpldmresponder_bios_attribute_test',
John Wang29683b52020-02-27 16:41:44 +080047 'libpldmresponder_bios_string_attribute_test',
John Wangd9659342020-02-27 16:46:05 +080048 'libpldmresponder_bios_config_test',
John Wang95e6b3c2020-02-13 09:43:24 +080049 'libpldmresponder_bios_integer_attribute_test',
John Wang3be70852020-02-13 15:59:04 +080050 'libpldmresponder_bios_enum_attribute_test',
George Liu456c9a22020-01-13 11:36:22 +080051 'libpldmresponder_pdr_effecter_test',
George Liu4371f2b2020-05-09 19:55:18 +080052 'libpldmresponder_pdr_sensor_test',
Deepak Kodihalli557dfb02019-05-12 13:11:17 +053053 'libpldmresponder_bios_table_test',
Jinu Joy Thomas8e92c6c2019-08-06 12:22:34 +053054 'libpldmresponder_platform_test',
Deepak Kodihalli4de4d002019-11-11 02:41:43 -060055 'pldmd_instanceid_test',
Deepak Kodihallibc669f12019-11-28 08:52:07 -060056 'pldmd_registration_test',
George Liu83409572019-12-24 18:42:54 +080057 'pldm_utils_test',
Deepak Kodihalli3b02ed82020-02-06 01:18:25 -060058 'libpldmresponder_fru_test',
Tom Joseph250c4752020-04-15 10:32:45 +053059 'libpldmresponder_dbus_to_host_effecter_test',
Deepak Kodihalli3c275e12019-09-21 06:39:39 -050060]
61
62if get_option('oem-ibm').enabled()
63 tests += [
Sampa Misraaea5dde2020-08-31 08:33:47 -050064 '../oem/ibm/test/libpldmresponder_fileio_test',
65 '../oem/ibm/test/libpldmresponder_oem_platform_test'
Deepak Kodihalli3c275e12019-09-21 06:39:39 -050066 ]
67endif
68
69foreach t : tests
70 test(t, executable(t.underscorify(), t + '.cpp',
71 implicit_include_directories: false,
72 link_args: dynamic_linker,
73 build_rpath: get_option('oe-sdk').enabled() ? rpath : '',
Deepak Kodihalli4de4d002019-11-11 02:41:43 -060074 dependencies: [
Patrick Williams6f4479c2021-04-16 21:39:44 -050075 libpldm_dep,
Deepak Kodihalli4de4d002019-11-11 02:41:43 -060076 libpldmresponder,
George Liuab437e52020-01-19 17:12:19 +080077 libpldmutils,
Deepak Kodihalli4de4d002019-11-11 02:41:43 -060078 gtest,
79 gmock,
Patrick Williams3b1dc012021-04-16 21:51:47 -050080 nlohmann_json,
Deepak Kodihalli4de4d002019-11-11 02:41:43 -060081 pldmd,
Manojkiran Eda001f7882021-01-04 18:21:18 +053082 phosphor_dbus_interfaces,
83 sdeventplus,
84 sdbusplus]),
Deepak Kodihalli3c275e12019-09-21 06:39:39 -050085 workdir: meson.current_source_dir())
86endforeach