1# SPDX-License-Identifier: BSD-3-Clause 2# Copyright(c) 2017-2019 Intel Corporation 3 4pkgconf = find_program('pkg-config', 'pkgconf', required: false) 5check_symbols = find_program('check-symbols.sh') 6ldflags_ibverbs_static = find_program('options-ibverbs-static.sh') 7 8python3_required_modules = [] 9if host_machine.system() != 'windows' 10 python3_required_modules = ['elftools'] 11endif 12python3 = import('python').find_installation('python3', required: false) 13if python3.found() 14 python3 = import('python').find_installation('python3', required: true, 15 modules: python3_required_modules) 16 py3 = [python3] 17else 18 py3 = ['meson', 'runpython'] 19endif 20echo = py3 + ['-c', 'import sys; print(*sys.argv[1:])'] 21gen_version_map = py3 + files('gen-version-map.py') 22list_dir_globs = py3 + files('list-dir-globs.py') 23sphinx_wrapper = py3 + files('call-sphinx-build.py') 24get_cpu_count_cmd = py3 + files('get-cpu-count.py') 25get_numa_count_cmd = py3 + files('get-numa-count.py') 26get_min_meson_version_cmd = py3 + files('get-min-meson-version.py') 27get_test_suites_cmd = py3 + files('get-test-suites.py') 28header_gen_cmd = py3 + files('gen-header.py') 29has_hugepages_cmd = py3 + files('has-hugepages.py') 30cmdline_gen_cmd = py3 + files('dpdk-cmdline-gen.py') 31check_dts_requirements = py3 + files('check-dts-requirements.py') 32 33# check that we can correctly report minimum Meson version 34min_ver = run_command(get_min_meson_version_cmd, check: true, capture: true) 35message('Minimum Meson required version is ' + min_ver.stdout()) 36 37# install any build tools that end-users might want also 38install_data([ 39 'dpdk-cmdline-gen.py', 40 ], 41 install_dir: 'bin') 42 43# select library and object file format 44pmdinfo = py3 + files('gen-pmdinfo-cfile.py') 45pmdinfogen = py3 + files('pmdinfogen.py') 46if host_machine.system() == 'windows' 47 if cc.get_id() == 'gcc' 48 pmdinfo += 'ar' 49 elif cc.get_id() == 'msvc' 50 pmdinfo += 'lib' 51 else 52 pmdinfo += 'llvm-ar' 53 endif 54 pmdinfogen += 'coff' 55elif host_machine.system() == 'freebsd' 56 pmdinfo += 'llvm-ar' 57 pmdinfogen += 'elf' 58else 59 pmdinfo += 'ar' 60 pmdinfogen += 'elf' 61endif 62

