[dpdk-dev] [PATCH v3 0/5] Enhance build process

Sergio Gonzalez Monroy sergio.gonzalez.monroy at intel.com
Wed Apr 8 17:07:20 CEST 2015


This patch series has the following goals:
 - Remove config option to build a combined library to simplify maintenance.
 - Add makefile to always generate linker script that behaves like a
   combined library.
 - For shared libraries, explicitly link against dependant libraries (adding
   entries to DT_NEEDED).
 - Update app linking flags for static/shared DPDK libs.

v3:
 - keep CONFIG_RTE_LIBNAME config option.
 - add makefile to always generate a linker script that behaves like a
   combined library.
 - rebase patch

v2:
 - Do not create a core library to solve circular dependencies between
   eal, malloc, mempool and ring libraries. Instead, add DT_NEEDED
   entries for all libraries but eal, then for application linking,
   always link against these libraries by preceding them with
   --no-as-needed flag.

Sergio Gonzalez Monroy (5):
  mk: remove combined library and related options
  mk: always generate combined lib linker script
  lib: set LDLIBS for each library
  mk: use LDLIBS when linking shared libraries
  mk: update LDLIBS for app building

 config/common_bsdapp                 |   3 +-
 config/common_linuxapp               |   3 +-
 lib/Makefile                         |   1 -
 lib/librte_acl/Makefile              |   2 +
 lib/librte_cfgfile/Makefile          |   2 +
 lib/librte_cmdline/Makefile          |   2 +
 lib/librte_distributor/Makefile      |   2 +
 lib/librte_eal/bsdapp/eal/Makefile   |   2 +
 lib/librte_eal/linuxapp/eal/Makefile |   2 +
 lib/librte_ether/Makefile            |   5 +-
 lib/librte_hash/Makefile             |   2 +
 lib/librte_ip_frag/Makefile          |   3 ++
 lib/librte_ivshmem/Makefile          |   2 +
 lib/librte_jobstats/Makefile         |   2 +
 lib/librte_kni/Makefile              |   2 +
 lib/librte_kvargs/Makefile           |   2 +
 lib/librte_lpm/Makefile              |   2 +
 lib/librte_malloc/Makefile           |   2 +
 lib/librte_mbuf/Makefile             |   2 +
 lib/librte_mempool/Makefile          |   2 +
 lib/librte_meter/Makefile            |   2 +
 lib/librte_pipeline/Makefile         |   2 +
 lib/librte_pmd_af_packet/Makefile    |   2 +
 lib/librte_pmd_bond/Makefile         |   6 +++
 lib/librte_pmd_e1000/Makefile        |   2 +
 lib/librte_pmd_enic/Makefile         |   3 ++
 lib/librte_pmd_fm10k/Makefile        |   2 +
 lib/librte_pmd_i40e/Makefile         |   2 +
 lib/librte_pmd_ixgbe/Makefile        |   2 +
 lib/librte_pmd_mlx4/Makefile         |   2 +
 lib/librte_pmd_null/Makefile         |   2 +
 lib/librte_pmd_pcap/Makefile         |   2 +
 lib/librte_pmd_ring/Makefile         |   4 +-
 lib/librte_pmd_virtio/Makefile       |   2 +
 lib/librte_pmd_vmxnet3/Makefile      |   2 +
 lib/librte_pmd_xenvirt/Makefile      |   3 ++
 lib/librte_port/Makefile             |   4 ++
 lib/librte_power/Makefile            |   2 +
 lib/librte_reorder/Makefile          |   2 +
 lib/librte_ring/Makefile             |   2 +
 lib/librte_sched/Makefile            |   2 +
 lib/librte_table/Makefile            |   4 ++
 lib/librte_timer/Makefile            |   2 +
 lib/librte_vhost/Makefile            |   7 ++-
 mk/rte.app.mk                        |  60 ++++++++++-----------
 mk/rte.combinedlib.mk                |  89 ++++++++++++++++++++++++++++++
 mk/rte.lib.mk                        |  50 ++++-------------
 mk/rte.sdkbuild.mk                   |   4 +-
 mk/rte.sharelib.mk                   | 101 -----------------------------------
 mk/rte.vars.mk                       |   4 --
 50 files changed, 229 insertions(+), 189 deletions(-)
 create mode 100644 mk/rte.combinedlib.mk
 delete mode 100644 mk/rte.sharelib.mk

-- 
1.9.3



More information about the dev mailing list