diff --git a/applications/demos/ssvep-mind-shooter/CMakeLists.txt b/applications/demos/ssvep-mind-shooter/CMakeLists.txt
index 734c5a983e7cec79eb8c2569a0044bca158ade77..16796a0a2490984ba22b629558a4d9fc6e3fd8ff 100644
--- a/applications/demos/ssvep-mind-shooter/CMakeLists.txt
+++ b/applications/demos/ssvep-mind-shooter/CMakeLists.txt
@@ -11,11 +11,11 @@ IF(NOT PATH_VRPN)
 	RETURN()
 ENDIF(NOT PATH_VRPN)
 
-INCLUDE("FindThirdPartyCEGUI")
-IF(NOT PATH_CEGUI)
+INCLUDE("FindThirdPartyCEGUI_Check")
+IF(NOT CEGUI_FOUND)
         MESSAGE(STATUS "    --> Not building ${PROJECT_NAME}")
         RETURN()
-ENDIF(NOT PATH_CEGUI)
+ENDIF(NOT CEGUI_FOUND)
 
 FILE(GLOB_RECURSE source_files src/*.cpp src/*.h src/*.inl)
 ADD_EXECUTABLE(${PROJECT_NAME} ${source_files})
diff --git a/cmake-modules/FindThirdPartyCEGUI_Check.cmake b/cmake-modules/FindThirdPartyCEGUI_Check.cmake
new file mode 100644
index 0000000000000000000000000000000000000000..70885f94804e53bb99bbaa76e57166405da1275b
--- /dev/null
+++ b/cmake-modules/FindThirdPartyCEGUI_Check.cmake
@@ -0,0 +1,41 @@
+# ---------------------------------
+# Finds CEGUI toolkit
+#
+# Sets CEGUI_FOUND
+# Sets CEGUI_LIBRARIES
+# Sets CEGUI_LIBRARY_DIRS
+# Sets CEGUI_LDFLAGS
+# Sets CEGUI_LDFLAGS_OTHERS
+# Sets CEGUI_INCLUDE_DIRS
+# Sets CEGUI_CFLAGS
+# Sets CEGUI_CFLAGS_OTHERS
+# ---------------------------------
+
+IF(OV_DISABLE_OGRE)
+	MESSAGE(STATUS "  SKIPPED Ogre3D/OIS (CEGUI), disabled, no 3D ...")
+	RETURN()
+ENDIF(OV_DISABLE_OGRE)
+
+IF(WIN32)
+	FIND_PATH(PATH_CEGUI cegui/include/CEGUI.h PATHS ${OV_CUSTOM_DEPENDENCIES_PATH}/cegui)
+	IF(PATH_CEGUI)
+		SET(CEGUI_FOUND TRUE)
+		SET(OgreCEGUIRenderer_FOUND TRUE)
+		SET(CEGUI_INCLUDE_DIRS ${PATH_CEGUI}/cegui/include)
+		SET(CEGUI_LIBRARIES_DEBUG CEGUIBase_d CEGUIOgreRenderer_d)
+		SET(CEGUI_LIBRARIES_RELEASE CEGUIBase CEGUIOgreRenderer)
+		SET(CEGUI_LIBRARY_DIRS ${PATH_CEGUI}/lib)
+	ENDIF(PATH_CEGUI)
+ENDIF(WIN32)
+
+IF(UNIX)
+	INCLUDE("FindThirdPartyPkgConfig")
+	pkg_check_modules(CEGUI CEGUI)
+	pkg_check_modules(OgreCEGUIRenderer CEGUI-OGRE)
+ENDIF(UNIX)
+
+IF(CEGUI_FOUND AND OgreCEGUIRenderer_FOUND)
+	MESSAGE(STATUS "  Found CEGUI/OgreCEGUIRenderer...")
+ELSE(CEGUI_FOUND AND OgreCEGUIRenderer_FOUND)
+	MESSAGE(STATUS "  FAILED to find CEGUI/OgreCEGUIRenderer...")
+ENDIF(CEGUI_FOUND AND OgreCEGUIRenderer_FOUND)