From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id 3312A1F7 for ; Wed, 1 Oct 2014 13:19:16 +0200 (CEST) Received: from azsmga001.ch.intel.com ([10.2.17.19]) by orsmga103.jf.intel.com with ESMTP; 01 Oct 2014 04:23:40 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.04,631,1406617200"; d="scan'208";a="481233727" Received: from irvmail001.ir.intel.com ([163.33.26.43]) by azsmga001.ch.intel.com with ESMTP; 01 Oct 2014 04:25:54 -0700 Received: from sivswdev02.ir.intel.com (sivswdev02.ir.intel.com [10.237.217.46]) by irvmail001.ir.intel.com (8.14.3/8.13.6/MailSET/Hub) with ESMTP id s91BPrZF007095; Wed, 1 Oct 2014 12:25:53 +0100 Received: from sivswdev02.ir.intel.com (localhost [127.0.0.1]) by sivswdev02.ir.intel.com with ESMTP id s91BPrxQ018518; Wed, 1 Oct 2014 12:25:53 +0100 Received: (from smonroy@localhost) by sivswdev02.ir.intel.com with id s91BPqG7018514; Wed, 1 Oct 2014 12:25:52 +0100 Date: Wed, 1 Oct 2014 12:25:52 +0100 From: Sergio Gonzalez Monroy To: Neil Horman Message-ID: <20141001112546.GA17019@sivswdev02.ir.intel.com> References: <1410809031-19114-1-git-send-email-nhorman@tuxdriver.com> <1410809031-19114-3-git-send-email-nhorman@tuxdriver.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1410809031-19114-3-git-send-email-nhorman@tuxdriver.com> User-Agent: Mutt/1.5.20 (2009-06-14) Cc: dev@dpdk.org Subject: Re: [dpdk-dev] [PATCH 2/4] Provide initial versioning for all DPDK libraries X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 01 Oct 2014 11:19:17 -0000 On Mon, Sep 15, 2014 at 03:23:49PM -0400, Neil Horman wrote: > Add linker version script files to each DPDK library to put a stake in the > ground from which we can start cleaning up API's > > Signed-off-by: Neil Horman > CC: Thomas Monjalon > CC: "Richardson, Bruce" > --- > lib/librte_acl/Makefile | 2 + > lib/librte_acl/rte_acl_version.map | 19 ++++ > lib/librte_cfgfile/Makefile | 2 + > lib/librte_cfgfile/rte_cfgfile_version.map | 14 +++ > lib/librte_cmdline/Makefile | 2 + > lib/librte_cmdline/rte_cmdline_version.map | 69 +++++++++++++ > lib/librte_distributor/Makefile | 2 + > lib/librte_distributor/rte_distributor_version.map | 16 +++ > lib/librte_eal/bsdapp/eal/Makefile | 2 + > lib/librte_eal/bsdapp/eal/rte_eal_version.map | 89 +++++++++++++++++ > lib/librte_eal/linuxapp/eal/Makefile | 2 + > lib/librte_eal/linuxapp/eal/rte_eal_version.map | 89 +++++++++++++++++ > lib/librte_ether/Makefile | 2 + > lib/librte_ether/rte_ether_version.map | 108 +++++++++++++++++++++ > lib/librte_hash/Makefile | 2 + > lib/librte_hash/rte_hash_version.map | 18 ++++ > lib/librte_ip_frag/Makefile | 2 + > lib/librte_ip_frag/rte_ipfrag_version.map | 14 +++ > lib/librte_ivshmem/Makefile | 2 + > lib/librte_ivshmem/rte_ivshmem_version.map | 13 +++ > lib/librte_kni/Makefile | 2 + > lib/librte_kni/rte_kni_version.map | 19 ++++ > lib/librte_kvargs/Makefile | 2 + > lib/librte_kvargs/rte_kvargs_version.map | 10 ++ > lib/librte_lpm/Makefile | 2 + > lib/librte_lpm/rte_lpm_version.map | 24 +++++ > lib/librte_malloc/Makefile | 2 + > lib/librte_malloc/rte_malloc_version.map | 19 ++++ > lib/librte_mbuf/Makefile | 2 + > lib/librte_mbuf/rte_mbuf_version.map | 12 +++ > lib/librte_mempool/Makefile | 2 + > lib/librte_mempool/rte_mempool_version.map | 18 ++++ > lib/librte_meter/Makefile | 2 + > lib/librte_meter/rte_meter_version.map | 13 +++ > lib/librte_pipeline/Makefile | 2 + > lib/librte_pipeline/rte_pipeline_version.map | 23 +++++ > lib/librte_pmd_bond/Makefile | 2 + > lib/librte_pmd_bond/rte_eth_bond_version.map | 20 ++++ > lib/librte_pmd_e1000/Makefile | 2 + > lib/librte_pmd_e1000/rte_pmd_e1000_version.map | 5 + > lib/librte_pmd_i40e/Makefile | 2 + > lib/librte_pmd_i40e/rte_pmd_i40e_version.map | 5 + > lib/librte_pmd_ixgbe/Makefile | 2 + > lib/librte_pmd_ixgbe/rte_pmd_ixgbe_version.map | 5 + > lib/librte_pmd_pcap/Makefile | 2 + > lib/librte_pmd_pcap/rte_pmd_pcap_version.map | 5 + > lib/librte_pmd_ring/Makefile | 2 + > lib/librte_pmd_ring/rte_eth_ring.c | 2 +- > lib/librte_pmd_ring/rte_eth_ring.h | 6 -- > lib/librte_pmd_ring/rte_eth_ring_version.map | 10 ++ > lib/librte_pmd_virtio/Makefile | 1 + > lib/librte_pmd_virtio/rte_pmd_virtio_version.map | 5 + > lib/librte_pmd_vmxnet3/Makefile | 2 + > lib/librte_pmd_vmxnet3/rte_pmd_vmxnet3_version.map | 5 + > lib/librte_pmd_xenvirt/Makefile | 2 + > lib/librte_pmd_xenvirt/rte_eth_xenvirt_version.map | 8 ++ > lib/librte_port/Makefile | 2 + > lib/librte_port/rte_port_version.map | 18 ++++ > lib/librte_power/Makefile | 2 + > lib/librte_power/rte_power_version.map | 14 +++ > lib/librte_ring/Makefile | 2 + > lib/librte_ring/rte_ring_version.map | 12 +++ > lib/librte_sched/Makefile | 2 + > lib/librte_sched/rte_sched_version.map | 22 +++++ > lib/librte_table/Makefile | 2 + > lib/librte_table/rte_table_version.map | 22 +++++ > lib/librte_timer/Makefile | 2 + > lib/librte_timer/rte_timer_version.map | 16 +++ > 68 files changed, 825 insertions(+), 7 deletions(-) > create mode 100644 lib/librte_acl/rte_acl_version.map > create mode 100644 lib/librte_cfgfile/rte_cfgfile_version.map > create mode 100644 lib/librte_cmdline/rte_cmdline_version.map > create mode 100644 lib/librte_distributor/rte_distributor_version.map > create mode 100644 lib/librte_eal/bsdapp/eal/rte_eal_version.map > create mode 100644 lib/librte_eal/linuxapp/eal/rte_eal_version.map > create mode 100644 lib/librte_ether/rte_ether_version.map > create mode 100644 lib/librte_hash/rte_hash_version.map > create mode 100644 lib/librte_ip_frag/rte_ipfrag_version.map > create mode 100644 lib/librte_ivshmem/rte_ivshmem_version.map > create mode 100644 lib/librte_kni/rte_kni_version.map > create mode 100644 lib/librte_kvargs/rte_kvargs_version.map > create mode 100644 lib/librte_lpm/rte_lpm_version.map > create mode 100644 lib/librte_malloc/rte_malloc_version.map > create mode 100644 lib/librte_mbuf/rte_mbuf_version.map > create mode 100644 lib/librte_mempool/rte_mempool_version.map > create mode 100644 lib/librte_meter/rte_meter_version.map > create mode 100644 lib/librte_pipeline/rte_pipeline_version.map > create mode 100644 lib/librte_pmd_bond/rte_eth_bond_version.map > create mode 100644 lib/librte_pmd_e1000/rte_pmd_e1000_version.map > create mode 100644 lib/librte_pmd_i40e/rte_pmd_i40e_version.map > create mode 100644 lib/librte_pmd_ixgbe/rte_pmd_ixgbe_version.map > create mode 100644 lib/librte_pmd_pcap/rte_pmd_pcap_version.map > create mode 100644 lib/librte_pmd_ring/rte_eth_ring_version.map > create mode 100644 lib/librte_pmd_virtio/rte_pmd_virtio_version.map > create mode 100644 lib/librte_pmd_vmxnet3/rte_pmd_vmxnet3_version.map > create mode 100644 lib/librte_pmd_xenvirt/rte_eth_xenvirt_version.map > create mode 100644 lib/librte_port/rte_port_version.map > create mode 100644 lib/librte_power/rte_power_version.map > create mode 100644 lib/librte_ring/rte_ring_version.map > create mode 100644 lib/librte_sched/rte_sched_version.map > create mode 100644 lib/librte_table/rte_table_version.map > create mode 100644 lib/librte_timer/rte_timer_version.map > > diff --git a/lib/librte_acl/Makefile b/lib/librte_acl/Makefile > index 65e566d..1f96645 100644 > --- a/lib/librte_acl/Makefile > +++ b/lib/librte_acl/Makefile > @@ -37,6 +37,8 @@ LIB = librte_acl.a > CFLAGS += -O3 > CFLAGS += $(WERROR_FLAGS) -I$(SRCDIR) > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_acl/rte_acl_version.map > + > # all source are stored in SRCS-y > SRCS-$(CONFIG_RTE_LIBRTE_ACL) += tb_mem.c > > diff --git a/lib/librte_acl/rte_acl_version.map b/lib/librte_acl/rte_acl_version.map > new file mode 100644 > index 0000000..4480690 > --- /dev/null > +++ b/lib/librte_acl/rte_acl_version.map > @@ -0,0 +1,19 @@ > +DPDK_1.8 { > + global: > + rte_acl_create; > + rte_acl_find_existing; > + rte_acl_free; > + rte_acl_add_rules; > + rte_acl_reset_rules; > + rte_acl_build; > + rte_acl_reset; > + rte_acl_classify; > + rte_acl_dump; > + rte_acl_list_dump; > + rte_acl_ipv4vlan_add_rules; > + rte_acl_ipv4vlan_build; > + rte_acl_classify_scalar; > + > + local: *; > +}; > + > diff --git a/lib/librte_cfgfile/Makefile b/lib/librte_cfgfile/Makefile > index 55e8701..e655098 100644 > --- a/lib/librte_cfgfile/Makefile > +++ b/lib/librte_cfgfile/Makefile > @@ -39,6 +39,8 @@ LIB = librte_cfgfile.a > CFLAGS += -O3 > CFLAGS += $(WERROR_FLAGS) > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_cfgfile/rte_cfgfile_version.map > + > # > # all source are stored in SRCS-y > # > diff --git a/lib/librte_cfgfile/rte_cfgfile_version.map b/lib/librte_cfgfile/rte_cfgfile_version.map > new file mode 100644 > index 0000000..10ecea6 > --- /dev/null > +++ b/lib/librte_cfgfile/rte_cfgfile_version.map > @@ -0,0 +1,14 @@ > +DPDK_1.8 { > + global: > + rte_cfgfile_load; > + rte_cfgfile_num_sections; > + rte_cfgfile_sections; > + rte_cfgfile_has_section; > + rte_cfgfile_section_num_entries; > + rte_cfgfile_section_entries; > + rte_cfgfile_get_entry; > + rte_cfgfile_has_entry; > + rte_cfgfile_close; > + > + local: *; > +}; > diff --git a/lib/librte_cmdline/Makefile b/lib/librte_cmdline/Makefile > index 7eae449..1a47173 100644 > --- a/lib/librte_cmdline/Makefile > +++ b/lib/librte_cmdline/Makefile > @@ -36,6 +36,8 @@ LIB = librte_cmdline.a > > CFLAGS += $(WERROR_FLAGS) -I$(SRCDIR) -O3 > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_cmdline/rte_cmdline_version.map > + > # all source are stored in SRCS-y > SRCS-$(CONFIG_RTE_LIBRTE_CMDLINE) := cmdline.c > SRCS-$(CONFIG_RTE_LIBRTE_CMDLINE) += cmdline_cirbuf.c > diff --git a/lib/librte_cmdline/rte_cmdline_version.map b/lib/librte_cmdline/rte_cmdline_version.map > new file mode 100644 > index 0000000..7616eff > --- /dev/null > +++ b/lib/librte_cmdline/rte_cmdline_version.map > @@ -0,0 +1,69 @@ > +DPDK_1.8 { > + global: > + cmdline_new; > + cmdline_set_prompt; > + cmdline_free; > + cmdline_printf; > + cmdline_in; > + cmdline_write_char; > + cmdline_interact; > + cmdline_quit; > + cmdline_parse; > + cmdline_complete; > + cmdline_isendoftoken; > + cmdline_parse_num; > + cmdline_get_help_num; > + cmdline_parse_ipaddr; > + cmdline_get_help_ipaddr; > + cmdline_parse_etheraddr; > + cmdline_get_help_etheraddr; > + cmdline_parse_string; > + cmdline_complete_get_nb_string; > + cmdline_complete_get_elt_string; > + cmdline_get_help_string; > + cmdline_parse_portlist; > + cmdline_get_help_portlist; > + cmdline_token_string_ops; > + cmdline_token_num_ops; > + cmdline_token_string_ops; > + cmdline_token_ipaddr_ops; > + cmdline_token_etheraddr_ops; > + vt100_init; > + vt100_parser; > + cmdline_file_new; > + cmdline_stdin_new; > + cmdline_stdin_exit; > + cirbuf_init; > + cirbuf_add_head_safe; > + cirbuf_add_head; > + cirbuf_add_tail_safe; > + cirbuf_add_tail; > + cirbuf_del_head_safe; > + cirbuf_del_head; > + cirbuf_del_tail_safe; > + cirbuf_del_tail; > + cirbuf_get_head; > + cirbuf_get_tail; > + cirbuf_add_buf_head; > + cirbuf_add_buf_tail; > + cirbuf_del_buf_head; > + cirbuf_del_buf_tail; > + cirbuf_get_buf_head; > + cirbuf_get_buf_tail; > + cirbuf_align_left; > + cirbuf_align_right; > + rdline_init; > + rdline_newline; > + rdline_stop; > + rdline_quit; > + rdline_restart; > + rdline_redisplay; > + rdline_reset; > + rdline_char_in; > + rdline_get_buffer; > + rdline_add_history; > + rdline_clear_history; > + rdline_get_history_item; > + > + local: *; > +}; > diff --git a/lib/librte_distributor/Makefile b/lib/librte_distributor/Makefile > index 36699f8..97d8bbb 100644 > --- a/lib/librte_distributor/Makefile > +++ b/lib/librte_distributor/Makefile > @@ -37,6 +37,8 @@ LIB = librte_distributor.a > CFLAGS += -O3 > CFLAGS += $(WERROR_FLAGS) -I$(SRCDIR) > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_distributor/rte_distributor_version.map > + > # all source are stored in SRCS-y > SRCS-$(CONFIG_RTE_LIBRTE_DISTRIBUTOR) := rte_distributor.c > > diff --git a/lib/librte_distributor/rte_distributor_version.map b/lib/librte_distributor/rte_distributor_version.map > new file mode 100644 > index 0000000..b81ddc8 > --- /dev/null > +++ b/lib/librte_distributor/rte_distributor_version.map > @@ -0,0 +1,16 @@ > +DPDK_1.8 { > + > + global: > + rte_distributor_create; > + rte_distributor_process; > + rte_distributor_returned_pkts; > + rte_distributor_flush; > + rte_distributor_clear_returns; > + rte_distributor_get_pkt; > + rte_distributor_return_pkt; > + rte_distributor_request_pkt; > + rte_distributor_poll_pkt; > + > + local: *; > +}; > + > diff --git a/lib/librte_eal/bsdapp/eal/Makefile b/lib/librte_eal/bsdapp/eal/Makefile > index 8f44273..2caaf00 100644 > --- a/lib/librte_eal/bsdapp/eal/Makefile > +++ b/lib/librte_eal/bsdapp/eal/Makefile > @@ -45,6 +45,8 @@ CFLAGS += -I$(RTE_SDK)/lib/librte_pmd_ring > CFLAGS += -I$(RTE_SDK)/lib/librte_pmd_pcap > CFLAGS += $(WERROR_FLAGS) -O3 > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_eal/bsdapp/eal/rte_eal_version.map > + > # specific to linuxapp exec-env > SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) := eal.c > SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_memory.c > diff --git a/lib/librte_eal/bsdapp/eal/rte_eal_version.map b/lib/librte_eal/bsdapp/eal/rte_eal_version.map > new file mode 100644 > index 0000000..71788e1 > --- /dev/null > +++ b/lib/librte_eal/bsdapp/eal/rte_eal_version.map > @@ -0,0 +1,89 @@ > +DPDK_1.8 { > + global: > + rte_eal_alarm_set; > + rte_eal_alarm_cancel; > + rte_exit; > + rte_cpu_get_flag_enabled; > + rte_cpu_check_supported; > + rte_get_tsc_hz; > + rte_get_hpet_cycles; > + rte_get_hpet_hz; > + rte_eal_hpet_init; > + rte_delay_us; > + rte_dump_stack; > + rte_dump_registers; > + __rte_panic; > + rte_eal_devargs_add; > + rte_eal_devargs_type_count; > + rte_eal_devargs_dump; > + rte_eal_driver_register; > + rte_eal_driver_unregister; > + rte_eal_dev_init; > + rte_eal_init; > + rte_set_application_usage_hook; > + rte_eal_has_hugepages; > + rte_strerror; > + rte_hexdump; > + rte_memdump; > + rte_intr_callback_register; > + rte_intr_callback_unregister; > + rte_intr_enable; > + rte_intr_disable; > + rte_eal_remote_launch; > + rte_eal_mp_remote_launch; > + rte_eal_get_lcore_state; > + rte_eal_wait_lcore; > + rte_eal_mp_wait_lcore; > + rte_openlog_stream; > + rte_set_log_level; > + rte_set_log_type; > + rte_log_cur_msg_loglevel; > + rte_log_cur_msg_logtype; > + rte_log_set_history; > + rte_log_dump_history; > + rte_log_add_in_history; > + rte_log; > + rte_vlog; > + rte_mem_lock_page; > + rte_mem_virt2phy; > + rte_eal_get_physmem_layout; > + rte_dump_physmem_layout; > + rte_eal_get_physmem_size; > + rte_memory_get_nchannel; > + rte_memory_get_nrank; > + rte_mem_phy2mch; > + rte_xen_dom0_memory_init; > + rte_xen_dom0_memory_attach; > + rte_memzone_reserve; > + rte_memzone_reserve_aligned; > + rte_memzone_reserve_bounded; > + rte_memzone_lookup; > + rte_memzone_dump; > + rte_memzone_walk; > + rte_eal_pci_probe; > + rte_eal_pci_dump; > + rte_eal_pci_register; > + rte_eal_pci_unregister; > + rte_snprintf; > + rte_strsplit; > + rte_eal_tailq_reserve; > + rte_eal_tailq_reserve_by_idx; > + rte_dump_tailq; > + rte_eal_tailq_lookup; > + rte_eal_tailq_lookup_by_idx; > + lcore_config; > + per_lcore__lcore_id; > + eal_timer_source; > + rte_cycles_vmware_tsc_map; > + rte_eal_get_configuration; > + rte_logs; > + rte_eal_lcore_role; > + test_mp_secondary; > + rte_eal_process_type; > + per_lcore__rte_errno; > + pci_device_list; > + devargs_list; > + eal_parse_sysfs_value; > + > + local: *; > +}; > diff --git a/lib/librte_eal/linuxapp/eal/Makefile b/lib/librte_eal/linuxapp/eal/Makefile > index 756d6b0..254d59c 100644 > --- a/lib/librte_eal/linuxapp/eal/Makefile > +++ b/lib/librte_eal/linuxapp/eal/Makefile > @@ -33,6 +33,8 @@ include $(RTE_SDK)/mk/rte.vars.mk > > LIB = librte_eal.a > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_eal/linuxapp/eal/rte_eal_version.map > + > VPATH += $(RTE_SDK)/lib/librte_eal/common > > CFLAGS += -I$(SRCDIR)/include > diff --git a/lib/librte_eal/linuxapp/eal/rte_eal_version.map b/lib/librte_eal/linuxapp/eal/rte_eal_version.map > new file mode 100644 > index 0000000..71788e1 > --- /dev/null > +++ b/lib/librte_eal/linuxapp/eal/rte_eal_version.map > @@ -0,0 +1,89 @@ > +DPDK_1.8 { > + global: > + rte_eal_alarm_set; > + rte_eal_alarm_cancel; > + rte_exit; > + rte_cpu_get_flag_enabled; > + rte_cpu_check_supported; > + rte_get_tsc_hz; > + rte_get_hpet_cycles; > + rte_get_hpet_hz; > + rte_eal_hpet_init; > + rte_delay_us; > + rte_dump_stack; > + rte_dump_registers; > + __rte_panic; > + rte_eal_devargs_add; > + rte_eal_devargs_type_count; > + rte_eal_devargs_dump; > + rte_eal_driver_register; > + rte_eal_driver_unregister; > + rte_eal_dev_init; > + rte_eal_init; > + rte_set_application_usage_hook; > + rte_eal_has_hugepages; > + rte_strerror; > + rte_hexdump; > + rte_memdump; > + rte_intr_callback_register; > + rte_intr_callback_unregister; > + rte_intr_enable; > + rte_intr_disable; > + rte_eal_remote_launch; > + rte_eal_mp_remote_launch; > + rte_eal_get_lcore_state; > + rte_eal_wait_lcore; > + rte_eal_mp_wait_lcore; > + rte_openlog_stream; > + rte_set_log_level; > + rte_set_log_type; > + rte_log_cur_msg_loglevel; > + rte_log_cur_msg_logtype; > + rte_log_set_history; > + rte_log_dump_history; > + rte_log_add_in_history; > + rte_log; > + rte_vlog; > + rte_mem_lock_page; > + rte_mem_virt2phy; > + rte_eal_get_physmem_layout; > + rte_dump_physmem_layout; > + rte_eal_get_physmem_size; > + rte_memory_get_nchannel; > + rte_memory_get_nrank; > + rte_mem_phy2mch; > + rte_xen_dom0_memory_init; > + rte_xen_dom0_memory_attach; > + rte_memzone_reserve; > + rte_memzone_reserve_aligned; > + rte_memzone_reserve_bounded; > + rte_memzone_lookup; > + rte_memzone_dump; > + rte_memzone_walk; > + rte_eal_pci_probe; > + rte_eal_pci_dump; > + rte_eal_pci_register; > + rte_eal_pci_unregister; > + rte_snprintf; > + rte_strsplit; > + rte_eal_tailq_reserve; > + rte_eal_tailq_reserve_by_idx; > + rte_dump_tailq; > + rte_eal_tailq_lookup; > + rte_eal_tailq_lookup_by_idx; > + lcore_config; > + per_lcore__lcore_id; > + eal_timer_source; > + rte_cycles_vmware_tsc_map; > + rte_eal_get_configuration; > + rte_logs; > + rte_eal_lcore_role; > + test_mp_secondary; > + rte_eal_process_type; > + per_lcore__rte_errno; > + pci_device_list; > + devargs_list; > + eal_parse_sysfs_value; > + > + local: *; > +}; > diff --git a/lib/librte_ether/Makefile b/lib/librte_ether/Makefile > index b310f8b..f40b5cc 100644 > --- a/lib/librte_ether/Makefile > +++ b/lib/librte_ether/Makefile > @@ -39,6 +39,8 @@ LIB = libethdev.a > CFLAGS += -O3 > CFLAGS += $(WERROR_FLAGS) > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_ether/rte_ether_version.map > + > SRCS-y += rte_ethdev.c > > # > diff --git a/lib/librte_ether/rte_ether_version.map b/lib/librte_ether/rte_ether_version.map > new file mode 100644 > index 0000000..41952ab > --- /dev/null > +++ b/lib/librte_ether/rte_ether_version.map > @@ -0,0 +1,108 @@ > +DPDK_1.8 { > + global: > + rte_eth_driver_register; > + rte_eth_dev_configure; > + rte_eth_rx_queue_setup; > + rte_eth_tx_queue_setup; > + rte_eth_dev_socket_id; > + rte_eth_dev_rx_queue_start; > + rte_eth_dev_rx_queue_stop; > + rte_eth_dev_tx_queue_start; > + rte_eth_dev_tx_queue_stop; > + rte_eth_dev_start; > + rte_eth_dev_stop; > + rte_eth_dev_set_link_up; > + rte_eth_dev_set_link_down; > + rte_eth_dev_close; > + rte_eth_promiscuous_enable; > + rte_eth_promiscuous_disable; > + rte_eth_promiscuous_get; > + rte_eth_allmulticast_enable; > + rte_eth_allmulticast_disable; > + rte_eth_allmulticast_get; > + rte_eth_link; > + rte_eth_link_get_nowait; > + rte_eth_stats; > + rte_eth_stats_reset; > + rte_eth_dev_set_tx_queue_stats_mapping; > + rte_eth_dev_set_rx_queue_stats_mapping; > + rte_eth_macaddr_get; > + rte_eth_dev_info_get; > + rte_eth_dev_get_mtu; > + rte_eth_dev_set_mtu; > + rte_eth_dev_vlan_filter; > + rte_eth_dev_set_vlan_strip_on_queue; > + rte_eth_dev_set_vlan_ether_type; > + rte_eth_dev_set_vlan_offload; > + rte_eth_dev_get_vlan_offload; > + rte_eth_dev_set_vlan_pvid; > + rte_eth_rx_burst; > + rte_eth_rx_queue_count; > + rte_eth_rx_descriptor_done; > + rte_eth_tx_burst; > + rte_eth_dev_fdir_add_signature_filter; > + rte_eth_dev_fdir_update_signature_filter; > + rte_eth_dev_fdir_remove_signature_filter; > + rte_eth_dev_fdir_get_infos; > + rte_eth_dev_fdir_add_perfect_filter; > + rte_eth_dev_fdir_update_perfect_filter; > + rte_eth_dev_fdir_remove_perfect_filter; > + rte_eth_dev_fdir_set_masks; > + rte_eth_dev_callback_register; > + rte_eth_dev_callback_unregister; > + rte_eth_dev_callback_process; > + rte_eth_led_on; > + rte_eth_led_off; > + rte_eth_dev_flow_ctrl_get; > + rte_eth_dev_flow_ctrl_set; > + rte_eth_dev_priority_flow_ctrl_set; > + rte_eth_dev_mac_addr_add; > + rte_eth_dev_mac_addr_remove; > + rte_eth_dev_rss_reta_update; > + rte_eth_dev_rss_reta_query; > + rte_eth_dev_uc_hash_table_set; > + rte_eth_dev_uc_all_hash_table_set; > + rte_eth_dev_set_vf_rxmode; > + rte_eth_dev_set_vf_tx; > + rte_eth_dev_set_vf_rx; > + rte_eth_dev_set_vf_vlan_filter; > + rte_eth_mirror_rule_set; > + rte_eth_mirror_rule_reset; > + rte_eth_set_queue_rate_limit; > + rte_eth_set_vf_rate_limit; > + rte_eth_dev_bypass_init; > + rte_eth_dev_bypass_state_show; > + rte_eth_dev_bypass_state_set; > + rte_eth_dev_bypass_event_show; > + rte_eth_dev_bypass_event_store; > + rte_eth_dev_wd_timeout_store; > + rte_eth_dev_bypass_ver_show; > + rte_eth_dev_bypass_wd_timeout_show; > + rte_eth_dev_bypass_wd_reset; > + rte_eth_dev_rss_hash_update; > + rte_eth_dev_rss_hash_conf_get; > + rte_eth_dev_add_syn_filter; > + rte_eth_dev_remove_syn_filter; > + rte_eth_dev_get_syn_filter; > + rte_eth_dev_add_ethertype_filter; > + rte_eth_dev_remove_ethertype_filter; > + rte_eth_dev_get_ethertype_filter; > + rte_eth_dev_add_2tuple_filter; > + rte_eth_dev_remove_2tuple_filter; > + rte_eth_dev_get_2tuple_filter; > + rte_eth_dev_add_5tuple_filter; > + rte_eth_dev_remove_5tuple_filter; > + rte_eth_dev_get_5tuple_filter; > + rte_eth_dev_add_flex_filter; > + rte_eth_dev_remove_flex_filter; > + rte_eth_dev_get_flex_filter; > + rte_eth_dev_count; > + rte_eth_link_get; > + rte_eth_devices; > + rte_eth_stats_get; > + rte_eth_dev_allocate; > + _rte_eth_dev_callback_process; > + > + local: *; > +}; > + > diff --git a/lib/librte_hash/Makefile b/lib/librte_hash/Makefile > index 95e4c09..a449ec2 100644 > --- a/lib/librte_hash/Makefile > +++ b/lib/librte_hash/Makefile > @@ -37,6 +37,8 @@ LIB = librte_hash.a > CFLAGS += -O3 > CFLAGS += $(WERROR_FLAGS) -I$(SRCDIR) > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_hash/rte_hash_version.map > + > # all source are stored in SRCS-y > SRCS-$(CONFIG_RTE_LIBRTE_HASH) := rte_hash.c > SRCS-$(CONFIG_RTE_LIBRTE_HASH) += rte_fbk_hash.c > diff --git a/lib/librte_hash/rte_hash_version.map b/lib/librte_hash/rte_hash_version.map > new file mode 100644 > index 0000000..2a34313 > --- /dev/null > +++ b/lib/librte_hash/rte_hash_version.map > @@ -0,0 +1,18 @@ > +DPDK_1.8 { > + global: > + rte_fbk_hash_find_existing; > + rte_fbk_hash_create; > + rte_fbk_hash_free; > + rte_hash_create; > + rte_hash_find_existing; > + rte_hash_free; > + rte_hash_add_key; > + rte_hash_add_key_with_hash; > + rte_hash_del_key; > + rte_hash_del_key_with_hash; > + rte_hash_lookup; > + rte_hash_lookup_with_hash; > + rte_hash_lookup_bulk; > + > + local: *; > +}; > diff --git a/lib/librte_ip_frag/Makefile b/lib/librte_ip_frag/Makefile > index 2265c93..ede5a89 100644 > --- a/lib/librte_ip_frag/Makefile > +++ b/lib/librte_ip_frag/Makefile > @@ -37,6 +37,8 @@ LIB = librte_ip_frag.a > CFLAGS += -O3 > CFLAGS += $(WERROR_FLAGS) -I$(SRCDIR) > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_ip_frag/rte_ipfrag_version.map > + > #source files > SRCS-$(CONFIG_RTE_LIBRTE_IP_FRAG) += rte_ipv4_fragmentation.c > SRCS-$(CONFIG_RTE_LIBRTE_IP_FRAG) += rte_ipv4_reassembly.c > diff --git a/lib/librte_ip_frag/rte_ipfrag_version.map b/lib/librte_ip_frag/rte_ipfrag_version.map > new file mode 100644 > index 0000000..afe1a0b > --- /dev/null > +++ b/lib/librte_ip_frag/rte_ipfrag_version.map > @@ -0,0 +1,14 @@ > +DPDK_1.8 { > + global: > + > + rte_ip_frag_table_create; > + rte_ipv6_fragment_packet; > + rte_ipv6_frag_reassemble_packet; > + rte_ipv4_fragment_packet; > + rte_ipv4_frag_reassemble_packet; > + rte_ip_frag_free_death_row; > + rte_ip_frag_table_statistics_dump; > + > + local: *; > +}; > + > diff --git a/lib/librte_ivshmem/Makefile b/lib/librte_ivshmem/Makefile > index 536814c..be6f21a 100644 > --- a/lib/librte_ivshmem/Makefile > +++ b/lib/librte_ivshmem/Makefile > @@ -36,6 +36,8 @@ LIB = librte_ivshmem.a > > CFLAGS += $(WERROR_FLAGS) -I$(SRCDIR) -O3 > > +EXPORT_MAPS := $(RTE_SDK)/lib/librte_ivshmem/rte_ivshmem_version.map > + > # all source are stored in SRCS-y > SRCS-$(CONFIG_RTE_LIBRTE_IVSHMEM) := rte_ivshmem.c > > diff --git a/lib/librte_ivshmem/rte_ivshmem_version.map b/lib/librte_ivshmem/rte_ivshmem_version.map > new file mode 100644 > index 0000000..a204339 > --- /dev/null > +++ b/lib/librte_ivshmem/rte_ivshmem_version.map > @@ -0,0 +1,13 @@ > +DPDK_1.8 { > + global: > + > + rte_ivshmem_metadata_create; > + rte_ivshmem_metadata_add_memzone; > + rte_ivshmem_metadata_add_ring; > + rte_ivshmem_metadata_add_mempool; > + rte_ivshmem_metadata_cmdline_generate; > + rte_ivshmem_metadata_dump; > + > + local: *; > +}; > + > diff --git a/lib/librte_kni/Makefile b/lib/librte_kni/Makefile > index 5267304..c119fc1 100644 > --- a/lib/librte_kni/Makefile > +++ b/lib/librte_kni/Makefile > @@ -36,6 +36,8 @@ LIB = librte_kni.a > > CFLAGS += $(WERROR_FLAGS) -I$(SRCDIR) -O3 -fno-strict-aliasing > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_kni/rte_kni_version.map > + > # all source are stored in SRCS-y > SRCS-$(CONFIG_RTE_LIBRTE_KNI) := rte_kni.c > > diff --git a/lib/librte_kni/rte_kni_version.map b/lib/librte_kni/rte_kni_version.map > new file mode 100644 > index 0000000..58fbc1f > --- /dev/null > +++ b/lib/librte_kni/rte_kni_version.map > @@ -0,0 +1,19 @@ > +DPDK_1.8 { > + global: > + > + rte_kni_alloc; > + rte_kni_create; > + rte_kni_release; > + rte_kni_handle_request; > + rte_kni_rx_burst; > + rte_kni_tx_burst; > + rte_kni_get_port_id; > + rte_kni_get; > + rte_kni_info_get; > + rte_kni_register_handlers; > + rte_kni_unregister_handlers; > + rte_kni_close; > + > + local: *; > +}; > + > diff --git a/lib/librte_kvargs/Makefile b/lib/librte_kvargs/Makefile > index b09359a..83a42b1 100644 > --- a/lib/librte_kvargs/Makefile > +++ b/lib/librte_kvargs/Makefile > @@ -38,6 +38,8 @@ LIB = librte_kvargs.a > > CFLAGS += $(WERROR_FLAGS) -I$(SRCDIR) -O3 > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_kvargs/rte_kvargs_version.map > + > # all source are stored in SRCS-y > SRCS-$(CONFIG_RTE_LIBRTE_KVARGS) := rte_kvargs.c > > diff --git a/lib/librte_kvargs/rte_kvargs_version.map b/lib/librte_kvargs/rte_kvargs_version.map > new file mode 100644 > index 0000000..7873c8c > --- /dev/null > +++ b/lib/librte_kvargs/rte_kvargs_version.map > @@ -0,0 +1,10 @@ > +DPDK_1.8 { > + > + global: > + rte_kvargs_parse; > + rte_kvargs_free; > + rte_kvargs_process; > + rte_kvargs_count; > + > + local: *; > +}; > diff --git a/lib/librte_lpm/Makefile b/lib/librte_lpm/Makefile > index fa94163..05de8d9 100644 > --- a/lib/librte_lpm/Makefile > +++ b/lib/librte_lpm/Makefile > @@ -37,6 +37,8 @@ LIB = librte_lpm.a > CFLAGS += -O3 > CFLAGS += $(WERROR_FLAGS) -I$(SRCDIR) > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_lpm/rte_lpm_version.map > + > # all source are stored in SRCS-y > SRCS-$(CONFIG_RTE_LIBRTE_LPM) := rte_lpm.c rte_lpm6.c > > diff --git a/lib/librte_lpm/rte_lpm_version.map b/lib/librte_lpm/rte_lpm_version.map > new file mode 100644 > index 0000000..8ae9318 > --- /dev/null > +++ b/lib/librte_lpm/rte_lpm_version.map > @@ -0,0 +1,24 @@ > +DPDK_1.8 { > + global: > + > + rte_lpm_create; > + rte_lpm_find_existing; > + rte_lpm_free; > + rte_lpm_add; > + rte_lpm_is_rule_present; > + rte_lpm_delete; > + rte_lpm_delete_all; > + rte_lpm6_create; > + rte_lpm6_find_existing; > + rte_lpm6_free; > + rte_lpm6_add; > + rte_lpm6_is_rule_present; > + rte_lpm6_delete; > + rte_lpm6_delete_bulk_func; > + rte_lpm6_delete_all; > + rte_lpm6_lookup; > + rte_lpm6_lookup_bulk_func; > + > + local: *; > +}; > + > diff --git a/lib/librte_malloc/Makefile b/lib/librte_malloc/Makefile > index ba87e34..1a5c288 100644 > --- a/lib/librte_malloc/Makefile > +++ b/lib/librte_malloc/Makefile > @@ -36,6 +36,8 @@ LIB = librte_malloc.a > > CFLAGS += $(WERROR_FLAGS) -I$(SRCDIR) -O3 > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_malloc/rte_malloc_version.map > + > # all source are stored in SRCS-y > SRCS-$(CONFIG_RTE_LIBRTE_MALLOC) := rte_malloc.c malloc_elem.c malloc_heap.c > > diff --git a/lib/librte_malloc/rte_malloc_version.map b/lib/librte_malloc/rte_malloc_version.map > new file mode 100644 > index 0000000..77db879 > --- /dev/null > +++ b/lib/librte_malloc/rte_malloc_version.map > @@ -0,0 +1,19 @@ > +DPDK_1.8 { > + global: > + > + rte_malloc; > + rte_zmalloc; > + rte_calloc; > + rte_realloc; > + rte_malloc_socket; > + rte_zmalloc_socket; > + rte_calloc_socket; > + rte_free; > + rte_malloc_validate; > + rte_malloc_get_socket_stats; > + rte_malloc_dump_stats; > + rte_malloc_set_limit; > + rte_malloc_virt2phy; > + > + local: *; > +}; > diff --git a/lib/librte_mbuf/Makefile b/lib/librte_mbuf/Makefile > index 9b45ba4..5cd4941 100644 > --- a/lib/librte_mbuf/Makefile > +++ b/lib/librte_mbuf/Makefile > @@ -36,6 +36,8 @@ LIB = librte_mbuf.a > > CFLAGS += $(WERROR_FLAGS) -I$(SRCDIR) -O3 > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_mbuf/rte_mbuf_version.map > + > # all source are stored in SRCS-y > SRCS-$(CONFIG_RTE_LIBRTE_MBUF) := rte_mbuf.c > > diff --git a/lib/librte_mbuf/rte_mbuf_version.map b/lib/librte_mbuf/rte_mbuf_version.map > new file mode 100644 > index 0000000..55e352b > --- /dev/null > +++ b/lib/librte_mbuf/rte_mbuf_version.map > @@ -0,0 +1,12 @@ > +DPDK_1.8 { > + global: > + > + rte_mbuf_sanity_check; > + rte_ctrlmbuf_init; > + rte_pktmbuf_init; > + rte_pktmbuf_pool_init; > + rte_pktmbuf_dump; > + > + local: *; > +}; > + > diff --git a/lib/librte_mempool/Makefile b/lib/librte_mempool/Makefile > index 9939e10..07b5b4e 100644 > --- a/lib/librte_mempool/Makefile > +++ b/lib/librte_mempool/Makefile > @@ -36,6 +36,8 @@ LIB = librte_mempool.a > > CFLAGS += $(WERROR_FLAGS) -I$(SRCDIR) -O3 > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_mempool/rte_mempool_version.map > + > # all source are stored in SRCS-y > SRCS-$(CONFIG_RTE_LIBRTE_MEMPOOL) += rte_mempool.c > ifeq ($(CONFIG_RTE_LIBRTE_XEN_DOM0),y) > diff --git a/lib/librte_mempool/rte_mempool_version.map b/lib/librte_mempool/rte_mempool_version.map > new file mode 100644 > index 0000000..7a19982 > --- /dev/null > +++ b/lib/librte_mempool/rte_mempool_version.map > @@ -0,0 +1,18 @@ > +DPDK_1.8 { > + global: > + > + rte_mempool_create; > + rte_mempool_xmem_create; > + rte_dom0_mempool_create; > + rte_mempool_dump; > + rte_mempool_audit; > + rte_mempool_list_dump; > + rte_mempool_lookup; > + rte_mempool_calc_obj_size; > + rte_mempool_xmem_size; > + rte_mempool_xmem_usage; > + rte_mempool_walk; > + rte_mempool_count; > + > + local: *; > +}; > diff --git a/lib/librte_meter/Makefile b/lib/librte_meter/Makefile > index b25c0cc..0778690 100644 > --- a/lib/librte_meter/Makefile > +++ b/lib/librte_meter/Makefile > @@ -39,6 +39,8 @@ LIB = librte_meter.a > CFLAGS += -O3 > CFLAGS += $(WERROR_FLAGS) > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_meter/rte_meter_version.map > + > # > # all source are stored in SRCS-y > # > diff --git a/lib/librte_meter/rte_meter_version.map b/lib/librte_meter/rte_meter_version.map > new file mode 100644 > index 0000000..51a73b1 > --- /dev/null > +++ b/lib/librte_meter/rte_meter_version.map > @@ -0,0 +1,13 @@ > +DPDK_1.8 { > + global: > + > + rte_meter_srtcm_config; > + rte_meter_trtcm_config; > + rte_meter_srtcm_color_blind_check; > + rte_meter_srtcm_color_aware_check; > + rte_meter_trtcm_color_blind_check; > + rte_meter_trtcm_color_aware_check; > + > + local: *; > +}; > + > diff --git a/lib/librte_pipeline/Makefile b/lib/librte_pipeline/Makefile > index cf8fde8..5465d00 100644 > --- a/lib/librte_pipeline/Makefile > +++ b/lib/librte_pipeline/Makefile > @@ -39,6 +39,8 @@ LIB = librte_pipeline.a > CFLAGS += -O3 > CFLAGS += $(WERROR_FLAGS) > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_pipeline/rte_pipeline_version.map > + > # > # all source are stored in SRCS-y > # > diff --git a/lib/librte_pipeline/rte_pipeline_version.map b/lib/librte_pipeline/rte_pipeline_version.map > new file mode 100644 > index 0000000..f868b96 > --- /dev/null > +++ b/lib/librte_pipeline/rte_pipeline_version.map > @@ -0,0 +1,23 @@ > +DPDK_1.8 { > + global: > + > + rte_pipeline_create; > + rte_pipeline_free; > + rte_pipeline_check; > + rte_pipeline_run; > + rte_pipeline_flush; > + rte_pipeline_table_create; > + rte_pipeline_table_default_entry_add; > + rte_pipeline_table_default_entry_delete; > + rte_pipeline_table_entry_add; > + rte_pipeline_table_entry_delete; > + rte_pipeline_port_in_create; > + rte_pipeline_port_in_connect_to_table; > + rte_pipeline_port_in_enable; > + rte_pipeline_port_in_disable; > + rte_pipeline_port_out_create; > + rte_pipeline_port_out_packet_insert; > + > + local: *; > +}; > + > diff --git a/lib/librte_pmd_bond/Makefile b/lib/librte_pmd_bond/Makefile > index 953d75e..5b14ce2 100644 > --- a/lib/librte_pmd_bond/Makefile > +++ b/lib/librte_pmd_bond/Makefile > @@ -39,6 +39,8 @@ LIB = librte_pmd_bond.a > CFLAGS += -O3 > CFLAGS += $(WERROR_FLAGS) > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_pmd_bond/rte_eth_bond_version.map > + > # > # all source are stored in SRCS-y > # > diff --git a/lib/librte_pmd_bond/rte_eth_bond_version.map b/lib/librte_pmd_bond/rte_eth_bond_version.map > new file mode 100644 > index 0000000..17f0a1f > --- /dev/null > +++ b/lib/librte_pmd_bond/rte_eth_bond_version.map > @@ -0,0 +1,20 @@ > +DPDK_1.8 { > + global: > + > + rte_eth_bond_create; > + rte_eth_bond_slave_add; > + rte_eth_bond_slave_remove; > + rte_eth_bond_mode_set; > + rte_eth_bond_mode_get; > + rte_eth_bond_primary_set; > + rte_eth_bond_primary_get; > + rte_eth_bond_slaves_get; > + rte_eth_bond_active_slaves_get; > + rte_eth_bond_mac_address_set; > + rte_eth_bond_mac_address_reset; > + rte_eth_bond_xmit_policy_set; > + rte_eth_bond_xmit_policy_get; > + > + > + local: *; > +}; > diff --git a/lib/librte_pmd_e1000/Makefile b/lib/librte_pmd_e1000/Makefile > index 14bc4a2..e225bfe 100644 > --- a/lib/librte_pmd_e1000/Makefile > +++ b/lib/librte_pmd_e1000/Makefile > @@ -39,6 +39,8 @@ LIB = librte_pmd_e1000.a > CFLAGS += -O3 > CFLAGS += $(WERROR_FLAGS) > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_pmd_e1000/rte_pmd_e1000_version.map > + > ifeq ($(CC), icc) > # > # CFLAGS for icc > diff --git a/lib/librte_pmd_e1000/rte_pmd_e1000_version.map b/lib/librte_pmd_e1000/rte_pmd_e1000_version.map > new file mode 100644 > index 0000000..cbc401f > --- /dev/null > +++ b/lib/librte_pmd_e1000/rte_pmd_e1000_version.map > @@ -0,0 +1,5 @@ > +DPDK_1.8 { > + > + local: *; > +}; > + > diff --git a/lib/librte_pmd_i40e/Makefile b/lib/librte_pmd_i40e/Makefile > index 4b31675..cfbe816 100644 > --- a/lib/librte_pmd_i40e/Makefile > +++ b/lib/librte_pmd_i40e/Makefile > @@ -39,6 +39,8 @@ LIB = librte_pmd_i40e.a > CFLAGS += -O3 > CFLAGS += $(WERROR_FLAGS) > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_pmd_i40e/rte_pmd_i40e_version.map > + > # > # Add extra flags for base driver files (also known as shared code) > # to disable warnings > diff --git a/lib/librte_pmd_i40e/rte_pmd_i40e_version.map b/lib/librte_pmd_i40e/rte_pmd_i40e_version.map > new file mode 100644 > index 0000000..cbc401f > --- /dev/null > +++ b/lib/librte_pmd_i40e/rte_pmd_i40e_version.map > @@ -0,0 +1,5 @@ > +DPDK_1.8 { > + > + local: *; > +}; > + > diff --git a/lib/librte_pmd_ixgbe/Makefile b/lib/librte_pmd_ixgbe/Makefile > index 00ccedb..1dd14a6 100644 > --- a/lib/librte_pmd_ixgbe/Makefile > +++ b/lib/librte_pmd_ixgbe/Makefile > @@ -39,6 +39,8 @@ LIB = librte_pmd_ixgbe.a > CFLAGS += -O3 > CFLAGS += $(WERROR_FLAGS) > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_pmd_ixgbe/rte_pmd_ixgbe_version.map > + > ifeq ($(CC), icc) > # > # CFLAGS for icc > diff --git a/lib/librte_pmd_ixgbe/rte_pmd_ixgbe_version.map b/lib/librte_pmd_ixgbe/rte_pmd_ixgbe_version.map > new file mode 100644 > index 0000000..cbc401f > --- /dev/null > +++ b/lib/librte_pmd_ixgbe/rte_pmd_ixgbe_version.map > @@ -0,0 +1,5 @@ > +DPDK_1.8 { > + > + local: *; > +}; > + > diff --git a/lib/librte_pmd_pcap/Makefile b/lib/librte_pmd_pcap/Makefile > index c5c214d..fff5572 100644 > --- a/lib/librte_pmd_pcap/Makefile > +++ b/lib/librte_pmd_pcap/Makefile > @@ -40,6 +40,8 @@ LIB = librte_pmd_pcap.a > CFLAGS += -O3 > CFLAGS += $(WERROR_FLAGS) > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_pmd_pcap/rte_pmd_pcap_version.map > + > # > # all source are stored in SRCS-y > # > diff --git a/lib/librte_pmd_pcap/rte_pmd_pcap_version.map b/lib/librte_pmd_pcap/rte_pmd_pcap_version.map > new file mode 100644 > index 0000000..cbc401f > --- /dev/null > +++ b/lib/librte_pmd_pcap/rte_pmd_pcap_version.map > @@ -0,0 +1,5 @@ > +DPDK_1.8 { > + > + local: *; > +}; > + > diff --git a/lib/librte_pmd_ring/Makefile b/lib/librte_pmd_ring/Makefile > index b57e421..25ad27f 100644 > --- a/lib/librte_pmd_ring/Makefile > +++ b/lib/librte_pmd_ring/Makefile > @@ -39,6 +39,8 @@ LIB = librte_pmd_ring.a > CFLAGS += -O3 > CFLAGS += $(WERROR_FLAGS) > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_pmd_ring/rte_eth_ring_version.map > + > # > # all source are stored in SRCS-y > # > diff --git a/lib/librte_pmd_ring/rte_eth_ring.c b/lib/librte_pmd_ring/rte_eth_ring.c > index 4f1b6ed..df7b583 100644 > --- a/lib/librte_pmd_ring/rte_eth_ring.c > +++ b/lib/librte_pmd_ring/rte_eth_ring.c > @@ -473,7 +473,7 @@ out: > return ret; > } > > -int > +static int > rte_pmd_ring_devinit(const char *name, const char *params) > { > struct rte_kvargs *kvlist; > diff --git a/lib/librte_pmd_ring/rte_eth_ring.h b/lib/librte_pmd_ring/rte_eth_ring.h > index e6ae19e..d36489a 100644 > --- a/lib/librte_pmd_ring/rte_eth_ring.h > +++ b/lib/librte_pmd_ring/rte_eth_ring.h > @@ -50,12 +50,6 @@ int rte_eth_from_rings(const char *name, > int rte_eth_ring_pair_create(const char *name, const unsigned numa_node); > int rte_eth_ring_pair_attach(const char *name, const unsigned numa_node); > > -/** > - * For use by test apps only. Called as part of EAL init to set up any dummy NICs > - * configured on command line. > - */ > -int rte_pmd_ring_devinit(const char *name, const char *params); > - > #ifdef __cplusplus > } > #endif > diff --git a/lib/librte_pmd_ring/rte_eth_ring_version.map b/lib/librte_pmd_ring/rte_eth_ring_version.map > new file mode 100644 > index 0000000..5edaa3d > --- /dev/null > +++ b/lib/librte_pmd_ring/rte_eth_ring_version.map > @@ -0,0 +1,10 @@ > +DPDK_1.8 { > + > + global: > + > + rte_eth_from_rings; > + rte_eth_ring_pair_create; > + rte_eth_ring_pair_attach; > + > + local: *; > +}; > diff --git a/lib/librte_pmd_virtio/Makefile b/lib/librte_pmd_virtio/Makefile > index 456095b..bf51bd9 100644 > --- a/lib/librte_pmd_virtio/Makefile > +++ b/lib/librte_pmd_virtio/Makefile > @@ -39,6 +39,7 @@ LIB = librte_pmd_virtio_uio.a > CFLAGS += -O3 > CFLAGS += $(WERROR_FLAGS) > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_pmd_virtio/rte_pmd_virtio_version.map > > # > # all source are stored in SRCS-y > diff --git a/lib/librte_pmd_virtio/rte_pmd_virtio_version.map b/lib/librte_pmd_virtio/rte_pmd_virtio_version.map > new file mode 100644 > index 0000000..cbc401f > --- /dev/null > +++ b/lib/librte_pmd_virtio/rte_pmd_virtio_version.map > @@ -0,0 +1,5 @@ > +DPDK_1.8 { > + > + local: *; > +}; > + > diff --git a/lib/librte_pmd_vmxnet3/Makefile b/lib/librte_pmd_vmxnet3/Makefile > index 6872c74..e5a1c6b 100644 > --- a/lib/librte_pmd_vmxnet3/Makefile > +++ b/lib/librte_pmd_vmxnet3/Makefile > @@ -66,6 +66,8 @@ endif > > VPATH += $(RTE_SDK)/lib/librte_pmd_vmxnet3/vmxnet3 > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_pmd_vmxnet3/rte_pmd_vmxnet3_version.map > + > # > # all source are stored in SRCS-y > # > diff --git a/lib/librte_pmd_vmxnet3/rte_pmd_vmxnet3_version.map b/lib/librte_pmd_vmxnet3/rte_pmd_vmxnet3_version.map > new file mode 100644 > index 0000000..cbc401f > --- /dev/null > +++ b/lib/librte_pmd_vmxnet3/rte_pmd_vmxnet3_version.map > @@ -0,0 +1,5 @@ > +DPDK_1.8 { > + > + local: *; > +}; > + > diff --git a/lib/librte_pmd_xenvirt/Makefile b/lib/librte_pmd_xenvirt/Makefile > index 01bfcaa..0a08b1b 100644 > --- a/lib/librte_pmd_xenvirt/Makefile > +++ b/lib/librte_pmd_xenvirt/Makefile > @@ -39,6 +39,8 @@ LIB = librte_pmd_xenvirt.a > CFLAGS += -O3 > CFLAGS += $(WERROR_FLAGS) > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_pmd_xenvirt/rte_eth_xenvirt_version.map > + > # > # all source are stored in SRCS-y > # > diff --git a/lib/librte_pmd_xenvirt/rte_eth_xenvirt_version.map b/lib/librte_pmd_xenvirt/rte_eth_xenvirt_version.map > new file mode 100644 > index 0000000..66199b1 > --- /dev/null > +++ b/lib/librte_pmd_xenvirt/rte_eth_xenvirt_version.map > @@ -0,0 +1,8 @@ > +DPDK_1.8 { > + global: > + > + rte_mempool_gntalloc_create; > + > + local: *; > +}; > + > diff --git a/lib/librte_port/Makefile b/lib/librte_port/Makefile > index 28793a5..e812bda 100644 > --- a/lib/librte_port/Makefile > +++ b/lib/librte_port/Makefile > @@ -39,6 +39,8 @@ LIB = librte_port.a > CFLAGS += -O3 > CFLAGS += $(WERROR_FLAGS) > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_port/rte_port_version.map > + > # > # all source are stored in SRCS-y > # > diff --git a/lib/librte_port/rte_port_version.map b/lib/librte_port/rte_port_version.map > new file mode 100644 > index 0000000..57ccaa3 > --- /dev/null > +++ b/lib/librte_port/rte_port_version.map > @@ -0,0 +1,18 @@ > +DPDK_1.8 { > + global: > + rte_port_ring_reader_ops; > + rte_port_ring_writer_ops; > + rte_port_ethdev_reader_ops; > + rte_port_ethdev_writer_ops; > + rte_port_ring_reader_ipv4_frag_ops; > + rte_port_ring_writer_ipv4_ras_ops; > + rte_port_ring_reader_ops; > + rte_port_ring_writer_ops; > + rte_port_sched_reader_ops; > + rte_port_sched_writer_ops; > + rte_port_source_ops; > + rte_port_sink_ops; > + > + local: *; > +}; > + > diff --git a/lib/librte_power/Makefile b/lib/librte_power/Makefile > index 6185812..26ee542 100644 > --- a/lib/librte_power/Makefile > +++ b/lib/librte_power/Makefile > @@ -36,6 +36,8 @@ LIB = librte_power.a > > CFLAGS += $(WERROR_FLAGS) -I$(SRCDIR) -O3 -fno-strict-aliasing > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_power/rte_power_version.map > + > # all source are stored in SRCS-y > SRCS-$(CONFIG_RTE_LIBRTE_POWER) := rte_power.c > > diff --git a/lib/librte_power/rte_power_version.map b/lib/librte_power/rte_power_version.map > new file mode 100644 > index 0000000..3b2375a > --- /dev/null > +++ b/lib/librte_power/rte_power_version.map > @@ -0,0 +1,14 @@ > +DPDK_1.8 { > + global: > + rte_power_init; > + rte_power_exit; > + rte_power_freqs; > + rte_power_get_freq; > + rte_power_set_freq; > + rte_power_freq_up; > + rte_power_freq_down; > + rte_power_freq_max; > + rte_power_freq_min; > + > + local: *; > +}; > diff --git a/lib/librte_ring/Makefile b/lib/librte_ring/Makefile > index 2380a43..0adaa00 100644 > --- a/lib/librte_ring/Makefile > +++ b/lib/librte_ring/Makefile > @@ -36,6 +36,8 @@ LIB = librte_ring.a > > CFLAGS += $(WERROR_FLAGS) -I$(SRCDIR) -O3 > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_ring/rte_ring_version.map > + > # all source are stored in SRCS-y > SRCS-$(CONFIG_RTE_LIBRTE_RING) := rte_ring.c > > diff --git a/lib/librte_ring/rte_ring_version.map b/lib/librte_ring/rte_ring_version.map > new file mode 100644 > index 0000000..6c28af9 > --- /dev/null > +++ b/lib/librte_ring/rte_ring_version.map > @@ -0,0 +1,12 @@ > +DPDK_1.8 { > + global: > + rte_ring_get_memsize; > + rte_ring_init; > + rte_ring_create; > + rte_ring_set_water_mark; > + rte_ring_dump; > + rte_ring_list_dump; > + rte_ring_lookup; > + > + local: *; > +}; > diff --git a/lib/librte_sched/Makefile b/lib/librte_sched/Makefile > index 1a25b21..205fb7a 100644 > --- a/lib/librte_sched/Makefile > +++ b/lib/librte_sched/Makefile > @@ -41,6 +41,8 @@ CFLAGS += $(WERROR_FLAGS) > > CFLAGS_rte_red.o := -D_GNU_SOURCE > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_sched/rte_sched_version.map > + > # > # all source are stored in SRCS-y > # > diff --git a/lib/librte_sched/rte_sched_version.map b/lib/librte_sched/rte_sched_version.map > new file mode 100644 > index 0000000..b5877ce > --- /dev/null > +++ b/lib/librte_sched/rte_sched_version.map > @@ -0,0 +1,22 @@ > +DPDK_1.8 { > + global: > + > + rte_approx; > + rte_red_rt_data_init; > + rte_red_config_init; > + rte_sched_port_config; > + rte_sched_port_free; > + rte_sched_subport_config; > + rte_sched_pipe_config; > + rte_sched_port_get_memory_footprint; > + rte_sched_subport_read_stats; > + rte_sched_queue_read_stats; > + rte_sched_port_enqueue; > + rte_sched_port_dequeue; > + rte_red_log2_1_minus_Wq; > + rte_red_pow2_frac_inv; > + rte_red_rand_val; > + rte_red_rand_seed; > + > + local: *; > +}; > diff --git a/lib/librte_table/Makefile b/lib/librte_table/Makefile > index dd684cc..5b54acc 100644 > --- a/lib/librte_table/Makefile > +++ b/lib/librte_table/Makefile > @@ -39,6 +39,8 @@ LIB = librte_table.a > CFLAGS += -O3 > CFLAGS += $(WERROR_FLAGS) > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_table/rte_table_version.map > + > # > # all source are stored in SRCS-y > # > diff --git a/lib/librte_table/rte_table_version.map b/lib/librte_table/rte_table_version.map > new file mode 100644 > index 0000000..86f16b8 > --- /dev/null > +++ b/lib/librte_table/rte_table_version.map > @@ -0,0 +1,22 @@ > +DPDK_1.8 { > + global: > + > + rte_table_stub_ops; > + rte_table_lpm_ops; > + rte_table_array_ops; > + rte_table_hash_key8_lru_ops; > + rte_table_hash_key8_lru_dosig_ops; > + rte_table_hash_key8_ext_ops; > + rte_table_hash_key8_ext_dosig_ops; > + rte_table_lpm_ipv6_ops; > + rte_table_hash_key16_lru_ops; > + rte_table_hash_key32_lru_ops; > + rte_table_hash_key16_ext_ops; > + rte_table_hash_key32_ext_ops; > + rte_table_acl_ops; > + rte_table_hash_lru_ops; > + rte_table_hash_ext_ops; > + > + local: *; > +}; > + > diff --git a/lib/librte_timer/Makefile b/lib/librte_timer/Makefile > index 07eb0c6..f703e5f 100644 > --- a/lib/librte_timer/Makefile > +++ b/lib/librte_timer/Makefile > @@ -36,6 +36,8 @@ LIB = librte_timer.a > > CFLAGS += $(WERROR_FLAGS) -I$(SRCDIR) -O3 > > +EXPORT_MAP := $(RTE_SDK)/lib/librte_timer/rte_timer_version.map > + > # all source are stored in SRCS-y > SRCS-$(CONFIG_RTE_LIBRTE_TIMER) := rte_timer.c > > diff --git a/lib/librte_timer/rte_timer_version.map b/lib/librte_timer/rte_timer_version.map > new file mode 100644 > index 0000000..00b6b52 > --- /dev/null > +++ b/lib/librte_timer/rte_timer_version.map > @@ -0,0 +1,16 @@ > +DPDK_1.8 { > + global: > + > + rte_timer_subsystem_init; > + rte_timer_init; > + rte_timer_reset; > + rte_timer_reset_sync; > + rte_timer_stop; > + rte_timer_stop_sync; > + rte_timer_pending; > + rte_timer_manage; > + rte_timer_dump_stats; > + > + local: *; > +}; > + > -- > 1.9.3 > May need to update some of the version maps with new functions in head. Acked-by: Sergio Gonzalez Monroy