On Wed, 2018-03-07 at 17:44 +0000, Ferruh Yigit wrote: > After experimental API process defined do we still need RTE_NEXT_ABI > config and process which has similar targets? > > Are distros disable experimental APIs when delivering DPDK? And is > there > any config required to control this, as RTE_NEXT_ABI intended to do?
I tried to tinker with not exporting experimental APIs - but the problem is intra-project dependencies, iow: librte_foo has a foo_experimental API that librte_bar uses, so if librte_foo foo_experimental symbol is not available everything breaks down. I need to spend a bit more on this problem but -ENOTIME > Cc: Neil Horman <nhor...@tuxdriver.com> > Cc: Thomas Monjalon <tho...@monjalon.net> > Cc: Luca Boccassi <bl...@debian.org> > Cc: Christian Ehrhardt <christian.ehrha...@canonical.com> > > Signed-off-by: Ferruh Yigit <ferruh.yi...@intel.com> > --- > config/common_base | 5 ----- > devtools/test-build.sh | 2 -- > devtools/validate-abi.sh | 1 - > doc/guides/contributing/versioning.rst | 10 ---------- > mk/rte.lib.mk | 5 ----- > pkg/dpdk.spec | 1 - > 6 files changed, 24 deletions(-) > > diff --git a/config/common_base b/config/common_base > index ad03cf433..6b867f6a9 100644 > --- a/config/common_base > +++ b/config/common_base > @@ -41,11 +41,6 @@ CONFIG_RTE_ARCH_STRICT_ALIGN=n > CONFIG_RTE_BUILD_SHARED_LIB=n > > # > -# Use newest code breaking previous ABI > -# > -CONFIG_RTE_NEXT_ABI=y > - > -# > # Major ABI to overwrite library specific LIBABIVER > # > CONFIG_RTE_MAJOR_ABI= > diff --git a/devtools/test-build.sh b/devtools/test-build.sh > index 3362edcc5..22b4e1a98 100755 > --- a/devtools/test-build.sh > +++ b/devtools/test-build.sh > @@ -154,8 +154,6 @@ config () # <directory> <target> <options> > # Built-in options (lowercase) > ! echo $3 | grep -q '+default' || \ > sed -ri 's,(RTE_MACHINE=")native,\1default,' > $1/.config > - echo $3 | grep -q '+next' || \ > - sed -ri 's,(NEXT_ABI=)y,\1n,' $1/.config > ! echo $3 | grep -q '+shared' || \ > sed -ri 's,(SHARED_LIB=)n,\1y,' $1/.config > ! echo $3 | grep -q '+debug' || ( \ > diff --git a/devtools/validate-abi.sh b/devtools/validate-abi.sh > index 138436d93..a64edf92f 100755 > --- a/devtools/validate-abi.sh > +++ b/devtools/validate-abi.sh > @@ -105,7 +105,6 @@ set_log_file() { > fixup_config() { > local conf=config/defconfig_$target > cmd sed -i -e"$ a\CONFIG_RTE_BUILD_SHARED_LIB=y" $conf > - cmd sed -i -e"$ a\CONFIG_RTE_NEXT_ABI=n" $conf > cmd sed -i -e"$ a\CONFIG_RTE_EAL_IGB_UIO=n" $conf > cmd sed -i -e"$ a\CONFIG_RTE_LIBRTE_KNI=n" $conf > cmd sed -i -e"$ a\CONFIG_RTE_KNI_KMOD=n" $conf > diff --git a/doc/guides/contributing/versioning.rst > b/doc/guides/contributing/versioning.rst > index c495294db..59ff0e8b7 100644 > --- a/doc/guides/contributing/versioning.rst > +++ b/doc/guides/contributing/versioning.rst > @@ -91,19 +91,9 @@ being provided. The requirements for doing so are: > interest" be sought for each deprecation, for example: from NIC > vendors, > CPU vendors, end-users, etc. > > -#. The changes (including an alternative map file) must be gated > with > - the ``RTE_NEXT_ABI`` option, and provided with a deprecation > notice at the > - same time. > - It will become the default ABI in the next release. > - > #. A full deprecation cycle, as explained above, must be made to > offer > downstream consumers sufficient warning of the change. > > -#. At the beginning of the next release cycle, every > ``RTE_NEXT_ABI`` > - conditions will be removed, the ``LIBABIVER`` variable in the > makefile(s) > - where the ABI is changed will be incremented, and the map files > will > - be updated. > - > Note that the above process for ABI deprecation should not be > undertaken > lightly. ABI stability is extremely important for downstream > consumers of the > DPDK, especially when distributed in shared object form. Every > effort should > diff --git a/mk/rte.lib.mk b/mk/rte.lib.mk > index c696a2174..8ac26face 100644 > --- a/mk/rte.lib.mk > +++ b/mk/rte.lib.mk > @@ -20,11 +20,6 @@ endif > ifeq ($(CONFIG_RTE_BUILD_SHARED_LIB),y) > LIB := $(patsubst %.a,%.so.$(LIBABIVER),$(LIB)) > ifeq ($(EXTLIB_BUILD),n) > -ifeq ($(CONFIG_RTE_MAJOR_ABI),) > -ifeq ($(CONFIG_RTE_NEXT_ABI),y) > -LIB := $(LIB).1 > -endif > -endif > CPU_LDFLAGS += --version-script=$(SRCDIR)/$(EXPORT_MAP) > endif > endif > diff --git a/pkg/dpdk.spec b/pkg/dpdk.spec > index 4d3b5745c..d118f0463 100644 > --- a/pkg/dpdk.spec > +++ b/pkg/dpdk.spec > @@ -84,7 +84,6 @@ make O=%{target} T=%{config} config > sed -ri 's,(RTE_MACHINE=).*,\1%{machine},' %{target}/.config > sed -ri 's,(RTE_APP_TEST=).*,\1n,' %{target}/.config > sed -ri 's,(RTE_BUILD_SHARED_LIB=).*,\1y,' %{target}/.config > -sed -ri 's,(RTE_NEXT_ABI=).*,\1n,' %{target}/.config > sed -ri 's,(LIBRTE_VHOST=).*,\1y,' %{target}/.config > sed -ri 's,(LIBRTE_PMD_PCAP=).*,\1y,' %{target}/.config > make O=%{target} %{?_smp_mflags} -- Kind regards, Luca Boccassi