From 1fe9748bd8b27e8230cd2ff2e85f57f5050a9cf9 Mon Sep 17 00:00:00 2001
From: Raphael Grimm <raphael.grimm@kit.edu>
Date: Wed, 19 Aug 2020 09:07:15 +0200
Subject: [PATCH] Use armarx_generate_and_add_component_executable

---
 .../ArMemGlobalStorage/CMakeLists.txt         | 11 ----
 .../applications/ArMemGlobalStorage/main.cpp  | 32 ----------
 source/RobotAPI/applications/CMakeLists.txt   | 58 +------------------
 .../CyberGloveObserver/CMakeLists.txt         |  3 -
 .../applications/CyberGloveObserver/main.cpp  | 32 ----------
 .../DummyTextToSpeech/CMakeLists.txt          |  3 -
 .../applications/DummyTextToSpeech/main.cpp   | 32 ----------
 .../DynamicObstacleManager/CMakeLists.txt     |  7 ---
 .../DynamicObstacleManager/main.cpp           | 40 -------------
 .../ForceTorqueObserver/CMakeLists.txt        |  6 --
 .../applications/ForceTorqueObserver/main.cpp | 34 -----------
 .../ForceTorqueUnitSimulation/CMakeLists.txt  |  3 -
 .../ForceTorqueUnitSimulation/main.cpp        | 34 -----------
 .../applications/FrameTracking/CMakeLists.txt | 11 ----
 .../applications/FrameTracking/main.cpp       | 32 ----------
 .../GamepadControlUnit/CMakeLists.txt         | 11 ----
 .../applications/GamepadControlUnit/main.cpp  | 32 ----------
 .../applications/GamepadUnit/CMakeLists.txt   | 11 ----
 .../applications/GamepadUnit/main.cpp         | 32 ----------
 .../GamepadUnitObserver/CMakeLists.txt        | 11 ----
 .../applications/GamepadUnitObserver/main.cpp | 32 ----------
 .../GraspCandidateObserver/CMakeLists.txt     | 25 --------
 .../GraspCandidateObserver/main.cpp           | 32 ----------
 .../HandUnitSimulation/CMakeLists.txt         |  3 -
 .../applications/HandUnitSimulation/main.cpp  | 34 -----------
 .../HapticObserver/CMakeLists.txt             |  3 -
 .../applications/HapticObserver/main.cpp      | 34 -----------
 .../applications/HeadIKUnit/CMakeLists.txt    |  3 -
 .../RobotAPI/applications/HeadIKUnit/main.cpp | 34 -----------
 .../HokuyoLaserUnit/CMakeLists.txt            | 13 -----
 .../applications/HokuyoLaserUnit/main.cpp     | 32 ----------
 .../CMakeLists.txt                            |  7 ---
 .../InertialMeasurementUnitObserver/main.cpp  | 34 -----------
 .../applications/KITHandUnit/CMakeLists.txt   | 11 ----
 .../applications/KITHandUnit/main.cpp         | 32 ----------
 .../KITProstheticHandObserver/CMakeLists.txt  |  3 -
 .../KITProstheticHandObserver/main.cpp        | 32 ----------
 .../KITProstheticHandUnit/CMakeLists.txt      |  3 -
 .../KITProstheticHandUnit/main.cpp            | 35 -----------
 .../KinematicUnitObserver/CMakeLists.txt      |  9 ---
 .../KinematicUnitObserver/config/testProperty |  7 ---
 .../KinematicUnitObserver/main.cpp            | 34 -----------
 .../KinematicUnitSimulation/CMakeLists.txt    |  3 -
 .../config/testProperty                       |  5 --
 .../KinematicUnitSimulation/main.cpp          | 34 -----------
 .../LaserScannerUnitObserver/CMakeLists.txt   | 11 ----
 .../LaserScannerUnitObserver/main.cpp         | 32 ----------
 .../applications/MetaWearIMU/CMakeLists.txt   | 11 ----
 .../applications/MetaWearIMU/main.cpp         | 32 ----------
 .../MetaWearIMUObserver/CMakeLists.txt        | 11 ----
 .../applications/MetaWearIMUObserver/main.cpp | 32 ----------
 .../applications/MultiHandUnit/CMakeLists.txt | 11 ----
 .../applications/MultiHandUnit/main.cpp       | 32 ----------
 .../applications/NaturalIKTest/CMakeLists.txt | 11 ----
 .../applications/NaturalIKTest/main.cpp       | 32 ----------
 .../applications/OptoForceUnit/CMakeLists.txt |  3 -
 .../applications/OptoForceUnit/main.cpp       | 32 ----------
 .../OptoForceUnitObserver/CMakeLists.txt      | 11 ----
 .../OptoForceUnitObserver/main.cpp            | 32 ----------
 .../OrientedTactileSensorUnit/CMakeLists.txt  |  3 -
 .../OrientedTactileSensorUnit/main.cpp        |  9 ---
 .../CMakeLists.txt                            | 11 ----
 .../main.cpp                                  | 32 ----------
 .../PlatformUnitObserver/CMakeLists.txt       |  8 ---
 .../PlatformUnitObserver/main.cpp             | 34 -----------
 .../PlatformUnitSimulation/CMakeLists.txt     |  8 ---
 .../PlatformUnitSimulation/main.cpp           | 34 -----------
 .../applications/RobotControl/CMakeLists.txt  |  8 ---
 .../applications/RobotControl/main.cpp        | 34 -----------
 .../applications/RobotHealth/CMakeLists.txt   |  3 -
 .../applications/RobotHealth/main.cpp         | 32 ----------
 .../RobotHealthDummy/CMakeLists.txt           |  3 -
 .../applications/RobotHealthDummy/main.cpp    | 32 ----------
 .../RobotNameService/CMakeLists.txt           |  3 -
 .../applications/RobotNameService/main.cpp    | 32 ----------
 .../RobotStateObserver/CMakeLists.txt         |  4 --
 .../RobotStateObserverApp.h                   | 45 --------------
 .../RobotStateObserver/config/testProperty    |  7 ---
 .../applications/RobotStateObserver/main.cpp  | 34 -----------
 .../SpeechObserver/CMakeLists.txt             | 12 ----
 .../applications/SpeechObserver/main.cpp      | 32 ----------
 .../StatechartExecutorExample/CMakeLists.txt  |  3 -
 .../StatechartExecutorExample/main.cpp        | 32 ----------
 .../applications/ViewSelection/CMakeLists.txt |  4 --
 .../ViewSelection/ViewSelectionApp.h          | 52 -----------------
 .../applications/ViewSelection/main.cpp       | 34 -----------
 .../applications/XsensIMU/CMakeLists.txt      |  7 ---
 .../RobotAPI/applications/XsensIMU/main.cpp   | 34 -----------
 .../ArMemGlobalStorage/CMakeLists.txt         |  2 +
 .../CyberGloveObserver/CMakeLists.txt         |  2 +
 .../DummyTextToSpeech/CMakeLists.txt          |  2 +
 .../DynamicObstacleManager/CMakeLists.txt     |  2 +
 .../components/FrameTracking/CMakeLists.txt   |  2 +
 .../GamepadControlUnit/CMakeLists.txt         |  2 +
 .../components/KITHandUnit/CMakeLists.txt     |  2 +
 .../KITProstheticHandUnit/CMakeLists.txt      |  2 +
 .../components/MultiHandUnit/CMakeLists.txt   |  2 +
 .../components/NaturalIKTest/CMakeLists.txt   |  2 +
 .../components/RobotHealth/CMakeLists.txt     |  5 ++
 .../RobotNameService/CMakeLists.txt           |  2 +
 .../StatechartExecutorExample/CMakeLists.txt  |  1 +
 .../components/ViewSelection/CMakeLists.txt   |  1 +
 .../RobotAPI/components/units/CMakeLists.txt  | 18 ++++++
 .../drivers/GamepadUnit/CMakeLists.txt        |  2 +
 .../drivers/HokuyoLaserUnit/CMakeLists.txt    |  2 +
 .../drivers/MetaWearIMU/CMakeLists.txt        |  1 +
 .../drivers/OptoForceUnit/CMakeLists.txt      |  2 +
 .../OrientedTactileSensor/CMakeLists.txt      |  2 +
 .../RobotAPI/drivers/XsensIMU/CMakeLists.txt  |  2 +
 .../statecharts/operations/CMakeLists.txt     |  2 +
 110 files changed, 62 insertions(+), 1806 deletions(-)
 delete mode 100644 source/RobotAPI/applications/ArMemGlobalStorage/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/ArMemGlobalStorage/main.cpp
 delete mode 100644 source/RobotAPI/applications/CyberGloveObserver/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/CyberGloveObserver/main.cpp
 delete mode 100644 source/RobotAPI/applications/DummyTextToSpeech/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/DummyTextToSpeech/main.cpp
 delete mode 100644 source/RobotAPI/applications/DynamicObstacleManager/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/DynamicObstacleManager/main.cpp
 delete mode 100644 source/RobotAPI/applications/ForceTorqueObserver/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/ForceTorqueObserver/main.cpp
 delete mode 100644 source/RobotAPI/applications/ForceTorqueUnitSimulation/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/ForceTorqueUnitSimulation/main.cpp
 delete mode 100644 source/RobotAPI/applications/FrameTracking/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/FrameTracking/main.cpp
 delete mode 100644 source/RobotAPI/applications/GamepadControlUnit/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/GamepadControlUnit/main.cpp
 delete mode 100644 source/RobotAPI/applications/GamepadUnit/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/GamepadUnit/main.cpp
 delete mode 100644 source/RobotAPI/applications/GamepadUnitObserver/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/GamepadUnitObserver/main.cpp
 delete mode 100644 source/RobotAPI/applications/GraspCandidateObserver/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/GraspCandidateObserver/main.cpp
 delete mode 100644 source/RobotAPI/applications/HandUnitSimulation/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/HandUnitSimulation/main.cpp
 delete mode 100644 source/RobotAPI/applications/HapticObserver/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/HapticObserver/main.cpp
 delete mode 100644 source/RobotAPI/applications/HeadIKUnit/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/HeadIKUnit/main.cpp
 delete mode 100644 source/RobotAPI/applications/HokuyoLaserUnit/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/HokuyoLaserUnit/main.cpp
 delete mode 100644 source/RobotAPI/applications/InertialMeasurementUnitObserver/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/InertialMeasurementUnitObserver/main.cpp
 delete mode 100644 source/RobotAPI/applications/KITHandUnit/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/KITHandUnit/main.cpp
 delete mode 100644 source/RobotAPI/applications/KITProstheticHandObserver/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/KITProstheticHandObserver/main.cpp
 delete mode 100644 source/RobotAPI/applications/KITProstheticHandUnit/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/KITProstheticHandUnit/main.cpp
 delete mode 100644 source/RobotAPI/applications/KinematicUnitObserver/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/KinematicUnitObserver/config/testProperty
 delete mode 100644 source/RobotAPI/applications/KinematicUnitObserver/main.cpp
 delete mode 100644 source/RobotAPI/applications/KinematicUnitSimulation/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/KinematicUnitSimulation/config/testProperty
 delete mode 100644 source/RobotAPI/applications/KinematicUnitSimulation/main.cpp
 delete mode 100644 source/RobotAPI/applications/LaserScannerUnitObserver/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/LaserScannerUnitObserver/main.cpp
 delete mode 100644 source/RobotAPI/applications/MetaWearIMU/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/MetaWearIMU/main.cpp
 delete mode 100644 source/RobotAPI/applications/MetaWearIMUObserver/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/MetaWearIMUObserver/main.cpp
 delete mode 100644 source/RobotAPI/applications/MultiHandUnit/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/MultiHandUnit/main.cpp
 delete mode 100644 source/RobotAPI/applications/NaturalIKTest/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/NaturalIKTest/main.cpp
 delete mode 100644 source/RobotAPI/applications/OptoForceUnit/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/OptoForceUnit/main.cpp
 delete mode 100644 source/RobotAPI/applications/OptoForceUnitObserver/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/OptoForceUnitObserver/main.cpp
 delete mode 100644 source/RobotAPI/applications/OrientedTactileSensorUnit/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/OrientedTactileSensorUnit/main.cpp
 delete mode 100644 source/RobotAPI/applications/OrientedTactileSensorUnitObserver/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/OrientedTactileSensorUnitObserver/main.cpp
 delete mode 100644 source/RobotAPI/applications/PlatformUnitObserver/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/PlatformUnitObserver/main.cpp
 delete mode 100644 source/RobotAPI/applications/PlatformUnitSimulation/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/PlatformUnitSimulation/main.cpp
 delete mode 100644 source/RobotAPI/applications/RobotControl/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/RobotControl/main.cpp
 delete mode 100644 source/RobotAPI/applications/RobotHealth/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/RobotHealth/main.cpp
 delete mode 100644 source/RobotAPI/applications/RobotHealthDummy/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/RobotHealthDummy/main.cpp
 delete mode 100644 source/RobotAPI/applications/RobotNameService/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/RobotNameService/main.cpp
 delete mode 100644 source/RobotAPI/applications/RobotStateObserver/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/RobotStateObserver/RobotStateObserverApp.h
 delete mode 100644 source/RobotAPI/applications/RobotStateObserver/config/testProperty
 delete mode 100644 source/RobotAPI/applications/RobotStateObserver/main.cpp
 delete mode 100644 source/RobotAPI/applications/SpeechObserver/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/SpeechObserver/main.cpp
 delete mode 100644 source/RobotAPI/applications/StatechartExecutorExample/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/StatechartExecutorExample/main.cpp
 delete mode 100644 source/RobotAPI/applications/ViewSelection/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/ViewSelection/ViewSelectionApp.h
 delete mode 100644 source/RobotAPI/applications/ViewSelection/main.cpp
 delete mode 100644 source/RobotAPI/applications/XsensIMU/CMakeLists.txt
 delete mode 100644 source/RobotAPI/applications/XsensIMU/main.cpp

diff --git a/source/RobotAPI/applications/ArMemGlobalStorage/CMakeLists.txt b/source/RobotAPI/applications/ArMemGlobalStorage/CMakeLists.txt
deleted file mode 100644
index 9269db1b6..000000000
--- a/source/RobotAPI/applications/ArMemGlobalStorage/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-armarx_component_set_name("ArMemGlobalStorageApp")
-set(COMPONENT_LIBS ArMemGlobalStorage)
-armarx_add_component_executable(main.cpp)
-
-#find_package(MyLib QUIET)
-#armarx_build_if(MyLib_FOUND "MyLib not available")
-# all target_include_directories must be guarded by if(Xyz_FOUND)
-# for multiple libraries write: if(X_FOUND AND Y_FOUND)....
-#if(MyLib_FOUND)
-#    target_include_directories(ArMemGlobalStorage PUBLIC ${MyLib_INCLUDE_DIRS})
-#endif()
diff --git a/source/RobotAPI/applications/ArMemGlobalStorage/main.cpp b/source/RobotAPI/applications/ArMemGlobalStorage/main.cpp
deleted file mode 100644
index 0bbd86f63..000000000
--- a/source/RobotAPI/applications/ArMemGlobalStorage/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::ArMemGlobalStorage
- * @author     fabian.peller-konrad@kit.edu ( fabian dot peller-konrad at kit dot edu )
- * @date       2020
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/ArMemGlobalStorage/ArMemGlobalStorage.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::ArMemGlobalStorage > (argc, argv, "ArMemGlobalStorage");
-}
diff --git a/source/RobotAPI/applications/CMakeLists.txt b/source/RobotAPI/applications/CMakeLists.txt
index d975f574b..68dfd7829 100644
--- a/source/RobotAPI/applications/CMakeLists.txt
+++ b/source/RobotAPI/applications/CMakeLists.txt
@@ -1,59 +1,5 @@
-add_subdirectory(ForceTorqueObserver)
-add_subdirectory(HeadIKUnit)
-add_subdirectory(TCPControlUnit)
-
+add_subdirectory(AronArmemGenerator)
 add_subdirectory(WeissHapticUnit)
-add_subdirectory(HapticObserver)
-
-
-add_subdirectory(RobotControl)
 add_subdirectory(RobotControlUI)
-add_subdirectory(KinematicUnitObserver)
-add_subdirectory(KinematicUnitSimulation)
-add_subdirectory(PlatformUnitSimulation)
-add_subdirectory(PlatformUnitObserver)
 add_subdirectory(RobotStateComponent)
-add_subdirectory(HandUnitSimulation)
-add_subdirectory(ForceTorqueUnitSimulation)
-
-
-add_subdirectory(XsensIMU)
-add_subdirectory(InertialMeasurementUnitObserver)
-
-add_subdirectory(ViewSelection)
-
-add_subdirectory(HokuyoLaserUnit)
-add_subdirectory(LaserScannerUnitObserver)
-add_subdirectory(OrientedTactileSensorUnit)
-add_subdirectory(OrientedTactileSensorUnitObserver)
-
-add_subdirectory(OptoForceUnit)
-add_subdirectory(OptoForceUnitObserver)
-
-add_subdirectory(GamepadUnit)
-add_subdirectory(GamepadUnitObserver)
-add_subdirectory(GamepadControlUnit)
-
-add_subdirectory(MetaWearIMU)
-add_subdirectory(MetaWearIMUObserver)
-add_subdirectory(RobotNameService)
-add_subdirectory(SpeechObserver)
-add_subdirectory(DummyTextToSpeech)
-add_subdirectory(KITProstheticHandUnit)
-add_subdirectory(CyberGloveObserver)
-add_subdirectory(RobotHealth)
-add_subdirectory(RobotHealthDummy)
-add_subdirectory(GraspCandidateObserver)
-
-add_subdirectory(FrameTracking)
-
-add_subdirectory(KITHandUnit)
-add_subdirectory(MultiHandUnit)
-add_subdirectory(StatechartExecutorExample)
-
-
-add_subdirectory(NaturalIKTest)
-add_subdirectory(DynamicObstacleManager)
-
-add_subdirectory(ArMemGlobalStorage)
-add_subdirectory(AronArmemGenerator)
+add_subdirectory(TCPControlUnit)
diff --git a/source/RobotAPI/applications/CyberGloveObserver/CMakeLists.txt b/source/RobotAPI/applications/CyberGloveObserver/CMakeLists.txt
deleted file mode 100644
index a639bd1bd..000000000
--- a/source/RobotAPI/applications/CyberGloveObserver/CMakeLists.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-armarx_component_set_name("CyberGloveObserverApp")
-set(COMPONENT_LIBS CyberGloveObserver)
-armarx_add_component_executable("main.cpp")
diff --git a/source/RobotAPI/applications/CyberGloveObserver/main.cpp b/source/RobotAPI/applications/CyberGloveObserver/main.cpp
deleted file mode 100644
index 7d8b134db..000000000
--- a/source/RobotAPI/applications/CyberGloveObserver/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::CyberGloveObserver
- * @author     JuliaStarke ( julia dot starke at kit dot edu )
- * @date       2018
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/CyberGloveObserver/CyberGloveObserver.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::CyberGloveObserver > (argc, argv, "CyberGloveObserver");
-}
diff --git a/source/RobotAPI/applications/DummyTextToSpeech/CMakeLists.txt b/source/RobotAPI/applications/DummyTextToSpeech/CMakeLists.txt
deleted file mode 100644
index 68e57d98b..000000000
--- a/source/RobotAPI/applications/DummyTextToSpeech/CMakeLists.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-armarx_component_set_name("DummyTextToSpeechApp")
-set(COMPONENT_LIBS DummyTextToSpeech)
-armarx_add_component_executable("main.cpp")
diff --git a/source/RobotAPI/applications/DummyTextToSpeech/main.cpp b/source/RobotAPI/applications/DummyTextToSpeech/main.cpp
deleted file mode 100644
index 2d852287b..000000000
--- a/source/RobotAPI/applications/DummyTextToSpeech/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::DummyTextToSpeech
- * @author     Simon Ottenhaus ( simon dot ottenhaus at kit dot edu )
- * @date       2018
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/DummyTextToSpeech/DummyTextToSpeech.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::DummyTextToSpeech > (argc, argv, "DummyTextToSpeech");
-}
diff --git a/source/RobotAPI/applications/DynamicObstacleManager/CMakeLists.txt b/source/RobotAPI/applications/DynamicObstacleManager/CMakeLists.txt
deleted file mode 100644
index e8cd2eda8..000000000
--- a/source/RobotAPI/applications/DynamicObstacleManager/CMakeLists.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-armarx_component_set_name("DynamicObstacleManager")
-
-set(COMPONENT_LIBS
-    DynamicObstacleManager
-)
-
-armarx_add_component_executable("main.cpp")
diff --git a/source/RobotAPI/applications/DynamicObstacleManager/main.cpp b/source/RobotAPI/applications/DynamicObstacleManager/main.cpp
deleted file mode 100644
index 2b115f145..000000000
--- a/source/RobotAPI/applications/DynamicObstacleManager/main.cpp
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    Armar6Skills::ArmarXObjects::DynamicObstacleManager
- * @author     Fabian Peller-Konrad <fabian.peller-konrad@kit.edu>
- * @date       2020
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-
-// STD/STL
-#include <string>
-
-// ArmarX
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-
-// Component
-#include <RobotAPI/components/DynamicObstacleManager/DynamicObstacleManager.h>
-
-using namespace armarx;
-
-int main(int argc, char* argv[])
-{
-    const std::string name = DynamicObstacleManager::default_name;
-    return runSimpleComponentApp<DynamicObstacleManager>(argc, argv, name);
-}
diff --git a/source/RobotAPI/applications/ForceTorqueObserver/CMakeLists.txt b/source/RobotAPI/applications/ForceTorqueObserver/CMakeLists.txt
deleted file mode 100644
index 35427e462..000000000
--- a/source/RobotAPI/applications/ForceTorqueObserver/CMakeLists.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-armarx_component_set_name(ForceTorqueObserver)
-
-set(COMPONENT_LIBS RobotAPIUnits)
-set(EXE_SOURCE main.cpp)
-
-armarx_add_component_executable("${EXE_SOURCE}")
diff --git a/source/RobotAPI/applications/ForceTorqueObserver/main.cpp b/source/RobotAPI/applications/ForceTorqueObserver/main.cpp
deleted file mode 100644
index 5bde42c5f..000000000
--- a/source/RobotAPI/applications/ForceTorqueObserver/main.cpp
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * Copyright (C) 2012-2016, High Performance Humanoid Technologies (H2T), Karlsruhe Institute of Technology (KIT), all rights reserved.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::ForceTorqueObserver
- * @author     Manfred Kroehnert
- * @date       2014
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/units/ForceTorqueObserver.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp<armarx::ForceTorqueObserver>(argc, argv, "ForceTorqueObserver");
-}
diff --git a/source/RobotAPI/applications/ForceTorqueUnitSimulation/CMakeLists.txt b/source/RobotAPI/applications/ForceTorqueUnitSimulation/CMakeLists.txt
deleted file mode 100644
index 581a8ae85..000000000
--- a/source/RobotAPI/applications/ForceTorqueUnitSimulation/CMakeLists.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-armarx_component_set_name(ForceTorqueUnitSimulation)
-set(COMPONENT_LIBS RobotAPIUnits)
-armarx_add_component_executable("main.cpp")
diff --git a/source/RobotAPI/applications/ForceTorqueUnitSimulation/main.cpp b/source/RobotAPI/applications/ForceTorqueUnitSimulation/main.cpp
deleted file mode 100644
index 26a126b4b..000000000
--- a/source/RobotAPI/applications/ForceTorqueUnitSimulation/main.cpp
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * Copyright (C) 2012-2016, High Performance Humanoid Technologies (H2T), Karlsruhe Institute of Technology (KIT), all rights reserved.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::ForceTorqueUnitSimulation
- * @author     Peter Kaiser
- * @date       2014
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/units/ForceTorqueUnitSimulation.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp<armarx::ForceTorqueUnitSimulation>(argc, argv, "ForceTorqueUnitSimulation");
-}
diff --git a/source/RobotAPI/applications/FrameTracking/CMakeLists.txt b/source/RobotAPI/applications/FrameTracking/CMakeLists.txt
deleted file mode 100644
index 69311ee8d..000000000
--- a/source/RobotAPI/applications/FrameTracking/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-armarx_component_set_name("FrameTrackingApp")
-set(COMPONENT_LIBS FrameTracking)
-armarx_add_component_executable(main.cpp)
-
-#find_package(MyLib QUIET)
-#armarx_build_if(MyLib_FOUND "MyLib not available")
-# all target_include_directories must be guarded by if(Xyz_FOUND)
-# for multiple libraries write: if(X_FOUND AND Y_FOUND)....
-#if(MyLib_FOUND)
-#    target_include_directories(FrameTracking PUBLIC ${MyLib_INCLUDE_DIRS})
-#endif()
diff --git a/source/RobotAPI/applications/FrameTracking/main.cpp b/source/RobotAPI/applications/FrameTracking/main.cpp
deleted file mode 100644
index d8a7c016d..000000000
--- a/source/RobotAPI/applications/FrameTracking/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::FrameTracking
- * @author     Adrian Knobloch ( adrian dot knobloch at student dot kit dot edu )
- * @date       2019
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/FrameTracking/FrameTracking.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::FrameTracking > (argc, argv, "FrameTracking");
-}
diff --git a/source/RobotAPI/applications/GamepadControlUnit/CMakeLists.txt b/source/RobotAPI/applications/GamepadControlUnit/CMakeLists.txt
deleted file mode 100644
index 8ecc77b4d..000000000
--- a/source/RobotAPI/applications/GamepadControlUnit/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-armarx_component_set_name("GamepadControlUnitApp")
-
-set(COMPONENT_LIBS
-    ArmarXCoreInterfaces
-    ArmarXCore
-    GamepadControlUnit
-)
-
-set(EXE_SOURCE main.cpp)
-
-armarx_add_component_executable("${EXE_SOURCE}")
diff --git a/source/RobotAPI/applications/GamepadControlUnit/main.cpp b/source/RobotAPI/applications/GamepadControlUnit/main.cpp
deleted file mode 100644
index a2c5a7e42..000000000
--- a/source/RobotAPI/applications/GamepadControlUnit/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::GamepadControlUnit
- * @author     Simon Ottenhaus ( simon dot ottenhaus at kit dot edu )
- * @date       2017
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/GamepadControlUnit/GamepadControlUnit.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::GamepadControlUnit > (argc, argv, "GamepadControlUnit");
-}
diff --git a/source/RobotAPI/applications/GamepadUnit/CMakeLists.txt b/source/RobotAPI/applications/GamepadUnit/CMakeLists.txt
deleted file mode 100644
index cfc83f3b1..000000000
--- a/source/RobotAPI/applications/GamepadUnit/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-armarx_component_set_name("GamepadUnitApp")
-
-set(COMPONENT_LIBS
-    ArmarXCoreInterfaces
-    ArmarXCore
-    GamepadUnit
-)
-
-set(EXE_SOURCE main.cpp)
-
-armarx_add_component_executable("${EXE_SOURCE}")
diff --git a/source/RobotAPI/applications/GamepadUnit/main.cpp b/source/RobotAPI/applications/GamepadUnit/main.cpp
deleted file mode 100644
index ec81535eb..000000000
--- a/source/RobotAPI/applications/GamepadUnit/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::GamepadUnit
- * @author     Simon Ottenhaus ( simon dot ottenhaus at kit dot edu )
- * @date       2017
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/drivers/GamepadUnit/GamepadUnit.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::GamepadUnit > (argc, argv, "GamepadUnit");
-}
diff --git a/source/RobotAPI/applications/GamepadUnitObserver/CMakeLists.txt b/source/RobotAPI/applications/GamepadUnitObserver/CMakeLists.txt
deleted file mode 100644
index 1fb1582a0..000000000
--- a/source/RobotAPI/applications/GamepadUnitObserver/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-armarx_component_set_name("GamepadUnitObserverApp")
-
-set(COMPONENT_LIBS
-    ArmarXCoreInterfaces
-    ArmarXCore
-    RobotAPIUnits
-)
-
-set(EXE_SOURCE main.cpp)
-
-armarx_add_component_executable("${EXE_SOURCE}")
diff --git a/source/RobotAPI/applications/GamepadUnitObserver/main.cpp b/source/RobotAPI/applications/GamepadUnitObserver/main.cpp
deleted file mode 100644
index 3cf8db15d..000000000
--- a/source/RobotAPI/applications/GamepadUnitObserver/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::GamepadUnitObserver
- * @author     Simon Ottenhaus ( simon dot ottenhaus at kit dot edu )
- * @date       2017
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/units/GamepadUnitObserver.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::GamepadUnitObserver > (argc, argv, "GamepadUnitObserver");
-}
diff --git a/source/RobotAPI/applications/GraspCandidateObserver/CMakeLists.txt b/source/RobotAPI/applications/GraspCandidateObserver/CMakeLists.txt
deleted file mode 100644
index 9e4ac83c0..000000000
--- a/source/RobotAPI/applications/GraspCandidateObserver/CMakeLists.txt
+++ /dev/null
@@ -1,25 +0,0 @@
-armarx_component_set_name("GraspCandidateObserverApp")
-
-
-find_package(Eigen3 QUIET)
-armarx_build_if(Eigen3_FOUND "Eigen3 not available")
-
-if (Eigen3_FOUND)
-    include_directories(SYSTEM ${Eigen3_INCLUDE_DIR})
-endif()
-
-find_package(Simox ${ArmarX_Simox_VERSION} QUIET)
-armarx_build_if(Simox_FOUND "Simox-VirtualRobot not available")
-if(Simox_FOUND)
-    include_directories(${Simox_INCLUDE_DIRS})
-endif()
-
-set(COMPONENT_LIBS
-    RobotAPIUnits
-    ArmarXCoreInterfaces
-    ArmarXCore
-)
-
-set(EXE_SOURCE main.cpp)
-
-armarx_add_component_executable("${EXE_SOURCE}")
diff --git a/source/RobotAPI/applications/GraspCandidateObserver/main.cpp b/source/RobotAPI/applications/GraspCandidateObserver/main.cpp
deleted file mode 100644
index 9de7e0e21..000000000
--- a/source/RobotAPI/applications/GraspCandidateObserver/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::GraspCandidateObserver
- * @author     Simon Ottenhaus ( simon dot ottenhaus at kit dot edu )
- * @date       2019
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/units/GraspCandidateObserver.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::GraspCandidateObserver > (argc, argv, "GraspCandidateObserver");
-}
diff --git a/source/RobotAPI/applications/HandUnitSimulation/CMakeLists.txt b/source/RobotAPI/applications/HandUnitSimulation/CMakeLists.txt
deleted file mode 100644
index 78cd12fe1..000000000
--- a/source/RobotAPI/applications/HandUnitSimulation/CMakeLists.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-armarx_component_set_name("HandUnitSimulation")
-set(COMPONENT_LIBS RobotAPIUnits)
-armarx_add_component_executable("main.cpp")
diff --git a/source/RobotAPI/applications/HandUnitSimulation/main.cpp b/source/RobotAPI/applications/HandUnitSimulation/main.cpp
deleted file mode 100644
index 32bd1b8d3..000000000
--- a/source/RobotAPI/applications/HandUnitSimulation/main.cpp
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * Copyright (C) 2012-2016, High Performance Humanoid Technologies (H2T), Karlsruhe Institute of Technology (KIT), all rights reserved.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::HandUnitSimulation
- * @author     David Schiebener ( schiebener at kit dot edu )
- * @date       2014
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/units/HandUnitSimulation.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp<armarx::HandUnitSimulation>(argc, argv, "HandUnitSimulation");
-}
diff --git a/source/RobotAPI/applications/HapticObserver/CMakeLists.txt b/source/RobotAPI/applications/HapticObserver/CMakeLists.txt
deleted file mode 100644
index 7b9bff253..000000000
--- a/source/RobotAPI/applications/HapticObserver/CMakeLists.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-armarx_component_set_name("HapticObserverApp")
-set(COMPONENT_LIBS RobotAPIUnits)
-armarx_add_component_executable("main.cpp")
diff --git a/source/RobotAPI/applications/HapticObserver/main.cpp b/source/RobotAPI/applications/HapticObserver/main.cpp
deleted file mode 100644
index c521a8ac8..000000000
--- a/source/RobotAPI/applications/HapticObserver/main.cpp
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * Copyright (C) 2012-2016, High Performance Humanoid Technologies (H2T), Karlsruhe Institute of Technology (KIT), all rights reserved.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::HapticObserver
- * @author     Simon Ottenhaus ( simon dot ottenhaus at kit dot edu )
- * @date       2014
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/units/HapticObserver.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp<armarx::HapticObserver>(argc, argv, "HapticObserver");
-}
diff --git a/source/RobotAPI/applications/HeadIKUnit/CMakeLists.txt b/source/RobotAPI/applications/HeadIKUnit/CMakeLists.txt
deleted file mode 100644
index 11d3ea4c2..000000000
--- a/source/RobotAPI/applications/HeadIKUnit/CMakeLists.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-armarx_component_set_name(HeadIKUnit)
-set(COMPONENT_LIBS RobotAPIUnits)
-armarx_add_component_executable("main.cpp")
diff --git a/source/RobotAPI/applications/HeadIKUnit/main.cpp b/source/RobotAPI/applications/HeadIKUnit/main.cpp
deleted file mode 100644
index 83eadc25c..000000000
--- a/source/RobotAPI/applications/HeadIKUnit/main.cpp
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * Copyright (C) 2012-2016, High Performance Humanoid Technologies (H2T), Karlsruhe Institute of Technology (KIT), all rights reserved.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::HeadIKUnit
- * @author     David Schiebener
- * @date       2014
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/units/HeadIKUnit.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp<armarx::HeadIKUnit>(argc, argv, "HeadIKUnit");
-}
diff --git a/source/RobotAPI/applications/HokuyoLaserUnit/CMakeLists.txt b/source/RobotAPI/applications/HokuyoLaserUnit/CMakeLists.txt
deleted file mode 100644
index 9c0a35a34..000000000
--- a/source/RobotAPI/applications/HokuyoLaserUnit/CMakeLists.txt
+++ /dev/null
@@ -1,13 +0,0 @@
-armarx_component_set_name("HokuyoLaserUnitApp")
-
-find_package(HokuyoLaserScannerDriver QUIET)
-
-set(COMPONENT_LIBS
-    ArmarXCoreInterfaces
-    ArmarXCore
-    HokuyoLaserUnit
-)
-
-set(EXE_SOURCE main.cpp)
-
-armarx_add_component_executable("${EXE_SOURCE}")
diff --git a/source/RobotAPI/applications/HokuyoLaserUnit/main.cpp b/source/RobotAPI/applications/HokuyoLaserUnit/main.cpp
deleted file mode 100644
index 111a54218..000000000
--- a/source/RobotAPI/applications/HokuyoLaserUnit/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::HokyouLaserUnit
- * @author     Fabian Paus ( fabian dot paus at kit dot edu )
- * @date       2017
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/drivers/HokuyoLaserUnit/HokuyoLaserUnit.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::HokuyoLaserUnit > (argc, argv, "HokuyoLaserUnit");
-}
diff --git a/source/RobotAPI/applications/InertialMeasurementUnitObserver/CMakeLists.txt b/source/RobotAPI/applications/InertialMeasurementUnitObserver/CMakeLists.txt
deleted file mode 100644
index 1c7d0f434..000000000
--- a/source/RobotAPI/applications/InertialMeasurementUnitObserver/CMakeLists.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-armarx_component_set_name("InertialMeasurementUnitObserverApp")
-
-set(COMPONENT_LIBS ArmarXCoreInterfaces ArmarXCore ArmarXCoreObservers  RobotAPIUnits)
-
-set(EXE_SOURCE main.cpp)
-
-armarx_add_component_executable("${EXE_SOURCE}")
diff --git a/source/RobotAPI/applications/InertialMeasurementUnitObserver/main.cpp b/source/RobotAPI/applications/InertialMeasurementUnitObserver/main.cpp
deleted file mode 100644
index 593baa1d1..000000000
--- a/source/RobotAPI/applications/InertialMeasurementUnitObserver/main.cpp
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * Copyright (C) 2012-2016, High Performance Humanoid Technologies (H2T), Karlsruhe Institute of Technology (KIT), all rights reserved.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::InertialMeasurementUnitObserver
- * @author     Markus Grotz ( markus-grotz at web dot de )
- * @date       2015
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/units/InertialMeasurementUnitObserver.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp<armarx::InertialMeasurementUnitObserver>(argc, argv, "InertialMeasurementUnitObserver");
-}
diff --git a/source/RobotAPI/applications/KITHandUnit/CMakeLists.txt b/source/RobotAPI/applications/KITHandUnit/CMakeLists.txt
deleted file mode 100644
index a7dd589b2..000000000
--- a/source/RobotAPI/applications/KITHandUnit/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-armarx_component_set_name("KITHandUnitApp")
-set(COMPONENT_LIBS KITHandUnit)
-armarx_add_component_executable(main.cpp)
-
-#find_package(MyLib QUIET)
-#armarx_build_if(MyLib_FOUND "MyLib not available")
-# all target_include_directories must be guarded by if(Xyz_FOUND)
-# for multiple libraries write: if(X_FOUND AND Y_FOUND)....
-#if(MyLib_FOUND)
-#    target_include_directories(KITHandUnit PUBLIC ${MyLib_INCLUDE_DIRS})
-#endif()
diff --git a/source/RobotAPI/applications/KITHandUnit/main.cpp b/source/RobotAPI/applications/KITHandUnit/main.cpp
deleted file mode 100644
index e9dcea70a..000000000
--- a/source/RobotAPI/applications/KITHandUnit/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::KITHandUnit
- * @author     Stefan Reither ( stefan dot reither at kit dot edu )
- * @date       2019
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/KITHandUnit/KITHandUnit.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::KITHandUnit > (argc, argv, "KITHandUnit");
-}
diff --git a/source/RobotAPI/applications/KITProstheticHandObserver/CMakeLists.txt b/source/RobotAPI/applications/KITProstheticHandObserver/CMakeLists.txt
deleted file mode 100644
index ea8df22f5..000000000
--- a/source/RobotAPI/applications/KITProstheticHandObserver/CMakeLists.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-armarx_component_set_name("KITProstheticHandObserverApp")
-set(COMPONENT_LIBS KITProstheticHandObserver)
-armarx_add_component_executable("main.cpp")
diff --git a/source/RobotAPI/applications/KITProstheticHandObserver/main.cpp b/source/RobotAPI/applications/KITProstheticHandObserver/main.cpp
deleted file mode 100644
index 7542d5e28..000000000
--- a/source/RobotAPI/applications/KITProstheticHandObserver/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::KITProstheticHandObserver
- * @author     Raphael Grimm ( raphael dot grimm at kit dot edu )
- * @date       2018
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/KITProstheticHandObserver/KITProstheticHandObserver.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::KITProstheticHandObserver > (argc, argv, "KITProstheticHandObserver");
-}
diff --git a/source/RobotAPI/applications/KITProstheticHandUnit/CMakeLists.txt b/source/RobotAPI/applications/KITProstheticHandUnit/CMakeLists.txt
deleted file mode 100644
index 695303d1d..000000000
--- a/source/RobotAPI/applications/KITProstheticHandUnit/CMakeLists.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-armarx_component_set_name("KITProstheticHandUnitApp")
-set(COMPONENT_LIBS KITProstheticHandUnit)
-armarx_add_component_executable("main.cpp")
diff --git a/source/RobotAPI/applications/KITProstheticHandUnit/main.cpp b/source/RobotAPI/applications/KITProstheticHandUnit/main.cpp
deleted file mode 100644
index b464a3511..000000000
--- a/source/RobotAPI/applications/KITProstheticHandUnit/main.cpp
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::KITProstheticHandUnit
- * @author     Raphael Grimm ( raphael dot grimm at kit dot edu )
- * @date       2018
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/KITProstheticHandUnit/KITProstheticHandUnit.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-#include <QCoreApplication>
-
-int main(int argc, char* argv[])
-{
-    QCoreApplication a(argc, argv);
-    return armarx::runSimpleComponentApp < armarx::KITProstheticHandUnit > (argc, argv, "KITProstheticHandUnit");
-}
diff --git a/source/RobotAPI/applications/KinematicUnitObserver/CMakeLists.txt b/source/RobotAPI/applications/KinematicUnitObserver/CMakeLists.txt
deleted file mode 100644
index 940574be8..000000000
--- a/source/RobotAPI/applications/KinematicUnitObserver/CMakeLists.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-
-armarx_component_set_name(KinematicUnitObserver)
-
-
-set(COMPONENT_LIBS RobotAPIUnits)
-
-set(SOURCES main.cpp)
-
-armarx_add_component_executable("${SOURCES}")
diff --git a/source/RobotAPI/applications/KinematicUnitObserver/config/testProperty b/source/RobotAPI/applications/KinematicUnitObserver/config/testProperty
deleted file mode 100644
index fd3d73770..000000000
--- a/source/RobotAPI/applications/KinematicUnitObserver/config/testProperty
+++ /dev/null
@@ -1,7 +0,0 @@
-# test config file for KinematicUnit configured to be a Head
-
-ArmarX.KinematicUnitObserver.RobotFileName=/org/share/home/staff/welke/projects/armarx/data/ArmarIII/ArmarIII-Head.xml        	# (absolut path required) model XML file path containing a VirtualRobot RobotNodeSet that defines the joints
-ArmarX.KinematicUnitObserver.RobotNodeSetName=Head								# node set name
-ArmarX.KinematicUnitObserver.AdapterName=KinematicUnitObserver      						# name of the ICE adapter
-
-
diff --git a/source/RobotAPI/applications/KinematicUnitObserver/main.cpp b/source/RobotAPI/applications/KinematicUnitObserver/main.cpp
deleted file mode 100644
index 213d65125..000000000
--- a/source/RobotAPI/applications/KinematicUnitObserver/main.cpp
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * Copyright (C) 2012-2016, High Performance Humanoid Technologies (H2T), Karlsruhe Institute of Technology (KIT), all rights reserved.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    Core::application::KinematicUnitObserver
- * @author     Manfred Kroehnert
- * @date       2014
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/units/KinematicUnitObserver.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp<armarx::KinematicUnitObserver>(argc, argv, "KinematicUnitObserver");
-}
diff --git a/source/RobotAPI/applications/KinematicUnitSimulation/CMakeLists.txt b/source/RobotAPI/applications/KinematicUnitSimulation/CMakeLists.txt
deleted file mode 100644
index da3097f2b..000000000
--- a/source/RobotAPI/applications/KinematicUnitSimulation/CMakeLists.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-armarx_component_set_name(KinematicUnitSimulation)
-set(COMPONENT_LIBS RobotAPIUnits)
-armarx_add_component_executable("main.cpp")
diff --git a/source/RobotAPI/applications/KinematicUnitSimulation/config/testProperty b/source/RobotAPI/applications/KinematicUnitSimulation/config/testProperty
deleted file mode 100644
index f5a038785..000000000
--- a/source/RobotAPI/applications/KinematicUnitSimulation/config/testProperty
+++ /dev/null
@@ -1,5 +0,0 @@
-# test config file for KinematicUnit configured to be a Head
-
-ArmarX.KinematicUnitSimulation.RobotFileName=${ArmarXHome_DIR}/Armar3/data/robotmodel/ArmarIII-Head.xml
-ArmarX.KinematicUnitSimulation.RobotNodeSetName=Head                            # node set name
-ArmarX.KinematicUnitSimulation.AdapterName=HeadKinematicUnitInstructionChannel  # name of the Ice adapter
diff --git a/source/RobotAPI/applications/KinematicUnitSimulation/main.cpp b/source/RobotAPI/applications/KinematicUnitSimulation/main.cpp
deleted file mode 100644
index 766a0c8a0..000000000
--- a/source/RobotAPI/applications/KinematicUnitSimulation/main.cpp
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * Copyright (C) 2012-2016, High Performance Humanoid Technologies (H2T), Karlsruhe Institute of Technology (KIT), all rights reserved.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    Core::application::KinematicUnitSimulation
- * @author     Manfred Kroehnert
- * @date       2014
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/units/KinematicUnitSimulation.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp<armarx::KinematicUnitSimulation>(argc, argv, "KinematicUnitSimulation");
-}
diff --git a/source/RobotAPI/applications/LaserScannerUnitObserver/CMakeLists.txt b/source/RobotAPI/applications/LaserScannerUnitObserver/CMakeLists.txt
deleted file mode 100644
index 2e78fb522..000000000
--- a/source/RobotAPI/applications/LaserScannerUnitObserver/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-armarx_component_set_name("LaserScannerUnitObserverApp")
-
-set(COMPONENT_LIBS
-    ArmarXCoreInterfaces
-    ArmarXCore
-    RobotAPIUnits
-)
-
-set(EXE_SOURCE main.cpp)
-
-armarx_add_component_executable("${EXE_SOURCE}")
diff --git a/source/RobotAPI/applications/LaserScannerUnitObserver/main.cpp b/source/RobotAPI/applications/LaserScannerUnitObserver/main.cpp
deleted file mode 100644
index ecae3d6b3..000000000
--- a/source/RobotAPI/applications/LaserScannerUnitObserver/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::LaserScannerUnitObserver
- * @author     Fabian Paus ( fabian dot paus at kit dot edu )
- * @date       2017
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/units/LaserScannerUnitObserver.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::LaserScannerUnitObserver > (argc, argv, "LaserScannerUnitObserver");
-}
diff --git a/source/RobotAPI/applications/MetaWearIMU/CMakeLists.txt b/source/RobotAPI/applications/MetaWearIMU/CMakeLists.txt
deleted file mode 100644
index acf61ea40..000000000
--- a/source/RobotAPI/applications/MetaWearIMU/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-armarx_component_set_name("MetaWearIMUApp")
-
-set(COMPONENT_LIBS
-    ArmarXCoreInterfaces
-    ArmarXCore
-    MetaWearIMU
-)
-
-set(EXE_SOURCE main.cpp)
-
-armarx_add_component_executable("${EXE_SOURCE}")
diff --git a/source/RobotAPI/applications/MetaWearIMU/main.cpp b/source/RobotAPI/applications/MetaWearIMU/main.cpp
deleted file mode 100644
index 1f86708a7..000000000
--- a/source/RobotAPI/applications/MetaWearIMU/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::MetaWearIMU
- * @author     Lukas Kaul ( lukas dot s dot kaul at gmail dot com )
- * @date       2017
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/drivers/MetaWearIMU/MetaWearIMU.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::MetaWearIMU > (argc, argv, "MetaWearIMU");
-}
diff --git a/source/RobotAPI/applications/MetaWearIMUObserver/CMakeLists.txt b/source/RobotAPI/applications/MetaWearIMUObserver/CMakeLists.txt
deleted file mode 100644
index eb94631d6..000000000
--- a/source/RobotAPI/applications/MetaWearIMUObserver/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-armarx_component_set_name("MetaWearIMUObserverApp")
-
-set(COMPONENT_LIBS
-    ArmarXCoreInterfaces
-    ArmarXCore
-    RobotAPIUnits
-)
-
-set(EXE_SOURCE main.cpp)
-
-armarx_add_component_executable("${EXE_SOURCE}")
diff --git a/source/RobotAPI/applications/MetaWearIMUObserver/main.cpp b/source/RobotAPI/applications/MetaWearIMUObserver/main.cpp
deleted file mode 100644
index 376425b06..000000000
--- a/source/RobotAPI/applications/MetaWearIMUObserver/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::MetaWearIMUObserver
- * @author     Lukas Kaul ( lukas dot s dot kaul at gmail dot com )
- * @date       2017
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/units/MetaWearIMUObserver.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::MetaWearIMUObserver > (argc, argv, "MetaWearIMUObserver");
-}
diff --git a/source/RobotAPI/applications/MultiHandUnit/CMakeLists.txt b/source/RobotAPI/applications/MultiHandUnit/CMakeLists.txt
deleted file mode 100644
index 83ad8ec8e..000000000
--- a/source/RobotAPI/applications/MultiHandUnit/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-armarx_component_set_name("MultiHandUnitApp")
-set(COMPONENT_LIBS MultiHandUnit)
-armarx_add_component_executable(main.cpp)
-
-#find_package(MyLib QUIET)
-#armarx_build_if(MyLib_FOUND "MyLib not available")
-# all target_include_directories must be guarded by if(Xyz_FOUND)
-# for multiple libraries write: if(X_FOUND AND Y_FOUND)....
-#if(MyLib_FOUND)
-#    target_include_directories(MultiHandUnit PUBLIC ${MyLib_INCLUDE_DIRS})
-#endif()
diff --git a/source/RobotAPI/applications/MultiHandUnit/main.cpp b/source/RobotAPI/applications/MultiHandUnit/main.cpp
deleted file mode 100644
index b284606d5..000000000
--- a/source/RobotAPI/applications/MultiHandUnit/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::MultiHandUnit
- * @author     Raphael Grimm ( raphael dot grimm at kit dot edu )
- * @date       2019
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/MultiHandUnit/MultiHandUnit.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::MultiHandUnit > (argc, argv, "MultiHandUnit");
-}
diff --git a/source/RobotAPI/applications/NaturalIKTest/CMakeLists.txt b/source/RobotAPI/applications/NaturalIKTest/CMakeLists.txt
deleted file mode 100644
index 69f1eb985..000000000
--- a/source/RobotAPI/applications/NaturalIKTest/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-armarx_component_set_name("NaturalIKTestApp")
-set(COMPONENT_LIBS NaturalIKTest)
-armarx_add_component_executable(main.cpp)
-
-#find_package(MyLib QUIET)
-#armarx_build_if(MyLib_FOUND "MyLib not available")
-# all target_include_directories must be guarded by if(Xyz_FOUND)
-# for multiple libraries write: if(X_FOUND AND Y_FOUND)....
-#if(MyLib_FOUND)
-#    target_include_directories(NaturalIKTest PUBLIC ${MyLib_INCLUDE_DIRS})
-#endif()
diff --git a/source/RobotAPI/applications/NaturalIKTest/main.cpp b/source/RobotAPI/applications/NaturalIKTest/main.cpp
deleted file mode 100644
index 5f47c4416..000000000
--- a/source/RobotAPI/applications/NaturalIKTest/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::NaturalIKTest
- * @author     Simon Ottenhaus ( simon dot ottenhaus at kit dot edu )
- * @date       2020
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/NaturalIKTest/NaturalIKTest.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::NaturalIKTest > (argc, argv, "NaturalIKTest");
-}
diff --git a/source/RobotAPI/applications/OptoForceUnit/CMakeLists.txt b/source/RobotAPI/applications/OptoForceUnit/CMakeLists.txt
deleted file mode 100644
index 314d412e2..000000000
--- a/source/RobotAPI/applications/OptoForceUnit/CMakeLists.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-armarx_component_set_name("OptoForceUnitApp")
-set(COMPONENT_LIBS  OptoForceUnit)
-armarx_add_component_executable("main.cpp")
diff --git a/source/RobotAPI/applications/OptoForceUnit/main.cpp b/source/RobotAPI/applications/OptoForceUnit/main.cpp
deleted file mode 100644
index 4c41d5d63..000000000
--- a/source/RobotAPI/applications/OptoForceUnit/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::OptoForceUnit
- * @author     Simon Ottenhaus ( simon dot ottenhaus at kit dot edu )
- * @date       2017
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/drivers/OptoForceUnit/OptoForceUnit.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::OptoForceUnit > (argc, argv, "OptoForceUnit");
-}
diff --git a/source/RobotAPI/applications/OptoForceUnitObserver/CMakeLists.txt b/source/RobotAPI/applications/OptoForceUnitObserver/CMakeLists.txt
deleted file mode 100644
index e9888678a..000000000
--- a/source/RobotAPI/applications/OptoForceUnitObserver/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-armarx_component_set_name("OptoForceUnitObserverApp")
-
-set(COMPONENT_LIBS
-    ArmarXCoreInterfaces
-    ArmarXCore
-    RobotAPIUnits
-)
-
-set(EXE_SOURCE main.cpp)
-
-armarx_add_component_executable("${EXE_SOURCE}")
diff --git a/source/RobotAPI/applications/OptoForceUnitObserver/main.cpp b/source/RobotAPI/applications/OptoForceUnitObserver/main.cpp
deleted file mode 100644
index 5701513b4..000000000
--- a/source/RobotAPI/applications/OptoForceUnitObserver/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::OptoForceUnitObserver
- * @author     Simon Ottenhaus ( simon dot ottenhaus at kit dot edu )
- * @date       2017
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/units/OptoForceUnitObserver.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::OptoForceUnitObserver > (argc, argv, "OptoForceUnitObserver");
-}
diff --git a/source/RobotAPI/applications/OrientedTactileSensorUnit/CMakeLists.txt b/source/RobotAPI/applications/OrientedTactileSensorUnit/CMakeLists.txt
deleted file mode 100644
index d55194dc8..000000000
--- a/source/RobotAPI/applications/OrientedTactileSensorUnit/CMakeLists.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-armarx_component_set_name("OrientedTactileSensorUnitApp")
-set(COMPONENT_LIBS OrientedTactileSensor)
-armarx_add_component_executable("main.cpp")
diff --git a/source/RobotAPI/applications/OrientedTactileSensorUnit/main.cpp b/source/RobotAPI/applications/OrientedTactileSensorUnit/main.cpp
deleted file mode 100644
index f4ab124f7..000000000
--- a/source/RobotAPI/applications/OrientedTactileSensorUnit/main.cpp
+++ /dev/null
@@ -1,9 +0,0 @@
-#include <ArmarXCore/core/application/Application.h>
-#include <RobotAPI/drivers/OrientedTactileSensor/OrientedTactileSensorUnit.h>
-#include <ArmarXCore/core/logging/Logging.h>
-#include <ArmarXCore/core/Component.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::OrientedTactileSensorUnit > (argc, argv, "OrientedTactileSensorUnit");
-}
diff --git a/source/RobotAPI/applications/OrientedTactileSensorUnitObserver/CMakeLists.txt b/source/RobotAPI/applications/OrientedTactileSensorUnitObserver/CMakeLists.txt
deleted file mode 100644
index d2bbae6ff..000000000
--- a/source/RobotAPI/applications/OrientedTactileSensorUnitObserver/CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-armarx_component_set_name("OrientedTactileSensorUnitObserverApp")
-
-set(COMPONENT_LIBS
-    ArmarXCoreInterfaces
-    ArmarXCore
-    RobotAPIUnits
-)
-
-set(EXE_SOURCE main.cpp)
-
-armarx_add_component_executable("${EXE_SOURCE}")
diff --git a/source/RobotAPI/applications/OrientedTactileSensorUnitObserver/main.cpp b/source/RobotAPI/applications/OrientedTactileSensorUnitObserver/main.cpp
deleted file mode 100644
index e400516ab..000000000
--- a/source/RobotAPI/applications/OrientedTactileSensorUnitObserver/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::OrientedTactileSensorUnitObserver
- * @author     andreeatulbure ( andreea_tulbure at yahoo dot de )
- * @date       2017
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/units/OrientedTactileSensorUnitObserver.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::OrientedTactileSensorUnitObserver > (argc, argv, "OrientedTactileSensorUnitObserver");
-}
diff --git a/source/RobotAPI/applications/PlatformUnitObserver/CMakeLists.txt b/source/RobotAPI/applications/PlatformUnitObserver/CMakeLists.txt
deleted file mode 100644
index c9deac457..000000000
--- a/source/RobotAPI/applications/PlatformUnitObserver/CMakeLists.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-
-armarx_component_set_name(PlatformUnitObserver)
-
-set(COMPONENT_LIBS RobotAPIUnits)
-
-set(SOURCES main.cpp)
-
-armarx_add_component_executable("${SOURCES}")
diff --git a/source/RobotAPI/applications/PlatformUnitObserver/main.cpp b/source/RobotAPI/applications/PlatformUnitObserver/main.cpp
deleted file mode 100644
index 71e4411dd..000000000
--- a/source/RobotAPI/applications/PlatformUnitObserver/main.cpp
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * Copyright (C) 2012-2016, High Performance Humanoid Technologies (H2T), Karlsruhe Institute of Technology (KIT), all rights reserved.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    Core::application::PlatformUnitObserver
- * @author     Manfred Kroehnert
- * @date       2014
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/units/PlatformUnitObserver.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp<armarx::PlatformUnitObserver>(argc, argv, "PlatformUnitObserver");
-}
diff --git a/source/RobotAPI/applications/PlatformUnitSimulation/CMakeLists.txt b/source/RobotAPI/applications/PlatformUnitSimulation/CMakeLists.txt
deleted file mode 100644
index a6eae5afe..000000000
--- a/source/RobotAPI/applications/PlatformUnitSimulation/CMakeLists.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-
-armarx_component_set_name(PlatformUnitSimulation)
-
-set(COMPONENT_LIBS RobotAPIUnits)
-
-set(SOURCES main.cpp)
-
-armarx_add_component_executable("${SOURCES}")
diff --git a/source/RobotAPI/applications/PlatformUnitSimulation/main.cpp b/source/RobotAPI/applications/PlatformUnitSimulation/main.cpp
deleted file mode 100644
index bca561916..000000000
--- a/source/RobotAPI/applications/PlatformUnitSimulation/main.cpp
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * Copyright (C) 2012-2016, High Performance Humanoid Technologies (H2T), Karlsruhe Institute of Technology (KIT), all rights reserved.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    Core::application::PlatformUnitSimulation
- * @author     Manfred Kroehnert
- * @date       2014
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/units/PlatformUnitSimulation.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp<armarx::PlatformUnitSimulation>(argc, argv, "PlatformUnitSimulation");
-}
diff --git a/source/RobotAPI/applications/RobotControl/CMakeLists.txt b/source/RobotAPI/applications/RobotControl/CMakeLists.txt
deleted file mode 100644
index 798af63ac..000000000
--- a/source/RobotAPI/applications/RobotControl/CMakeLists.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-
-armarx_component_set_name(RobotControl)
-
-set(COMPONENT_LIBS RobotAPIOperations)
-
-set(SOURCES main.cpp)
-
-armarx_add_component_executable("${SOURCES}")
diff --git a/source/RobotAPI/applications/RobotControl/main.cpp b/source/RobotAPI/applications/RobotControl/main.cpp
deleted file mode 100644
index 720e6420b..000000000
--- a/source/RobotAPI/applications/RobotControl/main.cpp
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * Copyright (C) 2012-2016, High Performance Humanoid Technologies (H2T), Karlsruhe Institute of Technology (KIT), all rights reserved.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    Core::application::RobotControl
- * @author     Manfred Kroehnert
- * @date       2014
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/statecharts/operations/RobotControl.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp<armarx::RobotControl>(argc, argv, "RobotControl");
-}
diff --git a/source/RobotAPI/applications/RobotHealth/CMakeLists.txt b/source/RobotAPI/applications/RobotHealth/CMakeLists.txt
deleted file mode 100644
index 1009dfb45..000000000
--- a/source/RobotAPI/applications/RobotHealth/CMakeLists.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-armarx_component_set_name("RobotHealthApp")
-set(COMPONENT_LIBS RobotHealth)
-armarx_add_component_executable("main.cpp")
diff --git a/source/RobotAPI/applications/RobotHealth/main.cpp b/source/RobotAPI/applications/RobotHealth/main.cpp
deleted file mode 100644
index 18f81718c..000000000
--- a/source/RobotAPI/applications/RobotHealth/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::RobotHealth
- * @author     Simon Ottenhaus ( simon dot ottenhaus at kit dot edu )
- * @date       2018
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/RobotHealth/RobotHealth.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::RobotHealth > (argc, argv, "RobotHealth");
-}
diff --git a/source/RobotAPI/applications/RobotHealthDummy/CMakeLists.txt b/source/RobotAPI/applications/RobotHealthDummy/CMakeLists.txt
deleted file mode 100644
index 47f7ea245..000000000
--- a/source/RobotAPI/applications/RobotHealthDummy/CMakeLists.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-armarx_component_set_name("RobotHealthDummyApp")
-set(COMPONENT_LIBS RobotHealth)
-armarx_add_component_executable("main.cpp")
diff --git a/source/RobotAPI/applications/RobotHealthDummy/main.cpp b/source/RobotAPI/applications/RobotHealthDummy/main.cpp
deleted file mode 100644
index 60e4ee420..000000000
--- a/source/RobotAPI/applications/RobotHealthDummy/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::RobotHealthDummy
- * @author     Simon Ottenhaus ( simon dot ottenhaus at kit dot edu )
- * @date       2018
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/RobotHealth/RobotHealthDummy.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::RobotHealthDummy > (argc, argv, "RobotHealthDummy");
-}
diff --git a/source/RobotAPI/applications/RobotNameService/CMakeLists.txt b/source/RobotAPI/applications/RobotNameService/CMakeLists.txt
deleted file mode 100644
index 0e89b9bfe..000000000
--- a/source/RobotAPI/applications/RobotNameService/CMakeLists.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-armarx_component_set_name("RobotNameServiceApp")
-set(COMPONENT_LIBS RobotNameService)
-armarx_add_component_executable("main.cpp")
diff --git a/source/RobotAPI/applications/RobotNameService/main.cpp b/source/RobotAPI/applications/RobotNameService/main.cpp
deleted file mode 100644
index 4a8242fe1..000000000
--- a/source/RobotAPI/applications/RobotNameService/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::RobotNameService
- * @author     [Author Name] ( [Author Email] )
- * @date       2018
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/RobotNameService/RobotNameService.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::RobotNameService > (argc, argv, "RobotNameService");
-}
diff --git a/source/RobotAPI/applications/RobotStateObserver/CMakeLists.txt b/source/RobotAPI/applications/RobotStateObserver/CMakeLists.txt
deleted file mode 100644
index 656f13498..000000000
--- a/source/RobotAPI/applications/RobotStateObserver/CMakeLists.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-armarx_component_set_name(RobotStateObserver)
-set(COMPONENT_LIBS RobotAPICore)
-set(SOURCES main.cpp RobotStateObserverApp.h)
-armarx_add_component_executable("${SOURCES}")
diff --git a/source/RobotAPI/applications/RobotStateObserver/RobotStateObserverApp.h b/source/RobotAPI/applications/RobotStateObserver/RobotStateObserverApp.h
deleted file mode 100644
index e3538fda2..000000000
--- a/source/RobotAPI/applications/RobotStateObserver/RobotStateObserverApp.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * Copyright (C) 2012-2016, High Performance Humanoid Technologies (H2T), Karlsruhe Institute of Technology (KIT), all rights reserved.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    ArmarXCore::applications
- * @author     Kai Welke (welke dot at kit dot edu)
- * @date       2012
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-
-#include <ArmarXCore/core/application/Application.h>
-#include <RobotAPI/libraries/core/remoterobot/RobotStateObserver.h>
-
-namespace armarx
-{
-    /**
-     * Application for testing armarx::RobotStateObserver
-     */
-    class RobotStateObserverApp :
-        virtual public armarx::Application
-    {
-        /**
-         * @see armarx::Application::setup()
-         */
-        void setup(const ManagedIceObjectRegistryInterfacePtr& registry, Ice::PropertiesPtr properties)
-        {
-            registry->addObject(Component::create<RobotStateObserver>(properties));
-        }
-    };
-}
diff --git a/source/RobotAPI/applications/RobotStateObserver/config/testProperty b/source/RobotAPI/applications/RobotStateObserver/config/testProperty
deleted file mode 100644
index fd3d73770..000000000
--- a/source/RobotAPI/applications/RobotStateObserver/config/testProperty
+++ /dev/null
@@ -1,7 +0,0 @@
-# test config file for KinematicUnit configured to be a Head
-
-ArmarX.KinematicUnitObserver.RobotFileName=/org/share/home/staff/welke/projects/armarx/data/ArmarIII/ArmarIII-Head.xml        	# (absolut path required) model XML file path containing a VirtualRobot RobotNodeSet that defines the joints
-ArmarX.KinematicUnitObserver.RobotNodeSetName=Head								# node set name
-ArmarX.KinematicUnitObserver.AdapterName=KinematicUnitObserver      						# name of the ICE adapter
-
-
diff --git a/source/RobotAPI/applications/RobotStateObserver/main.cpp b/source/RobotAPI/applications/RobotStateObserver/main.cpp
deleted file mode 100644
index 1c1a74f27..000000000
--- a/source/RobotAPI/applications/RobotStateObserver/main.cpp
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * Copyright (C) 2012-2016, High Performance Humanoid Technologies (H2T), Karlsruhe Institute of Technology (KIT), all rights reserved.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    Core::application::RobotStateObserver
- * @author     Manfred Kroehnert
- * @date       2014
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include "RobotStateObserverApp.h"
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    armarx::ApplicationPtr app = armarx::Application::createInstance<armarx::RobotStateObserverApp>();
-    app->setName("RobotStateObserver");
-
-    return app->main(argc, argv);
-}
diff --git a/source/RobotAPI/applications/SpeechObserver/CMakeLists.txt b/source/RobotAPI/applications/SpeechObserver/CMakeLists.txt
deleted file mode 100644
index 513924b4d..000000000
--- a/source/RobotAPI/applications/SpeechObserver/CMakeLists.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-armarx_component_set_name("SpeechObserverApp")
-
-
-set(COMPONENT_LIBS
-    ArmarXCoreInterfaces
-    ArmarXCore
-    RobotAPIUnits
-)
-
-set(EXE_SOURCE main.cpp)
-
-armarx_add_component_executable("${EXE_SOURCE}")
diff --git a/source/RobotAPI/applications/SpeechObserver/main.cpp b/source/RobotAPI/applications/SpeechObserver/main.cpp
deleted file mode 100644
index 2ea82bf40..000000000
--- a/source/RobotAPI/applications/SpeechObserver/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::SpeechObserver
- * @author     Simon Ottenhaus ( simon dot ottenhaus at kit dot edu )
- * @date       2018
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/units/SpeechObserver.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::SpeechObserver > (argc, argv, "SpeechObserver");
-}
diff --git a/source/RobotAPI/applications/StatechartExecutorExample/CMakeLists.txt b/source/RobotAPI/applications/StatechartExecutorExample/CMakeLists.txt
deleted file mode 100644
index 7777d60f1..000000000
--- a/source/RobotAPI/applications/StatechartExecutorExample/CMakeLists.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-armarx_component_set_name("StatechartExecutorExampleApp")
-set(COMPONENT_LIBS StatechartExecutorExample)
-armarx_add_component_executable(main.cpp)
diff --git a/source/RobotAPI/applications/StatechartExecutorExample/main.cpp b/source/RobotAPI/applications/StatechartExecutorExample/main.cpp
deleted file mode 100644
index cce20936d..000000000
--- a/source/RobotAPI/applications/StatechartExecutorExample/main.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    ArmarXGui::application::StatechartExecutorExample
- * @author     Stefan Reither ( stefan dot reither at kit dot edu )
- * @date       2019
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/components/StatechartExecutorExample/StatechartExecutorExample.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp < armarx::StatechartExecutorExample > (argc, argv, "StatechartExecutorExample");
-}
diff --git a/source/RobotAPI/applications/ViewSelection/CMakeLists.txt b/source/RobotAPI/applications/ViewSelection/CMakeLists.txt
deleted file mode 100644
index feeeadcdd..000000000
--- a/source/RobotAPI/applications/ViewSelection/CMakeLists.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-armarx_component_set_name("ViewSelectionApp")
-set(COMPONENT_LIBS ViewSelection)
-set(EXE_SOURCE main.cpp ViewSelectionApp.h)
-armarx_add_component_executable("${EXE_SOURCE}")
diff --git a/source/RobotAPI/applications/ViewSelection/ViewSelectionApp.h b/source/RobotAPI/applications/ViewSelection/ViewSelectionApp.h
deleted file mode 100644
index 8d19a2211..000000000
--- a/source/RobotAPI/applications/ViewSelection/ViewSelectionApp.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * Copyright (C) 2015-2016, High Performance Humanoid Technologies (H2T), Karlsruhe Institute of Technology (KIT), all rights reserved.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotComponents::application::ViewSelection
- * @author     David Schiebener (schiebener qt kit dot edu)
- * @date       2015
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#pragma once
-
-
-#include <ArmarXCore/core/application/Application.h>
-#include <RobotAPI/components/ViewSelection/ViewSelection.h>
-
-namespace armarx
-{
-    /**
-     * @class ViewSelectionApp
-     * @brief A brief description
-     *
-     * Detailed Description
-     */
-    class ViewSelectionApp :
-        virtual public armarx::Application
-    {
-        /**
-         * @see armarx::Application::setup()
-         */
-        void setup(const ManagedIceObjectRegistryInterfacePtr& registry,
-                   Ice::PropertiesPtr properties) override
-        {
-            registry->addObject(Component::create<ViewSelection>(properties));
-        }
-    };
-}
-
diff --git a/source/RobotAPI/applications/ViewSelection/main.cpp b/source/RobotAPI/applications/ViewSelection/main.cpp
deleted file mode 100644
index 01e91acc5..000000000
--- a/source/RobotAPI/applications/ViewSelection/main.cpp
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * Copyright (C) 2015-2016, High Performance Humanoid Technologies (H2T), Karlsruhe Institute of Technology (KIT), all rights reserved.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotComponents::application::ViewSelection
- * @author     David Schiebener (schiebener qt kit dot edu)
- * @date       2015
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include "ViewSelectionApp.h"
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    armarx::ApplicationPtr app = armarx::Application::createInstance < armarx::ViewSelectionApp > ();
-    app->setName("ViewSelection");
-
-    return app->main(argc, argv);
-}
diff --git a/source/RobotAPI/applications/XsensIMU/CMakeLists.txt b/source/RobotAPI/applications/XsensIMU/CMakeLists.txt
deleted file mode 100644
index 2289d9a8e..000000000
--- a/source/RobotAPI/applications/XsensIMU/CMakeLists.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-armarx_component_set_name("XsensIMUApp")
-
-set(COMPONENT_LIBS ArmarXCoreInterfaces ArmarXCore XsensIMU)
-
-set(EXE_SOURCE main.cpp)
-
-armarx_add_component_executable("${EXE_SOURCE}")
diff --git a/source/RobotAPI/applications/XsensIMU/main.cpp b/source/RobotAPI/applications/XsensIMU/main.cpp
deleted file mode 100644
index 2b5d6083b..000000000
--- a/source/RobotAPI/applications/XsensIMU/main.cpp
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * This file is part of ArmarX.
- *
- * Copyright (C) 2012-2016, High Performance Humanoid Technologies (H2T), Karlsruhe Institute of Technology (KIT), all rights reserved.
- *
- * ArmarX is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * ArmarX is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * @package    RobotAPI::application::XsensIMU
- * @author     Markus Grotz ( markus-grotz at web dot de )
- * @date       2015
- * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
- *             GNU General Public License
- */
-
-#include <RobotAPI/drivers/XsensIMU/XsensIMU.h>
-
-#include <ArmarXCore/core/application/Application.h>
-#include <ArmarXCore/core/Component.h>
-#include <ArmarXCore/core/logging/Logging.h>
-
-int main(int argc, char* argv[])
-{
-    return armarx::runSimpleComponentApp<armarx::XsensIMU>(argc, argv, "XsensIMU");
-}
diff --git a/source/RobotAPI/components/ArMemGlobalStorage/CMakeLists.txt b/source/RobotAPI/components/ArMemGlobalStorage/CMakeLists.txt
index 0ba200662..768ddea4f 100644
--- a/source/RobotAPI/components/ArMemGlobalStorage/CMakeLists.txt
+++ b/source/RobotAPI/components/ArMemGlobalStorage/CMakeLists.txt
@@ -14,3 +14,5 @@ armarx_add_component("${SOURCES}" "${HEADERS}")
 
 # add unit tests
 add_subdirectory(test)
+
+armarx_generate_and_add_component_executable(APPLICATION_APP_SUFFIX)
diff --git a/source/RobotAPI/components/CyberGloveObserver/CMakeLists.txt b/source/RobotAPI/components/CyberGloveObserver/CMakeLists.txt
index 10645a37c..1027e5985 100644
--- a/source/RobotAPI/components/CyberGloveObserver/CMakeLists.txt
+++ b/source/RobotAPI/components/CyberGloveObserver/CMakeLists.txt
@@ -3,3 +3,5 @@ set(COMPONENT_LIBS ArmarXCore RobotAPICore ArmarXCoreObservers)
 set(SOURCES CyberGloveObserver.cpp)
 set(HEADERS CyberGloveObserver.h)
 armarx_add_component("${SOURCES}" "${HEADERS}")
+
+armarx_generate_and_add_component_executable(APPLICATION_APP_SUFFIX)
diff --git a/source/RobotAPI/components/DummyTextToSpeech/CMakeLists.txt b/source/RobotAPI/components/DummyTextToSpeech/CMakeLists.txt
index b8f01d786..06e452e55 100644
--- a/source/RobotAPI/components/DummyTextToSpeech/CMakeLists.txt
+++ b/source/RobotAPI/components/DummyTextToSpeech/CMakeLists.txt
@@ -6,3 +6,5 @@ armarx_add_component("${SOURCES}" "${HEADERS}")
 
 # add unit tests
 add_subdirectory(test)
+
+armarx_generate_and_add_component_executable(APPLICATION_APP_SUFFIX)
diff --git a/source/RobotAPI/components/DynamicObstacleManager/CMakeLists.txt b/source/RobotAPI/components/DynamicObstacleManager/CMakeLists.txt
index e76f315c6..7136f05db 100644
--- a/source/RobotAPI/components/DynamicObstacleManager/CMakeLists.txt
+++ b/source/RobotAPI/components/DynamicObstacleManager/CMakeLists.txt
@@ -41,3 +41,5 @@ set(HEADERS
 
 armarx_add_component("${SOURCES}" "${HEADERS}")
 
+armarx_generate_and_add_component_executable()
+
diff --git a/source/RobotAPI/components/FrameTracking/CMakeLists.txt b/source/RobotAPI/components/FrameTracking/CMakeLists.txt
index edc0c7094..ee7ca06b7 100644
--- a/source/RobotAPI/components/FrameTracking/CMakeLists.txt
+++ b/source/RobotAPI/components/FrameTracking/CMakeLists.txt
@@ -9,3 +9,5 @@ armarx_add_component("${SOURCES}" "${HEADERS}")
 
 # add unit tests
 add_subdirectory(test)
+
+armarx_generate_and_add_component_executable(APPLICATION_APP_SUFFIX)
diff --git a/source/RobotAPI/components/GamepadControlUnit/CMakeLists.txt b/source/RobotAPI/components/GamepadControlUnit/CMakeLists.txt
index 54a4ca048..c3b764a15 100644
--- a/source/RobotAPI/components/GamepadControlUnit/CMakeLists.txt
+++ b/source/RobotAPI/components/GamepadControlUnit/CMakeLists.txt
@@ -9,3 +9,5 @@ armarx_add_component("${SOURCES}" "${HEADERS}")
 
 # add unit tests
 add_subdirectory(test)
+
+armarx_generate_and_add_component_executable(APPLICATION_APP_SUFFIX)
diff --git a/source/RobotAPI/components/KITHandUnit/CMakeLists.txt b/source/RobotAPI/components/KITHandUnit/CMakeLists.txt
index 31d10218c..b272a6b26 100644
--- a/source/RobotAPI/components/KITHandUnit/CMakeLists.txt
+++ b/source/RobotAPI/components/KITHandUnit/CMakeLists.txt
@@ -17,3 +17,5 @@ armarx_add_component("${SOURCES}" "${HEADERS}")
 
 # add unit tests
 add_subdirectory(test)
+
+armarx_generate_and_add_component_executable(APPLICATION_APP_SUFFIX)
diff --git a/source/RobotAPI/components/KITProstheticHandUnit/CMakeLists.txt b/source/RobotAPI/components/KITProstheticHandUnit/CMakeLists.txt
index 2232317e1..92bc44f64 100644
--- a/source/RobotAPI/components/KITProstheticHandUnit/CMakeLists.txt
+++ b/source/RobotAPI/components/KITProstheticHandUnit/CMakeLists.txt
@@ -15,3 +15,5 @@ armarx_add_component("${SOURCES}" "${HEADERS}")
 
 # add unit tests
 add_subdirectory(test)
+
+armarx_generate_and_add_component_executable(APPLICATION_APP_SUFFIX)
diff --git a/source/RobotAPI/components/MultiHandUnit/CMakeLists.txt b/source/RobotAPI/components/MultiHandUnit/CMakeLists.txt
index 517efc0f0..1118d00fc 100644
--- a/source/RobotAPI/components/MultiHandUnit/CMakeLists.txt
+++ b/source/RobotAPI/components/MultiHandUnit/CMakeLists.txt
@@ -9,3 +9,5 @@ armarx_add_component("${SOURCES}" "${HEADERS}")
 
 # add unit tests
 add_subdirectory(test)
+
+armarx_generate_and_add_component_executable(APPLICATION_APP_SUFFIX)
diff --git a/source/RobotAPI/components/NaturalIKTest/CMakeLists.txt b/source/RobotAPI/components/NaturalIKTest/CMakeLists.txt
index 262dc18e4..dcf81778c 100644
--- a/source/RobotAPI/components/NaturalIKTest/CMakeLists.txt
+++ b/source/RobotAPI/components/NaturalIKTest/CMakeLists.txt
@@ -17,3 +17,5 @@ armarx_add_component("${SOURCES}" "${HEADERS}")
 
 # add unit tests
 add_subdirectory(test)
+
+armarx_generate_and_add_component_executable(COMPONENT_NAME NaturalIKTest APPLICATION_APP_SUFFIX)
diff --git a/source/RobotAPI/components/RobotHealth/CMakeLists.txt b/source/RobotAPI/components/RobotHealth/CMakeLists.txt
index 7de0817d3..065edb26d 100644
--- a/source/RobotAPI/components/RobotHealth/CMakeLists.txt
+++ b/source/RobotAPI/components/RobotHealth/CMakeLists.txt
@@ -13,3 +13,8 @@ armarx_find_qt_base("QtCore;QtGui;QtOpenGL;QtXml;QtScript;QtDesigner" REQUIRED)
 armarx_find_qt(Script)
 
 armarx_add_component("${SOURCES}" "${HEADERS}")
+
+armarx_generate_and_add_component_executable(APPLICATION_APP_SUFFIX)
+armarx_generate_and_add_component_executable(
+    COMPONENT_NAME       RobotHealthDummy
+    APPLICATION_APP_SUFFIX)
diff --git a/source/RobotAPI/components/RobotNameService/CMakeLists.txt b/source/RobotAPI/components/RobotNameService/CMakeLists.txt
index 3a7f08440..1205ad25b 100644
--- a/source/RobotAPI/components/RobotNameService/CMakeLists.txt
+++ b/source/RobotAPI/components/RobotNameService/CMakeLists.txt
@@ -6,3 +6,5 @@ armarx_add_component("${SOURCES}" "${HEADERS}")
 
 # add unit tests
 add_subdirectory(test)
+
+armarx_generate_and_add_component_executable(APPLICATION_APP_SUFFIX)
diff --git a/source/RobotAPI/components/StatechartExecutorExample/CMakeLists.txt b/source/RobotAPI/components/StatechartExecutorExample/CMakeLists.txt
index 7956e73c4..46da61e1d 100644
--- a/source/RobotAPI/components/StatechartExecutorExample/CMakeLists.txt
+++ b/source/RobotAPI/components/StatechartExecutorExample/CMakeLists.txt
@@ -13,3 +13,4 @@ set(HEADERS StatechartExecutorExample.h)
 
 armarx_add_component("${SOURCES}" "${HEADERS}")
 
+armarx_generate_and_add_component_executable(APPLICATION_APP_SUFFIX)
diff --git a/source/RobotAPI/components/ViewSelection/CMakeLists.txt b/source/RobotAPI/components/ViewSelection/CMakeLists.txt
index ecad234c2..9fece3cd9 100644
--- a/source/RobotAPI/components/ViewSelection/CMakeLists.txt
+++ b/source/RobotAPI/components/ViewSelection/CMakeLists.txt
@@ -10,3 +10,4 @@ set(HEADERS ViewSelection.h)
 
 armarx_add_component("${SOURCES}" "${HEADERS}")
 
+armarx_generate_and_add_component_executable(APPLICATION_APP_SUFFIX)
diff --git a/source/RobotAPI/components/units/CMakeLists.txt b/source/RobotAPI/components/units/CMakeLists.txt
index 430741e73..51d1930b8 100644
--- a/source/RobotAPI/components/units/CMakeLists.txt
+++ b/source/RobotAPI/components/units/CMakeLists.txt
@@ -77,3 +77,21 @@ armarx_add_library("${LIB_NAME}"  "${LIB_FILES}" "${LIB_HEADERS}" "${LIBS}")
 add_subdirectory(ObstacleAvoidingPlatformUnit)
 add_subdirectory(relays)
 add_subdirectory(RobotUnit)
+
+armarx_generate_and_add_component_executable(COMPONENT_NAME ForceTorqueObserver                                     )
+armarx_generate_and_add_component_executable(COMPONENT_NAME ForceTorqueUnitSimulation                               )
+armarx_generate_and_add_component_executable(COMPONENT_NAME GamepadUnitObserver               APPLICATION_APP_SUFFIX)
+armarx_generate_and_add_component_executable(COMPONENT_NAME GraspCandidateObserver            APPLICATION_APP_SUFFIX)
+armarx_generate_and_add_component_executable(COMPONENT_NAME HandUnitSimulation                                      )
+armarx_generate_and_add_component_executable(COMPONENT_NAME HapticObserver                    APPLICATION_APP_SUFFIX)
+armarx_generate_and_add_component_executable(COMPONENT_NAME HeadIKUnit                                              )
+armarx_generate_and_add_component_executable(COMPONENT_NAME InertialMeasurementUnitObserver   APPLICATION_APP_SUFFIX)
+armarx_generate_and_add_component_executable(COMPONENT_NAME KinematicUnitObserver                                   )
+armarx_generate_and_add_component_executable(COMPONENT_NAME KinematicUnitSimulation                                 )
+armarx_generate_and_add_component_executable(COMPONENT_NAME LaserScannerUnitObserver          APPLICATION_APP_SUFFIX)
+armarx_generate_and_add_component_executable(COMPONENT_NAME MetaWearIMUObserver               APPLICATION_APP_SUFFIX)
+armarx_generate_and_add_component_executable(COMPONENT_NAME SpeechObserver                    APPLICATION_APP_SUFFIX)
+armarx_generate_and_add_component_executable(COMPONENT_NAME PlatformUnitSimulation                                  )
+armarx_generate_and_add_component_executable(COMPONENT_NAME PlatformUnitObserver                                    )
+armarx_generate_and_add_component_executable(COMPONENT_NAME OrientedTactileSensorUnitObserver APPLICATION_APP_SUFFIX)
+armarx_generate_and_add_component_executable(COMPONENT_NAME OptoForceUnitObserver             APPLICATION_APP_SUFFIX)
diff --git a/source/RobotAPI/drivers/GamepadUnit/CMakeLists.txt b/source/RobotAPI/drivers/GamepadUnit/CMakeLists.txt
index 26d2a25a6..dd8ee4c48 100644
--- a/source/RobotAPI/drivers/GamepadUnit/CMakeLists.txt
+++ b/source/RobotAPI/drivers/GamepadUnit/CMakeLists.txt
@@ -9,3 +9,5 @@ armarx_add_component("${SOURCES}" "${HEADERS}")
 
 # add unit tests
 add_subdirectory(test)
+
+armarx_generate_and_add_component_executable(APPLICATION_APP_SUFFIX)
diff --git a/source/RobotAPI/drivers/HokuyoLaserUnit/CMakeLists.txt b/source/RobotAPI/drivers/HokuyoLaserUnit/CMakeLists.txt
index fca70b9a3..2edd677f1 100644
--- a/source/RobotAPI/drivers/HokuyoLaserUnit/CMakeLists.txt
+++ b/source/RobotAPI/drivers/HokuyoLaserUnit/CMakeLists.txt
@@ -14,3 +14,5 @@ armarx_add_component("${SOURCES}" "${HEADERS}")
 
 # add unit tests
 add_subdirectory(test)
+
+armarx_generate_and_add_component_executable(APPLICATION_APP_SUFFIX)
diff --git a/source/RobotAPI/drivers/MetaWearIMU/CMakeLists.txt b/source/RobotAPI/drivers/MetaWearIMU/CMakeLists.txt
index 958bc4a7e..974366720 100644
--- a/source/RobotAPI/drivers/MetaWearIMU/CMakeLists.txt
+++ b/source/RobotAPI/drivers/MetaWearIMU/CMakeLists.txt
@@ -7,3 +7,4 @@ set(HEADERS MetaWearIMU.h)
 
 armarx_add_component("${SOURCES}" "${HEADERS}")
 
+armarx_generate_and_add_component_executable(APPLICATION_APP_SUFFIX)
diff --git a/source/RobotAPI/drivers/OptoForceUnit/CMakeLists.txt b/source/RobotAPI/drivers/OptoForceUnit/CMakeLists.txt
index 9fec62057..24b5942e6 100644
--- a/source/RobotAPI/drivers/OptoForceUnit/CMakeLists.txt
+++ b/source/RobotAPI/drivers/OptoForceUnit/CMakeLists.txt
@@ -15,3 +15,5 @@ if(OptoForceOMD_FOUND)
 endif()
 # add unit tests
 add_subdirectory(test)
+
+armarx_generate_and_add_component_executable(APPLICATION_APP_SUFFIX)
diff --git a/source/RobotAPI/drivers/OrientedTactileSensor/CMakeLists.txt b/source/RobotAPI/drivers/OrientedTactileSensor/CMakeLists.txt
index 8db77f687..3c8064670 100644
--- a/source/RobotAPI/drivers/OrientedTactileSensor/CMakeLists.txt
+++ b/source/RobotAPI/drivers/OrientedTactileSensor/CMakeLists.txt
@@ -7,3 +7,5 @@ set(LIB_FILES OrientedTactileSensorUnit.cpp)
 set(LIB_HEADERS OrientedTactileSensorUnit.h)
 
 armarx_add_library("${LIB_NAME}"  "${LIB_FILES}" "${LIB_HEADERS}" "${LIBS}")
+
+armarx_generate_and_add_component_executable(COMPONENT_NAME OrientedTactileSensorUnit APPLICATION_APP_SUFFIX)
diff --git a/source/RobotAPI/drivers/XsensIMU/CMakeLists.txt b/source/RobotAPI/drivers/XsensIMU/CMakeLists.txt
index 36af4d9c6..ec20cb890 100644
--- a/source/RobotAPI/drivers/XsensIMU/CMakeLists.txt
+++ b/source/RobotAPI/drivers/XsensIMU/CMakeLists.txt
@@ -8,3 +8,5 @@ set(HEADERS XsensIMU.h)
 armarx_add_component("${SOURCES}" "${HEADERS}")
 
 add_subdirectory(IMU)
+
+armarx_generate_and_add_component_executable(APPLICATION_APP_SUFFIX)
diff --git a/source/RobotAPI/statecharts/operations/CMakeLists.txt b/source/RobotAPI/statecharts/operations/CMakeLists.txt
index d9de1b3d0..4c5dbf0b7 100644
--- a/source/RobotAPI/statecharts/operations/CMakeLists.txt
+++ b/source/RobotAPI/statecharts/operations/CMakeLists.txt
@@ -8,3 +8,5 @@ set(LIB_FILES RobotControl.cpp)
 set(LIB_HEADERS RobotControl.h)
 
 armarx_add_library("${LIB_NAME}"  "${LIB_FILES}" "${LIB_HEADERS}" "${LIBS}")
+
+armarx_generate_and_add_component_executable(COMPONENT_NAME RobotControl)
-- 
GitLab