diff --git a/CMakeLists.txt b/CMakeLists.txt
index e00f04d3..4692ebb2 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -88,7 +88,10 @@ configure_file(taglib/taglib_config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/taglib_c
 
 add_subdirectory(taglib) 
 add_subdirectory(bindings)
-add_subdirectory(tests)
+if(BUILD_TESTS)
+    enable_testing()
+    add_subdirectory(tests)
+endif(BUILD_TESTS)
 add_subdirectory(examples)
 
 configure_file(${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.cmake ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile)
diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt
index 17d4bd6b..22f03d88 100644
--- a/examples/CMakeLists.txt
+++ b/examples/CMakeLists.txt
@@ -45,6 +45,12 @@ ADD_EXECUTABLE(strip-id3v1 strip-id3v1.cpp)
 
 TARGET_LINK_LIBRARIES(strip-id3v1  tag )
 
+INSTALL(TARGETS
+	tagreader tagreader_c tagwriter framelist strip-id3v1
+	LIBRARY DESTINATION ${LIB_INSTALL_DIR}
+	RUNTIME DESTINATION ${BIN_INSTALL_DIR}
+	ARCHIVE DESTINATION ${LIB_INSTALL_DIR}
+)
 
 endif(BUILD_EXAMPLES)
 
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index d916d10e..ed4eec0d 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -1,5 +1,3 @@
-if(BUILD_TESTS)
-
 INCLUDE_DIRECTORIES(
   ${CMAKE_CURRENT_SOURCE_DIR}/../taglib
   ${CMAKE_CURRENT_SOURCE_DIR}/../taglib/toolkit
@@ -66,8 +64,6 @@ SET(test_runner_SRCS
 ADD_EXECUTABLE(test_runner ${test_runner_SRCS})
 TARGET_LINK_LIBRARIES(test_runner tag ${CPPUNIT_LIBRARIES})
 
-ADD_CUSTOM_TARGET(check
-    ./test_runner
-    DEPENDS test_runner
-)
-endif(BUILD_TESTS)
+ADD_TEST(test_runner test_runner)
+ADD_CUSTOM_TARGET(check COMMAND ${CMAKE_CTEST_COMMAND} -V
+                  DEPENDS test_runner)