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)
1697f8df0eSSunnySrivastava1984dependecy_list = [gtest, gmock, sdbusplus, phosphor_logging, phosphor_dbus_interfaces]
177ef54422SSunnySrivastava1984
18*e12b181bSSunnySrivastava1984configuration_inc = include_directories('..', '../vpd-manager', 'vpd-manager-test', '../vpd-parser')
197ef54422SSunnySrivastava1984
2097f8df0eSSunnySrivastava1984vpd_test = ['store/store.cpp',
2197f8df0eSSunnySrivastava1984            'ipz_parser/parser.cpp',
2297f8df0eSSunnySrivastava1984            'keyword_vpd_parser_test/kw_vpd_test.cpp',
2397f8df0eSSunnySrivastava1984            'vpd-manager-test/reader_test.cpp',
24a0d460e2SSunnySrivastava1984            'vpd-manager-test/editor_test.cpp'
257ef54422SSunnySrivastava1984           ]
2697f8df0eSSunnySrivastava1984
2797f8df0eSSunnySrivastava1984application_src =['../impl.cpp',
287ef54422SSunnySrivastava1984                   '../vpdecc/vpdecc.c',
2997f8df0eSSunnySrivastava1984                   '../vpdecc/vpdecc_support.c',
30*e12b181bSSunnySrivastava1984                   '../vpd-parser/ipz_parser.cpp',
3197f8df0eSSunnySrivastava1984                   '../utils.cpp',
3297f8df0eSSunnySrivastava1984                   '../vpd-manager/reader_impl.cpp',
33*e12b181bSSunnySrivastava1984                   '../vpd-parser/keyword_vpd_parser.cpp',
34*e12b181bSSunnySrivastava1984                   '../vpd-manager/editor_impl.cpp',
35*e12b181bSSunnySrivastava1984                   '../vpd-parser/parser_factory.cpp',
36*e12b181bSSunnySrivastava1984                   '../vpd-parser/memory_vpd_parser.cpp'
377ef54422SSunnySrivastava1984                  ]
3897f8df0eSSunnySrivastava1984
397ef54422SSunnySrivastava1984foreach t : vpd_test
407ef54422SSunnySrivastava1984    test(t, executable(t.underscorify(),
417ef54422SSunnySrivastava1984            [t, application_src],
427ef54422SSunnySrivastava1984    build_rpath: get_option('oe-sdk').enabled() ? rpath : '',
437ef54422SSunnySrivastava1984    link_args: dynamic_linker,
4497f8df0eSSunnySrivastava1984    cpp_args: ['-DIPZ_PARSER', '-DManagerTest'],
457ef54422SSunnySrivastava1984    c_args: ['-Wno-unused-parameter',
467ef54422SSunnySrivastava1984      '-Wno-unused-variable'],
4797f8df0eSSunnySrivastava1984    dependencies: dependecy_list,
4897f8df0eSSunnySrivastava1984    include_directories: configuration_inc
497ef54422SSunnySrivastava1984    ),
507ef54422SSunnySrivastava1984    workdir: meson.current_source_dir())
517ef54422SSunnySrivastava1984endforeach
52