X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fmeson.build;h=6b50f7238d6a62ab4b200b26e4ef32c610813f3f;hb=8b3799531b9bc46fb518c4ec84f4960ecc78a0d0;hp=b95b0058394463a39c6cc2805fb7fa4b402338d9;hpb=2ca75c65af4ca9c836ca0b4eabec69bde05fbed6;p=dpdk.git diff --git a/drivers/meson.build b/drivers/meson.build index b95b005839..6b50f7238d 100644 --- a/drivers/meson.build +++ b/drivers/meson.build @@ -33,9 +33,6 @@ foreach subpath:subdirs drivers = [] std_deps = [] config_flag_fmt = '' # format string used to set the value in dpdk_conf - driver_name_fmt = '' # format string for driver name, used to name - # the library, the dependency and to find the - # version file for linking # subpath can be either "class" or "class/driver" if subpath.contains('/') @@ -63,6 +60,7 @@ foreach subpath:subdirs name = drv fmt_name = '' sources = [] + headers = [] objs = [] cflags = default_cflags includes = [include_directories(drv_path)] @@ -113,11 +111,14 @@ foreach subpath:subdirs endif else enabled_drivers += name + lib_name = '_'.join(['rte', class, name]) + dpdk_conf.set(lib_name.to_upper(), 1) if fmt_name == '' fmt_name = name endif - dpdk_conf.set(config_flag_fmt.format(fmt_name.to_upper()),1) + + dpdk_conf.set(config_flag_fmt.format(fmt_name.to_upper()),1) #old-style macro # for driver compatibility, since we changed the # default to match that of make. Remove in future release # after following deprecation process @@ -133,10 +134,11 @@ foreach subpath:subdirs dpdk_conf.set(alt_flag_fmt.format( fmt_name.to_upper()), 1) endif - lib_name = driver_name_fmt.format(fmt_name) dpdk_extra_ldflags += pkgconfig_extra_libs + install_headers(headers) + # generate pmdinfo sources by building a temporary # lib and then running pmdinfogen on the contents of # that lib. The final lib reuses the object files and @@ -166,9 +168,9 @@ foreach subpath:subdirs install: true) # now build the shared driver - version_map = '@0@/@1@/@2@_version.map'.format( + version_map = '@0@/@1@/version.map'.format( meson.current_source_dir(), - drv_path, lib_name) + drv_path) implib = 'lib' + lib_name + '.dll.a' def_file = custom_target(lib_name + '_def', @@ -184,8 +186,10 @@ foreach subpath:subdirs lk_deps = [version_map, def_file, mingw_map] if is_windows if is_ms_linker - lk_args = ['-Wl,/def:' + def_file.full_path(), - '-Wl,/implib:drivers\\' + implib] + lk_args = ['-Wl,/def:' + def_file.full_path()] + if meson.version().version_compare('<0.54.0') + lk_args += ['-Wl,/implib:drivers\\' + implib] + endif else lk_args = ['-Wl,--version-script=' + mingw_map.full_path()] endif