xref: /dpdk/buildtools/meson.build (revision 50614ebc112e53d54193f8b14ff7d1b37b5be15b)
16c9457c2SBruce Richardson# SPDX-License-Identifier: BSD-3-Clause
2fa647c57SAnand Rawat# Copyright(c) 2017-2019 Intel Corporation
3fa647c57SAnand Rawat
4af331158SThomas Monjalonpkgconf = find_program('pkg-config', 'pkgconf', required: false)
54c824734SHaiyue Wangcheck_symbols = find_program('check-symbols.sh')
6af331158SThomas Monjalonldflags_ibverbs_static = find_program('options-ibverbs-static.sh')
7ff962da3SBruce Richardson
89ab7baa5SLuca Boccassipython3_required_modules = []
99ab7baa5SLuca Boccassiif host_machine.system() != 'windows'
109ab7baa5SLuca Boccassi    python3_required_modules = ['elftools']
119ab7baa5SLuca Boccassiendif
129ab7baa5SLuca Boccassipython3 = import('python').find_installation('python3', required: false, modules: python3_required_modules)
134c773788SBruce Richardsonif python3.found()
14f5ab2074SBruce Richardson    py3 = [python3]
154c773788SBruce Richardsonelse
16f5ab2074SBruce Richardson    py3 = ['meson', 'runpython']
174c773788SBruce Richardsonendif
18e8c90926SDmitry Kozlyukecho = py3 + ['-c', 'import sys; print(*sys.argv[1:])']
19627c5b41SDavid Marchandlist_dir_globs = py3 + files('list-dir-globs.py')
20309bf90bSTal Shnaidermanmap_to_win_cmd = py3 + files('map_to_win.py')
21f5ab2074SBruce Richardsonsphinx_wrapper = py3 + files('call-sphinx-build.py')
228ef09fdcSJuraj Linkešget_cpu_count_cmd = py3 + files('get-cpu-count.py')
238ef09fdcSJuraj Linkešget_numa_count_cmd = py3 + files('get-numa-count.py')
240aeaf75dSBruce Richardsonget_test_suites_cmd = py3 + files('get-test-suites.py')
25*50614ebcSStephen Hemmingerheader_gen_cmd = py3 + files('gen-header.py')
260aeaf75dSBruce Richardsonhas_hugepages_cmd = py3 + files('has-hugepages.py')
2737666691SBruce Richardsoncmdline_gen_cmd = py3 + files('dpdk-cmdline-gen.py')
287f932642SJuraj Linkešcheck_dts_requirements = py3 + files('check-dts-requirements.py')
2937666691SBruce Richardson
3037666691SBruce Richardson# install any build tools that end-users might want also
3137666691SBruce Richardsoninstall_data([
3237666691SBruce Richardson            'dpdk-cmdline-gen.py',
3337666691SBruce Richardson        ],
3437666691SBruce Richardson        install_dir: 'bin')
355031436fSDmitry Kozlyuk
36e6e9730cSDmitry Kozlyuk# select library and object file format
373feefc80SDmitry Kozlyukpmdinfo = py3 + files('gen-pmdinfo-cfile.py') + [meson.current_build_dir()]
38f0f93a7aSDmitry Kozlyukpmdinfogen = py3 + files('pmdinfogen.py')
395031436fSDmitry Kozlyukif host_machine.system() == 'windows'
40e6e9730cSDmitry Kozlyuk    if cc.get_id() == 'gcc'
41e6e9730cSDmitry Kozlyuk        pmdinfo += 'ar'
42e6e9730cSDmitry Kozlyuk    else
43e6e9730cSDmitry Kozlyuk        pmdinfo += 'llvm-ar'
44e6e9730cSDmitry Kozlyuk    endif
455031436fSDmitry Kozlyuk    pmdinfogen += 'coff'
464bab7ea6SKarl Bonde Torpelif host_machine.system() == 'freebsd'
474bab7ea6SKarl Bonde Torp    pmdinfo += 'llvm-ar'
484bab7ea6SKarl Bonde Torp    pmdinfogen += 'elf'
495031436fSDmitry Kozlyukelse
50e6e9730cSDmitry Kozlyuk    pmdinfo += 'ar'
515031436fSDmitry Kozlyuk    pmdinfogen += 'elf'
525031436fSDmitry Kozlyukendif
53