diff options
-rw-r--r-- | tests/CMakeLists.txt | 18 | ||||
-rw-r--r-- | tests/FindGLEW.cmake | 93 |
2 files changed, 56 insertions, 55 deletions
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 87e5319..9f41682 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -289,8 +289,7 @@ if (NOT $ENV{GLEWDIR} STREQUAL "") elseif (NOT $ENV{OPENSCAD_LIBRARIES} STREQUAL "") set(GLEW_DIR "$ENV{OPENSCAD_LIBRARIES}") endif() -if (NOT GLEW_INCLUDE_DIR) - message(STATUS "OPENCSG_DIR: " ${OPENCSG_DIR}) +if (GLEW_DIR) find_path(GLEW_INCLUDE_DIR GL/glew.h HINTS ${GLEW_DIR}/include @@ -299,14 +298,15 @@ if (NOT GLEW_INCLUDE_DIR) NAMES GLEW glew HINTS ${GLEW_DIR}/lib ${GLEW_DIR}/lib64 NO_DEFAULT_PATH) - if (NOT GLEW_LIBRARY) - find_package(GLEW REQUIRED) - if (NOT GLEW_LIBRARY) - message(FATAL_ERROR "GLEW not found") - endif() + if (GLEW_INCLUDE_DIR AND GLEW_LIBRARY) + message(STATUS "GLEW include: " ${GLEW_INCLUDE_DIR}) + message(STATUS "GLEW library: " ${GLEW_LIBRARY}) + set(GLEW_FOUND 1) endif() - message(STATUS "GLEW include: " ${GLEW_INCLUDE_DIR}) - message(STATUS "GLEW library: " ${GLEW_LIBRARY}) +endif() + +if (NOT GLEW_FOUND) + find_package(GLEW REQUIRED) endif() inclusion(GLEW_DIR GLEW_INCLUDE_DIR) diff --git a/tests/FindGLEW.cmake b/tests/FindGLEW.cmake index 1d94ca2..f571fe2 100644 --- a/tests/FindGLEW.cmake +++ b/tests/FindGLEW.cmake @@ -10,56 +10,57 @@ # a few lines of this file are based on the LGPL code found at # http://openlibraries.org/browser/trunk/FindGLEW.cmake?rev=1383 -include(FindPkgConfig) +if (WIN32 AND MSVC) + if (WIN32_STATIC_BUILD) # passed from caller + set(GLEW_LIB_SEARCH_NAME glew32s.lib) # static, non-debug (Release) + else () + set(GLEW_LIB_SEARCH_NAME glew32.lib) # other. untested with OpenSCAD + endif() +else () # GCC + set(GLEW_LIB_SEARCH_NAME "libglew32s.a") +endif () -if (PKG_CONFIG_FOUND) - message("Doing pkg config glew check...") - pkg_check_modules(GLEW glew>=1.6) +if (WIN32) + find_path(GLEW_INCLUDE_DIR GL/glew.h + $ENV{PROGRAMFILES}/GLEW/include + ${PROJECT_SOURCE_DIR}/src/nvgl/glew/include + DOC "The directory where GL/glew.h resides") + find_library(GLEW_LIBRARY + NAMES ${GLEW_LIB_SEARCH_NAME} + PATHS + $ENV{PROGRAMFILES}/GLEW/lib + ${PROJECT_SOURCE_DIR}/src/nvgl/glew/bin + ${PROJECT_SOURCE_DIR}/src/nvgl/glew/lib + DOC "The GLEW library") +else() + find_path(GLEW_INCLUDE_DIR GL/glew.h + PATHS /usr/include /usr/local/include /usr/pkg/include + NO_DEFAULT_PATH + DOC "The directory where GL/glew.h resides") + find_library(GLEW_LIBRARY + NAMES GLEW glew + PATHS /usr/lib /usr/local/lib /usr/pkg/lib /lib /lib64 /usr/lib64 + NO_DEFAULT_PATH + DOC "The GLEW library") endif() -if (GLEW_LIBRARIES) - set(GLEW_INCLUDE_DIR "${GLEW_INCLUDE_DIRS}") - set(GLEW_LIBRARY ${GLEW_LDFLAGS}) +if (GLEW_INCLUDE_DIR AND GLEW_LIBRARY) + set(GLEW_FOUND 1 CACHE STRING "Set to 1 if GLEW is found, 0 otherwise") + message(STATUS "GLEW include found in " ${GLEW_INCLUDE_DIR} ) + message(STATUS "GLEW library found in " ${GLEW_LIBRARY} ) else() - if (WIN32 AND MSVC) - if (WIN32_STATIC_BUILD) # passed from caller - set(GLEW_LIB_SEARCH_NAME glew32s.lib) # static, non-debug (Release) - else () - set(GLEW_LIB_SEARCH_NAME glew32.lib) # other. untested with OpenSCAD - endif() - else () # GCC - set(GLEW_LIB_SEARCH_NAME "libglew32s.a") - endif () - - if (WIN32) - find_path(GLEW_INCLUDE_DIR GL/glew.h - $ENV{PROGRAMFILES}/GLEW/include - ${PROJECT_SOURCE_DIR}/src/nvgl/glew/include - DOC "The directory where GL/glew.h resides") - find_library(GLEW_LIBRARY - NAMES ${GLEW_LIB_SEARCH_NAME} - PATHS - $ENV{PROGRAMFILES}/GLEW/lib - ${PROJECT_SOURCE_DIR}/src/nvgl/glew/bin - ${PROJECT_SOURCE_DIR}/src/nvgl/glew/lib - DOC "The GLEW library") - else (WIN32) - find_path(GLEW_INCLUDE_DIR GL/glew.h - PATHS /usr/include /usr/local/include /usr/pkg/include - NO_DEFAULT_PATH - DOC "The directory where GL/glew.h resides") - find_library(GLEW_LIBRARY - NAMES GLEW glew - PATHS /usr/lib /usr/local/lib /usr/pkg/lib - NO_DEFAULT_PATH - DOC "The GLEW library") - endif (WIN32) + set(GLEW_FOUND 0 CACHE STRING "Set to 1 if GLEW is found, 0 otherwise") +endif() - if (GLEW_INCLUDE_DIR) - set(GLEW_FOUND 1 CACHE STRING "Set to 1 if GLEW is found, 0 otherwise") - message(STATUS "GLEW include found in " ${GLEW_INCLUDE_DIR} ) - message(STATUS "GLEW library found in " ${GLEW_LIBRARY} ) - else() - set(GLEW_FOUND 0 CACHE STRING "Set to 1 if GLEW is found, 0 otherwise") +if (NOT GLEW_FOUND) + message("Doing pkg config glew check...") + pkg_check_modules(GLEW glew>=1.6) + if (GLEW_FOUND) + set(GLEW_INCLUDE_DIR "${GLEW_INCLUDEDIR}") + set(GLEW_LIBRARY ${GLEW_LDFLAGS}) endif() endif() + +if (NOT GLEW_FOUND) + message(FATAL_ERROR "GLEW not found") +endif() |