]> git.cworth.org Git - vogl/blobdiff - qtcreator/CMakeLists.txt
Add QtCreator tag file and readme
[vogl] / qtcreator / CMakeLists.txt
diff --git a/qtcreator/CMakeLists.txt b/qtcreator/CMakeLists.txt
new file mode 100644 (file)
index 0000000..1c49d31
--- /dev/null
@@ -0,0 +1,76 @@
+#
+# 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)
+