diff --git a/CMakeLists.txt b/CMakeLists.txt
index 96009264576ab2eeab2280c8a049814d48c9bd93..de1c33a3ddb234071603bf5b7f4c36b6524a3f90 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -10,6 +10,23 @@ project(libcaosdb
 set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH})
 set(PROJECT_INCLUDE_DIR "${PROJECT_SOURCE_DIR}/include")
 
+find_program(iwyu NAMES include-what-you-use iwyu PATHS ${CMAKE_SOURCE_DIR}/tools/include-what-you-use/${iwyu_os}/bin)
+if(NOT iwyu)
+    message(STATUS "include-what-you-use: Not found")
+else()
+    message(STATUS "include-what-you-use: ${iwyu}")
+    set(CMAKE_C_INCLUDE_WHAT_YOU_USE ${iwyu})
+endif()
+
+find_program(clang_tidy NAMES clang-tidy clang-tidy-3.8)
+if(NOT clang_tidy)
+    message(STATUS "clang-tidy: Not found")
+else()
+    message(STATUS "clang-tidy: ${clang_tidy}")
+    set(CMAKE_C_CLANG_TIDY "${clang_tidy}" "--header-filter=." "--checks=*" "--warnings-as-errors=*")
+    set(CMAKE_CXX_CLANG_TIDY "${clang_tidy}" "--header-filter=." "--checks=*" "--warnings-as-errors=*")
+endif()
+
 add_subdirectory(src)
 add_subdirectory(include)
 add_subdirectory(doc)
@@ -17,6 +34,7 @@ add_subdirectory(doc)
 add_library(libcaosdb STATIC ${libcaosdb_INCL} ${libcaosdb_SRC})
 add_executable(caosdbcli src/caosdbcli.c)
 target_link_libraries(caosdbcli libcaosdb)
+#set_target_properties(caosdbcli libcaosdb PROPERTIES C_CLANG_TIDY "${DO_CLANG_TIDY}")
 
 if("${CMAKE_BUILD_TYPE}" MATCHES "Debug")
     target_link_libraries(libcaosdb gcov)