From 504ad6d9326e3d76f53fa03f93abe1928f7b1700 Mon Sep 17 00:00:00 2001
From: Guilhem Saurel <guilhem.saurel@laas.fr>
Date: Tue, 24 Jul 2018 18:09:18 +0200
Subject: [PATCH] compile everything with clang-6.0

---
 .gitmodules                 |  6 ++++++
 CMakeLists.txt              |  4 ++--
 libs/kdl                    |  1 +
 libs/kdl_parser             |  1 +
 run.sh                      | 43 +++++++++++++++++++++++++++----------
 src/CMakeLists.txt          |  6 +++---
 src/pinocchio-benchmark.cpp |  3 ---
 7 files changed, 45 insertions(+), 19 deletions(-)
 create mode 160000 libs/kdl
 create mode 160000 libs/kdl_parser

diff --git a/.gitmodules b/.gitmodules
index c3f935a..63e53a3 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -18,3 +18,9 @@
 	url = ../../poppy-project/poppy-humanoid.git
 	shallow = true
 	fetchRecurseSubmodules = false
+[submodule "kdl"]
+	path = libs/kdl
+	url = ../../orocos/orocos_kinematics_dynamics.git
+[submodule "kdl_parser"]
+	path = libs/kdl_parser
+	url = ../../ros/kdl_parser.git
diff --git a/CMakeLists.txt b/CMakeLists.txt
index e70f32c..5159915 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -14,8 +14,8 @@ SETUP_PROJECT()
 ADD_REQUIRED_DEPENDENCY("eigen3")
 ADD_REQUIRED_DEPENDENCY("pinocchio")
 ADD_REQUIRED_DEPENDENCY("rbdl")
-ADD_REQUIRED_DEPENDENCY("orocos-kdl")
-ADD_REQUIRED_DEPENDENCY("kdl_parser")
+#ADD_REQUIRED_DEPENDENCY("orocos-kdl")
+#ADD_REQUIRED_DEPENDENCY("kdl_parser")
 ADD_REQUIRED_DEPENDENCY("urdfdom")
 ADD_REQUIRED_DEPENDENCY("benchmark")
 
diff --git a/libs/kdl b/libs/kdl
new file mode 160000
index 0000000..f51621f
--- /dev/null
+++ b/libs/kdl
@@ -0,0 +1 @@
+Subproject commit f51621f6571e5ad9512ea12741bece39b4ce919b
diff --git a/libs/kdl_parser b/libs/kdl_parser
new file mode 160000
index 0000000..8af7e1a
--- /dev/null
+++ b/libs/kdl_parser
@@ -0,0 +1 @@
+Subproject commit 8af7e1a10d7cc76ede081e68e297e5b1b9205b93
diff --git a/run.sh b/run.sh
index 0125a96..47dacda 100755
--- a/run.sh
+++ b/run.sh
@@ -1,16 +1,36 @@
 #!/bin/bash
 
 set -e
-#set -x
+set -x
 
-#rm -rf build prefix
-
-#sudo apt install -qqy robotpkg-pinocchio liborocos-kdl-dev libkdl-parser-dev
+rm -rf build prefix
 
 export PREFIX=${1:-$PWD/prefix}  # with bash / zsh
 export LD_LIBRARY_PATH=$PREFIX/lib:$LD_LIBRARY_PATH
-export CXX="ccache clang++-3.8"
-export CC="ccache clang-3.8"
+export CXX="ccache clang++-6.0"
+export CC="ccache clang-6.0"
+
+mkdir -p build/pinocchio
+pushd build/pinocchio
+cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$PREFIX -DCMAKE_INSTALL_LIBDIR=lib \
+    -DBUILD_PYTHON_INTERFACE=OFF -DBUILD_UNIT_TESTS=OFF -DINSTALL_DOCUMENTATION=OFF \
+    ../../libs/pinocchio
+make -j8 install
+popd
+
+#mkdir -p build/kdl
+#pushd build/kdl
+#cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$PREFIX -DCMAKE_INSTALL_LIBDIR=lib \
+    #../../libs/kdl/orocos_kdl
+#make -j8 install
+#popd
+
+#mkdir -p build/kdl_parser
+#pushd build/kdl_parser
+#cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$PREFIX -DCMAKE_INSTALL_LIBDIR=lib \
+    #../../libs/kdl_parser/kdl_parser
+#make -j8 install
+#popd
 
 if [[ ! -d libs/rbdl ]]
 then
@@ -31,11 +51,12 @@ popd
 mkdir -p build/google-benchmark
 pushd build/google-benchmark
 cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$PREFIX -DCMAKE_INSTALL_LIBDIR=lib \
-    -DBENCHMARK_ENABLE_GTEST_TESTS=OFF -DBENCHMARK_ENABLE_LTO=true \
-    -DLLVMAR_EXECUTABLE="/usr/bin/llvm-ar-3.8" \
-    -DLLVMNM_EXECUTABLE="/usr/bin/llvm-nm-3.8" \
-    -DLLVMRANLIB_EXECUTABLE="/usr/bin/llvm-ranlib-3.8" \
+    -DBENCHMARK_ENABLE_GTEST_TESTS=OFF \
     ../../libs/benchmark
+    #-DBENCHMARK_ENABLE_LTO=true \
+    #-DLLVMAR_EXECUTABLE="/usr/bin/llvm-ar-6.0" \
+    #-DLLVMNM_EXECUTABLE="/usr/bin/llvm-nm-6.0" \
+    #-DLLVMRANLIB_EXECUTABLE="/usr/bin/llvm-ranlib-6.0" \
 make -j8 install
 popd
 
@@ -49,7 +70,7 @@ popd
 
 $PREFIX/bin/rbdl-test
 $PREFIX/bin/pinocchio-test
-$PREFIX/bin/kdl-test
+#$PREFIX/bin/kdl-test
 echo "don't forget to run 'sudo cpupower frequency-set --governor performance'"
 $PREFIX/bin/pinocchio-benchmark
 $PREFIX/bin/rbdl-benchmark
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 5cb54d1..8163dcd 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -13,9 +13,9 @@ PKG_CONFIG_USE_DEPENDENCY(pinocchio-test pinocchio)
 INSTALL(TARGETS pinocchio-test RUNTIME DESTINATION bin)
 
 # KDL test
-ADD_EXECUTABLE(kdl-test kdl-test)
-PKG_CONFIG_USE_DEPENDENCY(kdl-test kdl_parser)
-INSTALL(TARGETS kdl-test RUNTIME DESTINATION bin)
+#ADD_EXECUTABLE(kdl-test kdl-test)
+#PKG_CONFIG_USE_DEPENDENCY(kdl-test kdl_parser)
+#INSTALL(TARGETS kdl-test RUNTIME DESTINATION bin)
 
 # RBDL benchmark
 ADD_EXECUTABLE(rbdl-benchmark rbdl-benchmark)
diff --git a/src/pinocchio-benchmark.cpp b/src/pinocchio-benchmark.cpp
index aa5a135..8cde8f2 100644
--- a/src/pinocchio-benchmark.cpp
+++ b/src/pinocchio-benchmark.cpp
@@ -37,9 +37,6 @@ static void BM_Pinocchio_RNEA(benchmark::State& state)
 
 static void BM_Pinocchio_ABA(benchmark::State& state)
 {
-  std::string model_file = pinocchio_benchmarks::path +
-    pinocchio_benchmarks::models[state.range(0)];
-
   se3::Model model;
   se3::urdf::buildModel(pinocchio_benchmarks::path +
       pinocchio_benchmarks::models[state.range(0)],
-- 
GitLab