diff mbox

[PATCHv4,7/8] validation: moving pktio plt specific to platform

Message ID 1433850261-1302-8-git-send-email-christophe.milard@linaro.org
State New
Headers show

Commit Message

Christophe Milard June 9, 2015, 11:44 a.m. UTC
The platform specific scripts for pktio are now moved
from the validation to the platform side.
Pktio tests are now initiated from the platform side.

Signed-off-by: Christophe Milard <christophe.milard@linaro.org>
---
 configure.ac                                       |  1 +
 platform/linux-generic/test/.gitignore             |  2 +
 platform/linux-generic/test/Makefile.am            |  9 +++-
 platform/linux-generic/test/pktio/.gitignore       |  2 +
 platform/linux-generic/test/pktio/Makefile.am      |  2 +
 platform/linux-generic/test/{ => pktio}/pktio_env  |  0
 .../linux-generic/test}/pktio/pktio_run            | 51 ++++++++++------------
 test/performance/odp_l2fwd_run                     |  4 +-
 test/validation/Makefile.am                        |  4 +-
 test/validation/pktio/Makefile.am                  |  2 -
 10 files changed, 42 insertions(+), 35 deletions(-)
 create mode 100644 platform/linux-generic/test/.gitignore
 create mode 100644 platform/linux-generic/test/pktio/.gitignore
 create mode 100644 platform/linux-generic/test/pktio/Makefile.am
 rename platform/linux-generic/test/{ => pktio}/pktio_env (100%)
 rename {test/validation => platform/linux-generic/test}/pktio/pktio_run (51%)

Comments

Maxim Uvarov June 9, 2015, 4:41 p.m. UTC | #1
On 06/09/15 14:44, Christophe Milard wrote:
> The platform specific scripts for pktio are now moved
> from the validation to the platform side.
> Pktio tests are now initiated from the platform side.
>
> Signed-off-by: Christophe Milard <christophe.milard@linaro.org>
> ---
>   configure.ac                                       |  1 +
>   platform/linux-generic/test/.gitignore             |  2 +
>   platform/linux-generic/test/Makefile.am            |  9 +++-
>   platform/linux-generic/test/pktio/.gitignore       |  2 +
>   platform/linux-generic/test/pktio/Makefile.am      |  2 +
>   platform/linux-generic/test/{ => pktio}/pktio_env  |  0
>   .../linux-generic/test}/pktio/pktio_run            | 51 ++++++++++------------
>   test/performance/odp_l2fwd_run                     |  4 +-
>   test/validation/Makefile.am                        |  4 +-
>   test/validation/pktio/Makefile.am                  |  2 -
>   10 files changed, 42 insertions(+), 35 deletions(-)
>   create mode 100644 platform/linux-generic/test/.gitignore
>   create mode 100644 platform/linux-generic/test/pktio/.gitignore
>   create mode 100644 platform/linux-generic/test/pktio/Makefile.am
>   rename platform/linux-generic/test/{ => pktio}/pktio_env (100%)
>   rename {test/validation => platform/linux-generic/test}/pktio/pktio_run (51%)
>
> diff --git a/configure.ac b/configure.ac
> index 96126cb..98eba55 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -297,6 +297,7 @@ AC_CONFIG_FILES([Makefile
>   		 helper/test/Makefile
>   		 pkgconfig/libodp.pc
>   		 platform/linux-generic/Makefile
> +		 platform/linux-generic/test/pktio/Makefile
>   		 scripts/Makefile
>   		 test/Makefile
>   		 test/api_test/Makefile
> diff --git a/platform/linux-generic/test/.gitignore b/platform/linux-generic/test/.gitignore
> new file mode 100644
> index 0000000..7e563b8
> --- /dev/null
> +++ b/platform/linux-generic/test/.gitignore
> @@ -0,0 +1,2 @@
> +*.log
> +*.trs
> diff --git a/platform/linux-generic/test/Makefile.am b/platform/linux-generic/test/Makefile.am
> index 91e361c..2e0bc11 100644
> --- a/platform/linux-generic/test/Makefile.am
> +++ b/platform/linux-generic/test/Makefile.am
> @@ -1 +1,8 @@
> -dist_bin_SCRIPTS = $(srcdir)/pktio_env
> +TESTS_ENVIRONMENT = TEST_DIR=${top_builddir}/test/validation
> +
> +if test_vald
> +TESTS = pktio/pktio_run
> +endif
> +
> +ODP_MODULES = pktio
> +SUBDIRS = $(ODP_MODULES)

if you put here everything under test_vald then probably that files will 
be not installed to .deb.
If it's so it's good to correct that now since it's only one issue left 
here.

Maxim.

> diff --git a/platform/linux-generic/test/pktio/.gitignore b/platform/linux-generic/test/pktio/.gitignore
> new file mode 100644
> index 0000000..7e563b8
> --- /dev/null
> +++ b/platform/linux-generic/test/pktio/.gitignore
> @@ -0,0 +1,2 @@
> +*.log
> +*.trs
> diff --git a/platform/linux-generic/test/pktio/Makefile.am b/platform/linux-generic/test/pktio/Makefile.am
> new file mode 100644
> index 0000000..93281dd
> --- /dev/null
> +++ b/platform/linux-generic/test/pktio/Makefile.am
> @@ -0,0 +1,2 @@
> +dist_bin_SCRIPTS = pktio_env \
> +		   pktio_run
> diff --git a/platform/linux-generic/test/pktio_env b/platform/linux-generic/test/pktio/pktio_env
> similarity index 100%
> rename from platform/linux-generic/test/pktio_env
> rename to platform/linux-generic/test/pktio/pktio_env
> diff --git a/test/validation/pktio/pktio_run b/platform/linux-generic/test/pktio/pktio_run
> similarity index 51%
> rename from test/validation/pktio/pktio_run
> rename to platform/linux-generic/test/pktio/pktio_run
> index aed0cd2..0dc5052 100755
> --- a/test/validation/pktio/pktio_run
> +++ b/platform/linux-generic/test/pktio/pktio_run
> @@ -6,26 +6,26 @@
>   # SPDX-License-Identifier:	BSD-3-Clause
>   #
>   
> -# TEST_DIR is set by Makefile to point to the directory where binaries have been
> -# built (Makefile variable builddir)
> -# If TEST_DIR is not set it means we are not running with make, and in this case
> -# there are two situations:
> -# 1. user build ODP in the same dir as the source (most likely)
> -#    here the user can simply call pktio_run
> -# 2. user may have built ODP in a separate build dir (like bitbake usually does)
> -#    here the user has to do something like $ODP/test/validation/pktio_run
> -#
> -# In both situations the script assumes that the user is in the directory where
> -# pktio_main exists. If that's not true, then the user has to specify the path
> -# to it and run:
> -# TEST_DIR=$builddir $ODP/test/validation/pktio_run
> +# directories where pktio_main binary can be found:
> +# -in the validation dir when running make check (intree or out of tree)
> +# -in the script directory, when running after 'make install', or
> +# -in the validation when running standalone (./pktio_run) intree.
> +# -in the current directory.
> +# running stand alone out of tree requires setting PATH
> +PATH=$PATH:${TEST_DIR}/pktio
> +PATH=$PATH:$(dirname $0)
> +PATH=$PATH:$(dirname $0)/../../../../test/validation/pktio
> +PATH=$PATH:.
>   
> -# directory where test binaries have been built
> -TEST_DIR="${TEST_DIR:-$PWD}"
> -# directory where test sources are, including scripts
> -TEST_SRC_DIR=$(dirname $0)
> +pktio_main_path=$(which pktio_main)
> +if [ -x "$pktio_main_path" ] ; then
> +	echo "running with pktio_main: $pktio_run_path"
> +else
> +	echo "cannot find pktio_main: please set you PATH for it."
> +fi
>   
> -PATH=$TEST_DIR:$PATH
> +# directory where platform test sources are, including scripts
> +TEST_SRC_DIR=$(dirname $0)
>   
>   # exit codes expected by automake for skipped tests
>   TEST_SKIPPED=77
> @@ -33,12 +33,8 @@ TEST_SKIPPED=77
>   # Use installed pktio env or for make check take it from platform directory
>   if [ -f "./pktio_env" ]; then
>   	. ./pktio_env
> -elif  [ "$ODP_PLATFORM" = "" ]; then
> -	echo "$0: error: ODP_PLATFORM must be defined"
> -	# not skipped as this should never happen via "make check"
> -	exit 1
> -elif [ -f ${TEST_SRC_DIR}/../../../platform/$ODP_PLATFORM/test/pktio_env ]; then
> -	. ${TEST_SRC_DIR}/../../../platform/$ODP_PLATFORM/test/pktio_env
> +elif [ -f ${TEST_SRC_DIR}/pktio_env ]; then
> +	. ${TEST_SRC_DIR}/pktio_env
>   else
>   	echo "BUG: unable to find pktio_env!"
>   	echo "pktio_env has to be in current directory or in platform/\$ODP_PLATFORM/test."
> @@ -61,7 +57,7 @@ run_test()
>   		if [ "$disabletype" != "SKIP" ]; then
>   			export ODP_PKTIO_DISABLE_SOCKET_${distype}=y
>   		fi
> -		${TEST_DIR}/pktio/pktio_main
> +		pktio_main
>   		if [ $? -ne 0 ]; then
>   			ret=1
>   		fi
> @@ -76,9 +72,10 @@ run_test()
>   
>   run()
>   {
> -	if [ "$ODP_PLATFORM" != "linux-generic" -o "$(id -u)" != "0" ]; then
> +	#need to be root to set the interface: if not, run with default loopback.
> +	if [ "$(id -u)" != "0" ]; then
>   		echo "pktio: using 'loop' device"
> -		${TEST_DIR}/pktio/pktio_main
> +		pktio_main
>   		exit $?
>   	fi
>   
> diff --git a/test/performance/odp_l2fwd_run b/test/performance/odp_l2fwd_run
> index bbf0c0c..120da21 100755
> --- a/test/performance/odp_l2fwd_run
> +++ b/test/performance/odp_l2fwd_run
> @@ -37,8 +37,8 @@ elif  [ "$ODP_PLATFORM" = "" ]; then
>   	echo "$0: error: ODP_PLATFORM must be defined"
>   	# not skipped as this should never happen via "make check"
>   	exit 1
> -elif [ -f ${TEST_SRC_DIR}/../../platform/$ODP_PLATFORM/test/pktio_env ]; then
> -	. ${TEST_SRC_DIR}/../../platform/$ODP_PLATFORM/test/pktio_env
> +elif [ -f ${TEST_SRC_DIR}/../../platform/$ODP_PLATFORM/test/pktio/pktio_env ]; then
> +	. ${TEST_SRC_DIR}/../../platform/$ODP_PLATFORM/test/pktio/pktio_env
>   else
>   	echo "BUG: unable to find pktio_env!"
>   	echo "pktio_env has to be in current directory or in platform/\$ODP_PLATFORM/test."
> diff --git a/test/validation/Makefile.am b/test/validation/Makefile.am
> index 74304f5..0c69636 100644
> --- a/test/validation/Makefile.am
> +++ b/test/validation/Makefile.am
> @@ -25,10 +25,8 @@ EXECUTABLES = odp_buffer \
>   	      odp_thread \
>   	      odp_ver_abt_log_dbg
>   
> -TESTSCRIPTS = pktio/pktio_run
> -
>   if test_vald
> -TESTS = $(EXECUTABLES) $(TESTSCRIPTS)
> +TESTS = $(EXECUTABLES)
>   endif
>   
>   bin_PROGRAMS = $(EXECUTABLES) $(COMPILE_ONLY)
> diff --git a/test/validation/pktio/Makefile.am b/test/validation/pktio/Makefile.am
> index c2ecc23..1d1a0d9 100644
> --- a/test/validation/pktio/Makefile.am
> +++ b/test/validation/pktio/Makefile.am
> @@ -1,7 +1,5 @@
>   include ../Makefile.inc
>   
> -dist_bin_SCRIPTS = pktio_run
> -
>   noinst_LIBRARIES = libpktio.a
>   libpktio_a_SOURCES = pktio.c
>
diff mbox

Patch

diff --git a/configure.ac b/configure.ac
index 96126cb..98eba55 100644
--- a/configure.ac
+++ b/configure.ac
@@ -297,6 +297,7 @@  AC_CONFIG_FILES([Makefile
 		 helper/test/Makefile
 		 pkgconfig/libodp.pc
 		 platform/linux-generic/Makefile
+		 platform/linux-generic/test/pktio/Makefile
 		 scripts/Makefile
 		 test/Makefile
 		 test/api_test/Makefile
diff --git a/platform/linux-generic/test/.gitignore b/platform/linux-generic/test/.gitignore
new file mode 100644
index 0000000..7e563b8
--- /dev/null
+++ b/platform/linux-generic/test/.gitignore
@@ -0,0 +1,2 @@ 
+*.log
+*.trs
diff --git a/platform/linux-generic/test/Makefile.am b/platform/linux-generic/test/Makefile.am
index 91e361c..2e0bc11 100644
--- a/platform/linux-generic/test/Makefile.am
+++ b/platform/linux-generic/test/Makefile.am
@@ -1 +1,8 @@ 
-dist_bin_SCRIPTS = $(srcdir)/pktio_env
+TESTS_ENVIRONMENT = TEST_DIR=${top_builddir}/test/validation
+
+if test_vald
+TESTS = pktio/pktio_run
+endif
+
+ODP_MODULES = pktio
+SUBDIRS = $(ODP_MODULES)
diff --git a/platform/linux-generic/test/pktio/.gitignore b/platform/linux-generic/test/pktio/.gitignore
new file mode 100644
index 0000000..7e563b8
--- /dev/null
+++ b/platform/linux-generic/test/pktio/.gitignore
@@ -0,0 +1,2 @@ 
+*.log
+*.trs
diff --git a/platform/linux-generic/test/pktio/Makefile.am b/platform/linux-generic/test/pktio/Makefile.am
new file mode 100644
index 0000000..93281dd
--- /dev/null
+++ b/platform/linux-generic/test/pktio/Makefile.am
@@ -0,0 +1,2 @@ 
+dist_bin_SCRIPTS = pktio_env \
+		   pktio_run
diff --git a/platform/linux-generic/test/pktio_env b/platform/linux-generic/test/pktio/pktio_env
similarity index 100%
rename from platform/linux-generic/test/pktio_env
rename to platform/linux-generic/test/pktio/pktio_env
diff --git a/test/validation/pktio/pktio_run b/platform/linux-generic/test/pktio/pktio_run
similarity index 51%
rename from test/validation/pktio/pktio_run
rename to platform/linux-generic/test/pktio/pktio_run
index aed0cd2..0dc5052 100755
--- a/test/validation/pktio/pktio_run
+++ b/platform/linux-generic/test/pktio/pktio_run
@@ -6,26 +6,26 @@ 
 # SPDX-License-Identifier:	BSD-3-Clause
 #
 
-# TEST_DIR is set by Makefile to point to the directory where binaries have been
-# built (Makefile variable builddir)
-# If TEST_DIR is not set it means we are not running with make, and in this case
-# there are two situations:
-# 1. user build ODP in the same dir as the source (most likely)
-#    here the user can simply call pktio_run
-# 2. user may have built ODP in a separate build dir (like bitbake usually does)
-#    here the user has to do something like $ODP/test/validation/pktio_run
-#
-# In both situations the script assumes that the user is in the directory where
-# pktio_main exists. If that's not true, then the user has to specify the path
-# to it and run:
-# TEST_DIR=$builddir $ODP/test/validation/pktio_run
+# directories where pktio_main binary can be found:
+# -in the validation dir when running make check (intree or out of tree)
+# -in the script directory, when running after 'make install', or
+# -in the validation when running standalone (./pktio_run) intree.
+# -in the current directory.
+# running stand alone out of tree requires setting PATH
+PATH=$PATH:${TEST_DIR}/pktio
+PATH=$PATH:$(dirname $0)
+PATH=$PATH:$(dirname $0)/../../../../test/validation/pktio
+PATH=$PATH:.
 
-# directory where test binaries have been built
-TEST_DIR="${TEST_DIR:-$PWD}"
-# directory where test sources are, including scripts
-TEST_SRC_DIR=$(dirname $0)
+pktio_main_path=$(which pktio_main)
+if [ -x "$pktio_main_path" ] ; then
+	echo "running with pktio_main: $pktio_run_path"
+else
+	echo "cannot find pktio_main: please set you PATH for it."
+fi
 
-PATH=$TEST_DIR:$PATH
+# directory where platform test sources are, including scripts
+TEST_SRC_DIR=$(dirname $0)
 
 # exit codes expected by automake for skipped tests
 TEST_SKIPPED=77
@@ -33,12 +33,8 @@  TEST_SKIPPED=77
 # Use installed pktio env or for make check take it from platform directory
 if [ -f "./pktio_env" ]; then
 	. ./pktio_env
-elif  [ "$ODP_PLATFORM" = "" ]; then
-	echo "$0: error: ODP_PLATFORM must be defined"
-	# not skipped as this should never happen via "make check"
-	exit 1
-elif [ -f ${TEST_SRC_DIR}/../../../platform/$ODP_PLATFORM/test/pktio_env ]; then
-	. ${TEST_SRC_DIR}/../../../platform/$ODP_PLATFORM/test/pktio_env
+elif [ -f ${TEST_SRC_DIR}/pktio_env ]; then
+	. ${TEST_SRC_DIR}/pktio_env
 else
 	echo "BUG: unable to find pktio_env!"
 	echo "pktio_env has to be in current directory or in platform/\$ODP_PLATFORM/test."
@@ -61,7 +57,7 @@  run_test()
 		if [ "$disabletype" != "SKIP" ]; then
 			export ODP_PKTIO_DISABLE_SOCKET_${distype}=y
 		fi
-		${TEST_DIR}/pktio/pktio_main
+		pktio_main
 		if [ $? -ne 0 ]; then
 			ret=1
 		fi
@@ -76,9 +72,10 @@  run_test()
 
 run()
 {
-	if [ "$ODP_PLATFORM" != "linux-generic" -o "$(id -u)" != "0" ]; then
+	#need to be root to set the interface: if not, run with default loopback.
+	if [ "$(id -u)" != "0" ]; then
 		echo "pktio: using 'loop' device"
-		${TEST_DIR}/pktio/pktio_main
+		pktio_main
 		exit $?
 	fi
 
diff --git a/test/performance/odp_l2fwd_run b/test/performance/odp_l2fwd_run
index bbf0c0c..120da21 100755
--- a/test/performance/odp_l2fwd_run
+++ b/test/performance/odp_l2fwd_run
@@ -37,8 +37,8 @@  elif  [ "$ODP_PLATFORM" = "" ]; then
 	echo "$0: error: ODP_PLATFORM must be defined"
 	# not skipped as this should never happen via "make check"
 	exit 1
-elif [ -f ${TEST_SRC_DIR}/../../platform/$ODP_PLATFORM/test/pktio_env ]; then
-	. ${TEST_SRC_DIR}/../../platform/$ODP_PLATFORM/test/pktio_env
+elif [ -f ${TEST_SRC_DIR}/../../platform/$ODP_PLATFORM/test/pktio/pktio_env ]; then
+	. ${TEST_SRC_DIR}/../../platform/$ODP_PLATFORM/test/pktio/pktio_env
 else
 	echo "BUG: unable to find pktio_env!"
 	echo "pktio_env has to be in current directory or in platform/\$ODP_PLATFORM/test."
diff --git a/test/validation/Makefile.am b/test/validation/Makefile.am
index 74304f5..0c69636 100644
--- a/test/validation/Makefile.am
+++ b/test/validation/Makefile.am
@@ -25,10 +25,8 @@  EXECUTABLES = odp_buffer \
 	      odp_thread \
 	      odp_ver_abt_log_dbg
 
-TESTSCRIPTS = pktio/pktio_run
-
 if test_vald
-TESTS = $(EXECUTABLES) $(TESTSCRIPTS)
+TESTS = $(EXECUTABLES)
 endif
 
 bin_PROGRAMS = $(EXECUTABLES) $(COMPILE_ONLY)
diff --git a/test/validation/pktio/Makefile.am b/test/validation/pktio/Makefile.am
index c2ecc23..1d1a0d9 100644
--- a/test/validation/pktio/Makefile.am
+++ b/test/validation/pktio/Makefile.am
@@ -1,7 +1,5 @@ 
 include ../Makefile.inc
 
-dist_bin_SCRIPTS = pktio_run
-
 noinst_LIBRARIES = libpktio.a
 libpktio_a_SOURCES = pktio.c