diff --git a/.gitignore b/.gitignore index c0147c79..56ed5b06 100644 --- a/.gitignore +++ b/.gitignore @@ -12,7 +12,8 @@ libs/**/*.a libs/**/*.cmake libs/**/bin libs/**/*.tcl -*.cmake +cmake_install.cmake +CMakeCache.txt bin/SHADERed bin/SHADERed.exe bin/log.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index b43fb84e..05a59f8e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,7 +1,7 @@ cmake_minimum_required(VERSION 3.1) project(SHADERed) -set(CMAKE_MODULE_PATH cmake) +set(CMAKE_MODULE_PATH "./cmake") set(CMAKE_RUNTIME_OUTPUT_DIRECTORY bin) # source code diff --git a/cmake/FindGLM.cmake b/cmake/FindGLM.cmake new file mode 100644 index 00000000..e2d45a89 --- /dev/null +++ b/cmake/FindGLM.cmake @@ -0,0 +1,52 @@ +# +# Find GLM +# +# Try to find GLM : OpenGL Mathematics. +# This module defines +# - GLM_INCLUDE_DIRS +# - GLM_FOUND +# +# The following variables can be set as arguments for the module. +# - GLM_ROOT_DIR : Root library directory of GLM +# +# References: +# - https://github.com/Groovounet/glm/blob/master/util/FindGLM.cmake +# - https://bitbucket.org/alfonse/gltut/src/28636298c1c0/glm-0.9.0.7/FindGLM.cmake +# + +# Additional modules +include(FindPackageHandleStandardArgs) + +if (WIN32) + # Find include files + find_path( + GLM_INCLUDE_DIR + NAMES glm/glm.hpp + PATHS + $ENV{PROGRAMFILES}/include + ${GLM_ROOT_DIR}/include + DOC "The directory where glm/glm.hpp resides") +else() + # Find include files + find_path( + GLM_INCLUDE_DIR + NAMES glm/glm.hpp + PATHS + /usr/include + /usr/local/include + /sw/include + /opt/local/include + ${GLM_ROOT_DIR}/include + DOC "The directory where glm/glm.hpp resides") +endif() + +# Handle REQUIRD argument, define *_FOUND variable +find_package_handle_standard_args(GLM DEFAULT_MSG GLM_INCLUDE_DIR) + +# Define GLM_INCLUDE_DIRS +if (GLM_FOUND) + set(GLM_INCLUDE_DIRS ${GLM_INCLUDE_DIR}) +endif() + +# Hide some variables +mark_as_advanced(GLM_INCLUDE_DIR)