17ef54422SSunnySrivastava1984if get_option('oe-sdk').enabled()
27ef54422SSunnySrivastava1984  # Setup OE SYSROOT
37ef54422SSunnySrivastava1984  OECORE_TARGET_SYSROOT = run_command('sh', '-c', 'echo $OECORE_TARGET_SYSROOT').stdout().strip()
47ef54422SSunnySrivastava1984  if OECORE_TARGET_SYSROOT == ''
57ef54422SSunnySrivastava1984      error('Unable to get $OECORE_TARGET_SYSROOT, check your environment.')
67ef54422SSunnySrivastava1984  endif
77ef54422SSunnySrivastava1984  message('OE_SYSROOT: ' + OECORE_TARGET_SYSROOT)
87ef54422SSunnySrivastava1984  rpath = ':'.join([OECORE_TARGET_SYSROOT + '/lib', OECORE_TARGET_SYSROOT + '/usr/lib'])
97ef54422SSunnySrivastava1984  ld_so = run_command('sh', '-c', 'find ' + OECORE_TARGET_SYSROOT + '/lib/ld-*.so | sort -r -n | head -n1').stdout().strip()
107ef54422SSunnySrivastava1984  dynamic_linker = ['-Wl,-dynamic-linker,' + ld_so]
117ef54422SSunnySrivastava1984else
127ef54422SSunnySrivastava1984  dynamic_linker = []
137ef54422SSunnySrivastava1984endif
147ef54422SSunnySrivastava1984gmock = dependency('gmock', disabler: true, required: build_tests)
157ef54422SSunnySrivastava1984gtest = dependency('gtest', main: true, disabler: true, required: build_tests)
16*97f8df0eSSunnySrivastava1984dependecy_list = [gtest, gmock, sdbusplus, phosphor_logging, phosphor_dbus_interfaces]
177ef54422SSunnySrivastava1984
18*97f8df0eSSunnySrivastava1984configuration_inc = include_directories('..', '../vpd-manager', 'vpd-manager-test')
197ef54422SSunnySrivastava1984
20*97f8df0eSSunnySrivastava1984vpd_test = ['store/store.cpp',
21*97f8df0eSSunnySrivastava1984            'ipz_parser/parser.cpp',
22*97f8df0eSSunnySrivastava1984            'keyword_vpd_parser_test/kw_vpd_test.cpp',
23*97f8df0eSSunnySrivastava1984            'vpd-manager-test/reader_test.cpp',
247ef54422SSunnySrivastava1984           ]
25*97f8df0eSSunnySrivastava1984
26*97f8df0eSSunnySrivastava1984application_src =['../impl.cpp',
277ef54422SSunnySrivastava1984                   '../vpdecc/vpdecc.c',
28*97f8df0eSSunnySrivastava1984                   '../vpdecc/vpdecc_support.c',
29*97f8df0eSSunnySrivastava1984                   '../parser.cpp',
30*97f8df0eSSunnySrivastava1984                   '../utils.cpp',
31*97f8df0eSSunnySrivastava1984                   '../vpd-manager/reader_impl.cpp',
32*97f8df0eSSunnySrivastava1984                   '../keyword_vpd_parser.cpp',
337ef54422SSunnySrivastava1984                  ]
34*97f8df0eSSunnySrivastava1984
357ef54422SSunnySrivastava1984foreach t : vpd_test
367ef54422SSunnySrivastava1984    test(t, executable(t.underscorify(),
377ef54422SSunnySrivastava1984            [t, application_src],
387ef54422SSunnySrivastava1984    build_rpath: get_option('oe-sdk').enabled() ? rpath : '',
397ef54422SSunnySrivastava1984    link_args: dynamic_linker,
40*97f8df0eSSunnySrivastava1984    cpp_args: ['-DIPZ_PARSER', '-DManagerTest'],
417ef54422SSunnySrivastava1984    c_args: ['-Wno-unused-parameter',
427ef54422SSunnySrivastava1984      '-Wno-unused-variable'],
43*97f8df0eSSunnySrivastava1984    dependencies: dependecy_list,
44*97f8df0eSSunnySrivastava1984    include_directories: configuration_inc
457ef54422SSunnySrivastava1984    ),
467ef54422SSunnySrivastava1984    workdir: meson.current_source_dir())
477ef54422SSunnySrivastava1984endforeach
48