meson_version: '>= 0.47.1'
)
+# check for developer mode
+developer_mode = false
+if get_option('developer_mode').auto()
+ if meson.version().version_compare('>=0.53') # fs module available
+ fs = import('fs')
+ developer_mode = fs.is_dir('.git')
+ endif
+else
+ developer_mode = get_option('developer_mode').enabled()
+endif
+if developer_mode
+ message('## Building in Developer Mode ##')
+endif
+
# set up some global vars for compiler, platform, configuration, etc.
cc = meson.get_compiler('c')
dpdk_conf = configuration_data()
dpdk_libraries = []
dpdk_static_libraries = []
-dpdk_graph_nodes = []
+dpdk_chkinc_headers = []
dpdk_driver_classes = []
dpdk_drivers = []
dpdk_extra_ldflags = []
'lib/librte_eal/@0@/include'.format(host_machine.system()),
'lib/librte_eal/@0@/include'.format(arch_subdir),
)
+
+# do configuration and get tool paths
+subdir('buildtools')
subdir('config')
# build libs and drivers
-subdir('buildtools')
subdir('lib')
subdir('drivers')
# build any examples explicitly requested - useful for developers - and
# install any example code into the appropriate install path
subdir('examples')
+install_subdir('examples',
+ install_dir: get_option('datadir') + '/dpdk',
+ exclude_files: ex_file_excludes)
# build kernel modules if enabled
if get_option('enable_kmods')
subdir('kernel')
endif
+# check header includes if requested
+if get_option('check_includes')
+ subdir('buildtools/chkincs')
+endif
+
# write the build config
build_cfg = 'rte_build_config.h'
configure_file(output: build_cfg,