From 3e096829b2f4b6e186b0e59c92b2c3a6a2ba4b29 Mon Sep 17 00:00:00 2001
From: thomasl <thomasl@eurecom.fr>
Date: Thu, 12 Mar 2015 09:58:58 +0000
Subject: [PATCH] re-organize cmake directory, add autotests replacing the
 python ones: compilation only for now

git-svn-id: http://svn.eurecom.fr/openair4G/trunk@6768 818b1a75-f10b-46b9-bf7c-635c3b92a50f
---
 cmake_targets/CMakeLists.txt                  |  4 +-
 .../autotests/run_compilation_autotests.bash  | 85 +++++++++++++++++++
 .../{ => autotests}/test.0101/CMakeLists.txt  |  2 +-
 .../{ => autotests}/test.0102/CMakeLists.txt  |  2 +-
 .../{ => autotests}/test.0103/CMakeLists.txt  |  2 +-
 .../{ => autotests}/test.0104/CMakeLists.txt  |  2 +-
 .../{ => autotests}/test.0106/CMakeLists.txt  |  2 +-
 .../{ => autotests}/test.0107/CMakeLists.txt  |  2 +-
 .../{ => autotests}/test.0108/CMakeLists.txt  |  2 +-
 .../{ => autotests}/test.0113/CMakeLists.txt  |  2 +-
 .../{ => autotests}/test.0114/CMakeLists.txt  |  2 +-
 .../{ => autotests}/test.0115/CMakeLists.txt  |  2 +-
 cmake_targets/build_helper.bash               | 83 +++++++++++++++++-
 cmake_targets/build_oai.bash                  | 17 +---
 cmake_targets/{ => tools}/Kbuild.cmake        |  0
 cmake_targets/{ => tools}/generate_asn1.bash  |  0
 cmake_targets/{ => tools}/init_exmimo2.sh     |  0
 17 files changed, 179 insertions(+), 30 deletions(-)
 create mode 100755 cmake_targets/autotests/run_compilation_autotests.bash
 rename cmake_targets/{ => autotests}/test.0101/CMakeLists.txt (96%)
 rename cmake_targets/{ => autotests}/test.0102/CMakeLists.txt (96%)
 rename cmake_targets/{ => autotests}/test.0103/CMakeLists.txt (96%)
 rename cmake_targets/{ => autotests}/test.0104/CMakeLists.txt (80%)
 rename cmake_targets/{ => autotests}/test.0106/CMakeLists.txt (96%)
 rename cmake_targets/{ => autotests}/test.0107/CMakeLists.txt (96%)
 rename cmake_targets/{ => autotests}/test.0108/CMakeLists.txt (96%)
 rename cmake_targets/{ => autotests}/test.0113/CMakeLists.txt (69%)
 rename cmake_targets/{ => autotests}/test.0114/CMakeLists.txt (96%)
 rename cmake_targets/{ => autotests}/test.0115/CMakeLists.txt (96%)
 rename cmake_targets/{ => tools}/Kbuild.cmake (100%)
 rename cmake_targets/{ => tools}/generate_asn1.bash (100%)
 rename cmake_targets/{ => tools}/init_exmimo2.sh (100%)

diff --git a/cmake_targets/CMakeLists.txt b/cmake_targets/CMakeLists.txt
index 9d81276f11..3ea53e9ea6 100644
--- a/cmake_targets/CMakeLists.txt
+++ b/cmake_targets/CMakeLists.txt
@@ -169,7 +169,7 @@ endif (${RTAI})
 # (so creating new asn.1 objects instead of modifying the object attributes)
 # New C code source file, cmake must be re-run (instead of re-running make only) 
 #############
-set(asn1c_call "${OPENAIR_CMAKE}/generate_asn1.bash")
+set(asn1c_call "${OPENAIR_CMAKE}/tools/generate_asn1.bash")
 set(asn1_generated_dir ${OPENAIR_BIN_DIR})
 
 # RRC
@@ -1279,7 +1279,7 @@ function(make_driver name dir)
     string(REGEX REPLACE "c *$" "o" obj ${f})
     set(objs "${objs} ${obj}")
   endforeach()
-  CONFIGURE_FILE(${OPENAIR_CMAKE}/Kbuild.cmake ${OPENAIR_BIN_DIR}/${name}/Kbuild)
+  CONFIGURE_FILE(${OPENAIR_CMAKE}/tools/Kbuild.cmake ${OPENAIR_BIN_DIR}/${name}/Kbuild)
   add_custom_command(OUTPUT ${name}.ko
     COMMAND make -C ${module_build_path} M=${OPENAIR_BIN_DIR}/${name}
     WORKING_DIRECTORY ${OPENAIR_BIN_DIR}/${name}
diff --git a/cmake_targets/autotests/run_compilation_autotests.bash b/cmake_targets/autotests/run_compilation_autotests.bash
new file mode 100755
index 0000000000..e717d5be81
--- /dev/null
+++ b/cmake_targets/autotests/run_compilation_autotests.bash
@@ -0,0 +1,85 @@
+#!/bin/bash
+
+if [ -s $OPENAIR_DIR/cmake_targets/build_helper.bash ] ; then
+   source $OPENAIR_DIR/cmake_targets/build_helper.bash
+else
+   echo "Error: no file in the file tree: is OPENAIR_DIR variable set?"
+   exit 1
+fi
+
+tdir=$OPENAIR_DIR/cmake_targets/autotests
+mkdir -p $tdir/bin $tdir/log
+
+updated=$(svn st -q $OPENAIR_DIR)
+if [ "$updated" != "" ] ; then
+	echo_warning "some files are not in svn: $updated"
+fi
+
+compilations \
+    autotests/test.0101 oaisim \
+    oaisim  $tdir/bin/oaisim.r8 \
+    $tdir/log/test0101.txt \
+	"test 0101:oaisim Rel8 passed" \
+    "test 0101:oaisim Rel8 failed"
+
+compilations \
+    autotests/test.0102 oaisim \
+    oaisim  $tdir/bin/oaisim.r8.nas \
+    $tdir/log/test0102.oaisim.txt \
+	"test 0102:oaisim Rel8 nas passed" \
+    "test 0102:oaisim Rel8 nas failed"
+compilations \
+    autotests/test.0103 oaisim \
+    oaisim  $tdir/bin/oaisim.r8.rf \
+    $tdir/log/test0103.txt \
+	"test 0103:oaisim rel8 rf passed" \
+    "test 0103:oaisim rel8 rf failed"
+compilations \
+    autotests/test.0104 dlsim \
+    dlsim  $tdir/bin/dlsim \
+    $tdir/log/test0104.txt \
+	"test 0104:dlsim passed" \
+    "test 0104:dlsim failed"    
+compilations \
+    autotests/test.0104 ulsim \
+    ulsim  $tdir/bin/ulsim \
+    $tdir/log/test0105.txt \
+	"test 0105: ulsim passed" \
+    "test 0105: ulsim failed"
+compilations \
+    autotests/test.0106 oaisim \
+    oaisim  $tdir/bin/oaisim.r8.itti \
+    $tdir/log/test0106.txt \
+	"test 0103:oaisim rel8 itti passed" \
+    "test 0103:oaisim rel8 itti failed"
+compilations \
+    autotests/test.0107 oaisim \
+    oaisim  $tdir/bin/oaisim.r10 \
+    $tdir/log/test0107.txt \
+	"test 0103:oaisim rel10 passed" \
+    "test 0103:oaisim rel10 failed"
+compilations \
+    autotests/test.0108 oaisim \
+    oaisim  $tdir/bin/oaisim.r10.itti \
+   $tdir/log/test0108.txt \
+	"test 0108:oaisim rel10 itti passed" \
+    "test 0108:oaisim rel10 itti failed"
+compilations \
+    autotests/test.0114 oaisim \
+    oaisim  $tdir/bin/oaisim.r8.itti.ral \
+    $tdir/log/test0114.txt \
+	"test 0114:oaisim rel8 itti ral passed" \
+    "test 0114:oaisim rel8 itti ral failed"
+compilations \
+    autotests/test.0115 oaisim \
+    oaisim  $tdir/bin/oaisim.r10.itti.ral \
+    $tdir/log/test0115.txt \
+	"test 0114:oaisim rel10 itti ral passed" \
+    "test 0114:oaisim rel10 itti ral failed" 
+compilations \
+    autotests/test.0102 nasmesh \
+    CMakeFiles/nasmesh/nasmesh.ko $tdir/bin/nasmesh.ko \
+    $tdir/log/test0120.txt \
+	"test 0120: nasmesh.ko passed" \
+    "test 0120: nasmesk.ko failed"
+
diff --git a/cmake_targets/test.0101/CMakeLists.txt b/cmake_targets/autotests/test.0101/CMakeLists.txt
similarity index 96%
rename from cmake_targets/test.0101/CMakeLists.txt
rename to cmake_targets/autotests/test.0101/CMakeLists.txt
index 69604ebbf9..a3dbc10482 100644
--- a/cmake_targets/test.0101/CMakeLists.txt
+++ b/cmake_targets/autotests/test.0101/CMakeLists.txt
@@ -72,4 +72,4 @@ set(USER_MODE True)
 set(XER_PRINT True)
 set(XFORMS False)
 
-include(${CMAKE_CURRENT_SOURCE_DIR}/../CMakeLists.txt)
+include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt)
diff --git a/cmake_targets/test.0102/CMakeLists.txt b/cmake_targets/autotests/test.0102/CMakeLists.txt
similarity index 96%
rename from cmake_targets/test.0102/CMakeLists.txt
rename to cmake_targets/autotests/test.0102/CMakeLists.txt
index 43fa1f17d1..e219ba896a 100644
--- a/cmake_targets/test.0102/CMakeLists.txt
+++ b/cmake_targets/autotests/test.0102/CMakeLists.txt
@@ -72,4 +72,4 @@ set(USER_MODE True)
 set(XER_PRINT True)
 set(XFORMS False)
 
-include(${CMAKE_CURRENT_SOURCE_DIR}/../CMakeLists.txt)
+include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt)
diff --git a/cmake_targets/test.0103/CMakeLists.txt b/cmake_targets/autotests/test.0103/CMakeLists.txt
similarity index 96%
rename from cmake_targets/test.0103/CMakeLists.txt
rename to cmake_targets/autotests/test.0103/CMakeLists.txt
index 16e033c2d5..7c06bb7422 100644
--- a/cmake_targets/test.0103/CMakeLists.txt
+++ b/cmake_targets/autotests/test.0103/CMakeLists.txt
@@ -69,4 +69,4 @@ set(USER_MODE True)
 set(XER_PRINT True)
 set(XFORMS False)
 
-include(${CMAKE_CURRENT_SOURCE_DIR}/../CMakeLists.txt)
+include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt)
diff --git a/cmake_targets/test.0104/CMakeLists.txt b/cmake_targets/autotests/test.0104/CMakeLists.txt
similarity index 80%
rename from cmake_targets/test.0104/CMakeLists.txt
rename to cmake_targets/autotests/test.0104/CMakeLists.txt
index d2f06cd70f..6f93e687e5 100644
--- a/cmake_targets/test.0104/CMakeLists.txt
+++ b/cmake_targets/autotests/test.0104/CMakeLists.txt
@@ -10,4 +10,4 @@ set(RANDOM_BF False)
 set(PBS_SIM False)
 set(PERFECT_CE True)
 
-include(${CMAKE_CURRENT_SOURCE_DIR}/../CMakeLists.txt)
+include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt)
diff --git a/cmake_targets/test.0106/CMakeLists.txt b/cmake_targets/autotests/test.0106/CMakeLists.txt
similarity index 96%
rename from cmake_targets/test.0106/CMakeLists.txt
rename to cmake_targets/autotests/test.0106/CMakeLists.txt
index 5d3fea412e..e9369d626f 100644
--- a/cmake_targets/test.0106/CMakeLists.txt
+++ b/cmake_targets/autotests/test.0106/CMakeLists.txt
@@ -72,4 +72,4 @@ set(USER_MODE True)
 set(XER_PRINT False)
 set(XFORMS False)
 
-include(${CMAKE_CURRENT_SOURCE_DIR}/../CMakeLists.txt)
+include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt)
diff --git a/cmake_targets/test.0107/CMakeLists.txt b/cmake_targets/autotests/test.0107/CMakeLists.txt
similarity index 96%
rename from cmake_targets/test.0107/CMakeLists.txt
rename to cmake_targets/autotests/test.0107/CMakeLists.txt
index 2f1d8d167b..3c82ec99c6 100644
--- a/cmake_targets/test.0107/CMakeLists.txt
+++ b/cmake_targets/autotests/test.0107/CMakeLists.txt
@@ -72,4 +72,4 @@ set(USER_MODE True)
 set(XER_PRINT True)
 set(XFORMS False)
 
-include(${CMAKE_CURRENT_SOURCE_DIR}/../CMakeLists.txt)
+include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt)
diff --git a/cmake_targets/test.0108/CMakeLists.txt b/cmake_targets/autotests/test.0108/CMakeLists.txt
similarity index 96%
rename from cmake_targets/test.0108/CMakeLists.txt
rename to cmake_targets/autotests/test.0108/CMakeLists.txt
index 8305784802..d6ac75556e 100644
--- a/cmake_targets/test.0108/CMakeLists.txt
+++ b/cmake_targets/autotests/test.0108/CMakeLists.txt
@@ -72,4 +72,4 @@ set(USER_MODE True)
 set(XER_PRINT False)
 set(XFORMS False)
 
-include(${CMAKE_CURRENT_SOURCE_DIR}/../CMakeLists.txt)
+include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt)
diff --git a/cmake_targets/test.0113/CMakeLists.txt b/cmake_targets/autotests/test.0113/CMakeLists.txt
similarity index 69%
rename from cmake_targets/test.0113/CMakeLists.txt
rename to cmake_targets/autotests/test.0113/CMakeLists.txt
index a487910fe8..2ac0caecde 100644
--- a/cmake_targets/test.0113/CMakeLists.txt
+++ b/cmake_targets/autotests/test.0113/CMakeLists.txt
@@ -2,4 +2,4 @@ cmake_minimum_required(VERSION 2.8)
 set(OAI_NW_DRIVER_TYPE_ETHERNET True)
 set(OAI_NW_DRIVER_USE_NETLINK True)
 set(NAS_NETLINK True)
-include(${CMAKE_CURRENT_SOURCE_DIR}/../CMakeLists.txt)
+include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt)
diff --git a/cmake_targets/test.0114/CMakeLists.txt b/cmake_targets/autotests/test.0114/CMakeLists.txt
similarity index 96%
rename from cmake_targets/test.0114/CMakeLists.txt
rename to cmake_targets/autotests/test.0114/CMakeLists.txt
index 73ecbd89a9..2bc90e5c2d 100644
--- a/cmake_targets/test.0114/CMakeLists.txt
+++ b/cmake_targets/autotests/test.0114/CMakeLists.txt
@@ -72,4 +72,4 @@ set(USER_MODE True)
 set(XER_PRINT False)
 set(XFORMS False)
 
-include(${CMAKE_CURRENT_SOURCE_DIR}/../CMakeLists.txt)
+include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt)
diff --git a/cmake_targets/test.0115/CMakeLists.txt b/cmake_targets/autotests/test.0115/CMakeLists.txt
similarity index 96%
rename from cmake_targets/test.0115/CMakeLists.txt
rename to cmake_targets/autotests/test.0115/CMakeLists.txt
index 041b43f974..285d13eceb 100644
--- a/cmake_targets/test.0115/CMakeLists.txt
+++ b/cmake_targets/autotests/test.0115/CMakeLists.txt
@@ -72,4 +72,4 @@ set(USER_MODE True)
 set(XER_PRINT False)
 set(XFORMS False)
 
-include(${CMAKE_CURRENT_SOURCE_DIR}/../CMakeLists.txt)
+include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt)
diff --git a/cmake_targets/build_helper.bash b/cmake_targets/build_helper.bash
index 5af2c7bb3c..8929a97c79 100755
--- a/cmake_targets/build_helper.bash
+++ b/cmake_targets/build_helper.bash
@@ -31,8 +31,6 @@
 # author Laurent Thomas
 #
 #######################################
-mkdir -p $OPENAIR_DIR/cmake_targets/tests/bin
-mkdir -p $OPENAIR_DIR/cmake_targets/tests/log
 SUDO=sudo
 
 compilations() {
@@ -53,6 +51,87 @@ compilations() {
   fi
 }
 
+run_tests() {
+   $1 > $2 2>&1
+   grep 
+}
+
+run_compilation_autotests() {
+    tdir=$OPENAIR_DIR/cmake_targets/autotests
+    mkdir -p $tdir/bin $tdir/log
+    updated=$(svn st -q $OPENAIR_DIR)
+    if [ "$updated" != "" ] ; then
+	echo_warning "some files are not in svn: $updated"
+    fi
+    compilations \
+        test.0101 oaisim \
+        oaisim  $tdir/bin/oaisim.r8 \
+        $tdir/log/test0101.txt \
+	"test 0101:oaisim Rel8 passed" \
+        "test 0101:oaisim Rel8 failed"
+
+    compilations \
+        test.0102 oaisim \
+        oaisim  $tdir/bin/oaisim.r8.nas \
+        $tdir/log/test0102.oaisim.txt \
+	"test 0102:oaisim Rel8 nas passed" \
+        "test 0102:oaisim Rel8 nas failed"
+    compilations \
+        test.0103 oaisim \
+        oaisim  $tdir/bin/oaisim.r8.rf \
+        $tdir/log/test0103.txt \
+	"test 0103:oaisim rel8 rf passed" \
+        "test 0103:oaisim rel8 rf failed"
+    compilations \
+        test.0104 dlsim \
+        dlsim  $tdir/bin/dlsim \
+        $tdir/log/test0104.txt \
+	"test 0104:dlsim passed" \
+        "test 0104:dlsim failed"    
+    compilations \
+        test.0104 ulsim \
+        ulsim  $tdir/bin/ulsim \
+        $tdir/log/test0105.txt \
+	"test 0105: ulsim passed" \
+        "test 0105: ulsim failed"
+    compilations \
+        test.0106 oaisim \
+        oaisim  $tdir/bin/oaisim.r8.itti \
+        $tdir/log/test0106.txt \
+	"test 0103:oaisim rel8 itti passed" \
+        "test 0103:oaisim rel8 itti failed"
+    compilations \
+        test.0107 oaisim \
+        oaisim  $tdir/bin/oaisim.r10 \
+        $tdir/log/test0107.txt \
+	"test 0103:oaisim rel10 passed" \
+        "test 0103:oaisim rel10 failed"
+    compilations \
+        test.0108 oaisim \
+        oaisim  $tdir/bin/oaisim.r10.itti \
+        $tdir/log/test0108.txt \
+	"test 0108:oaisim rel10 itti passed" \
+        "test 0108:oaisim rel10 itti failed"
+    compilations \
+        test.0114 oaisim \
+        oaisim  $tdir/bin/oaisim.r8.itti.ral \
+        $tdir/log/test0114.txt \
+	"test 0114:oaisim rel8 itti ral passed" \
+        "test 0114:oaisim rel8 itti ral failed"
+    compilations \
+        test.0115 oaisim \
+        oaisim  $tdir/bin/oaisim.r10.itti.ral \
+        $tdir/log/test0115.txt \
+	"test 0114:oaisim rel10 itti ral passed" \
+        "test 0114:oaisim rel10 itti ral failed" 
+    compilations \
+        test.0102 nasmesh \
+        CMakeFiles/nasmesh/nasmesh.ko $tdir/bin/nasmesh.ko \
+        $tdir/log/test0120.txt \
+	"test 0120: nasmesh.ko passed" \
+        "test 0120: nasmesk.ko failed"
+}
+
 make_certs(){
     
     # for certtificate generation
diff --git a/cmake_targets/build_oai.bash b/cmake_targets/build_oai.bash
index a146ed2bb4..e92ddd7674 100755
--- a/cmake_targets/build_oai.bash
+++ b/cmake_targets/build_oai.bash
@@ -278,22 +278,7 @@ fi
 #####################
 if [ "$OAI_TEST" = "1" ]; then 
     echo_info "10. Running OAI pre commit tests (pre-ci) ..."
-    updated=$(svn st -q $OPENAIR_DIR)
-    if [ "$updated" != "" ] ; then
-	echo_warning "some files are not in svn: $updated"
-    fi
-    mkdir -p $dbin.test
-    compilations \
-        test.0101 oaisim \
-        oaisim  $dbin.test/oaisim.r8 \
-        $dlog/oaisim.r8.test0101.txt \
-	"test 0101:oaisim passed" \
-        "test 0101:oaisim failed"
-    compilations test.0102 nasmesh \
-        CMakeFiles/nasmesh/nasmesh.ko $dbin/test/nasmesh.ko \
-        $dlog/nasmesh.test0102.txt \
-	"test 0102: nasmesh.ko  passed" \
-        "test 0102: nasmesk.ko failed"
+    $OPENAIR_DIR/cmake_targets/autotests/run_compilation_autotests.bash
 else 
     echo_info "10. Bypassing the Tests ..."
 fi 
diff --git a/cmake_targets/Kbuild.cmake b/cmake_targets/tools/Kbuild.cmake
similarity index 100%
rename from cmake_targets/Kbuild.cmake
rename to cmake_targets/tools/Kbuild.cmake
diff --git a/cmake_targets/generate_asn1.bash b/cmake_targets/tools/generate_asn1.bash
similarity index 100%
rename from cmake_targets/generate_asn1.bash
rename to cmake_targets/tools/generate_asn1.bash
diff --git a/cmake_targets/init_exmimo2.sh b/cmake_targets/tools/init_exmimo2.sh
similarity index 100%
rename from cmake_targets/init_exmimo2.sh
rename to cmake_targets/tools/init_exmimo2.sh
-- 
GitLab