X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=buildtools%2Fpkg-config%2Fmeson.build;h=0412883c8fd3bbeae3a0b3188aa858a41003234a;hb=b60d006cd14743907d75a6944ed24a692e4f79ae;hp=5f193042895d312a4ca67109f410fb479db90d40;hpb=b98447077b0609750c10b84b7b2e7be0c8504fad;p=dpdk.git diff --git a/buildtools/pkg-config/meson.build b/buildtools/pkg-config/meson.build index 5f19304289..0412883c8f 100644 --- a/buildtools/pkg-config/meson.build +++ b/buildtools/pkg-config/meson.build @@ -4,7 +4,7 @@ pkg = import('pkgconfig') pkg_extra_cflags = ['-include', 'rte_config.h'] + machine_args if is_freebsd - pkg_extra_cflags += ['-D__BSD_VISIBLE'] + pkg_extra_cflags += ['-D__BSD_VISIBLE'] endif # When calling pkg-config --static --libs, pkg-config will always output the @@ -28,26 +28,30 @@ endif pkg.generate(name: 'dpdk-libs', - filebase: 'libdpdk-libs', - description: '''Internal-only DPDK pkgconfig file. Not for direct use. + filebase: 'libdpdk-libs', + description: '''Internal-only DPDK pkgconfig file. Not for direct use. Use libdpdk.pc instead of this file to query DPDK compile/link arguments''', - version: meson.project_version(), - subdirs: [get_option('include_subdir_arch'), '.'], - extra_cflags: pkg_extra_cflags, - libraries: ['-Wl,--as-needed'] + dpdk_libraries, - libraries_private: dpdk_extra_ldflags) + version: meson.project_version(), + subdirs: [get_option('include_subdir_arch'), '.'], + extra_cflags: pkg_extra_cflags, + libraries: ['-Wl,--as-needed'] + dpdk_libraries, + libraries_private: dpdk_extra_ldflags) +platform_flags = [] +if not is_windows + platform_flags += ['-Wl,--export-dynamic'] # ELF only +endif pkg.generate(name: 'DPDK', # main DPDK pkgconfig file - filebase: 'libdpdk', - version: meson.project_version(), - description: '''The Data Plane Development Kit (DPDK). + filebase: 'libdpdk', + version: meson.project_version(), + description: '''The Data Plane Development Kit (DPDK). Note that CFLAGS might contain an -march flag higher than typical baseline. This is required for a number of static inline functions in the public headers.''', - requires: ['libdpdk-libs', libbsd], # may need libbsd for string funcs - # if libbsd is not enabled, then this is blank - libraries_private: ['-Wl,--whole-archive'] + - dpdk_drivers + dpdk_static_libraries + - ['-Wl,--no-whole-archive'] + requires: ['libdpdk-libs', libbsd], # may need libbsd for string funcs + # if libbsd is not enabled, then this is blank + libraries_private: ['-Wl,--whole-archive'] + + dpdk_drivers + dpdk_static_libraries + + ['-Wl,--no-whole-archive'] + platform_flags ) # For static linking with dependencies as shared libraries,