+#
+# VoglProj QtCreator cmake source tag file.
+#
+project(VoglProj)
+cmake_minimum_required(VERSION 2.8)
+
+# List of file extensions that we search for.
+set(EXTLIST *.i *.sh *.inl *.inc *.txt *.vs *.vp *.frag *.vert *.py *.m *.c* *.h* *.S *.ui)
+
+# Vogl directories.
+set(VOGL_DIR
+ "${CMAKE_CURRENT_SOURCE_DIR}/../src"
+ "${CMAKE_CURRENT_SOURCE_DIR}/../bin"
+ "${CMAKE_CURRENT_SOURCE_DIR}/../glspec")
+
+message("VOGL_DIR is ${VOGL_DIR}")
+message("CMAKE_CURRENT_SOURCE_DIR: ${CMAKE_CURRENT_SOURCE_DIR}")
+
+add_definitions("-DVOGL_USE_LINUX_API=1")
+add_definitions("-DSDL_VIDEO_DRIVER_X11=1")
+add_definitions("-DSDL_VIDEO_DRIVER_X11_DYNAMIC")
+
+# Create list of vogl directories plus extensions.
+set(GLOBSPEC)
+foreach(dir ${VOGL_DIR})
+ foreach(ext ${EXTLIST})
+ list(APPEND GLOBSPEC ${dir}/${ext})
+ endforeach()
+endforeach()
+
+message("globspec is ${GLOBSPEC}")
+
+# Search for all the files.
+file(GLOB_RECURSE vogl_srcs
+ ${VOGL_DIR}
+ ${GLOBSPEC}
+ )
+
+# Macro to remove files based on regex pattern.
+macro(RemoveSrcFiles pat)
+ set(result)
+ foreach(file ${vogl_srcs})
+ if(file MATCHES ${pat})
+ else()
+ list(APPEND result ${file})
+ endif()
+ endforeach()
+ set(vogl_srcs ${result})
+endmacro()
+
+# Remove all files under .git and .hg directories.
+RemoveSrcFiles("/[.]git/")
+RemoveSrcFiles("/[.]hg/")
+
+#RemoveSrcFiles("/src/OGLSuperBible/")
+#RemoveSrcFiles("/src/OGLSamples_GTruc/")
+#RemoveSrcFiles(".~")
+
+# Spew out all files we've found.
+set(dir_list "")
+set(count 0)
+foreach(file ${vogl_srcs})
+ message("${file}")
+ math(EXPR count "${count} + 1")
+ GET_FILENAME_COMPONENT(dir_path ${file} PATH)
+ SET(dir_list ${dir_list} ${dir_path})
+endforeach()
+
+list(REMOVE_DUPLICATES dir_list)
+include_directories(${dir_list})
+
+message("${count} files added.\n")
+
+add_executable(VoglProj ${vogl_srcs})
+set_target_properties(VoglProj PROPERTIES LINKER_LANGUAGE CXX)
+