summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/CMakeLists.txt26
-rw-r--r--tests/FindGLEW.cmake94
2 files changed, 73 insertions, 47 deletions
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index 9803704..ad3eefe 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -229,10 +229,28 @@ 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})
+ find_path(GLEW_INCLUDE_DIR
+ GL/glew.h
+ HINTS ${GLEW_DIR}/include
+ NO_DEFAULT_PATH)
+ find_library(GLEW_LIBRARY
+ NAMES GLEW glew
+ HINTS ${GLEW_DIR}/lib
+ NO_DEFAULT_PATH)
+ if (NOT GLEW_INCLUDE_DIR OR NOT GLEW_LIBRARY)
+ find_package(GLEW REQUIRED)
+ if (NOT GLEW_INCLUDE_DIR OR NOT GLEW_LIBRARY)
+ message(FATAL_ERROR "GLEW not found")
+ endif()
+ else()
+ message(STATUS "GLEW include found in " ${GLEW_INCLUDE_DIR})
+ message(STATUS "GLEW library found in " ${GLEW_LIBRARY})
+ endif()
+endif()
-find_package(GLEW REQUIRED)
-
-inclusion( GLEW_DIR GLEW_INCLUDE_PATH )
+inclusion(GLEW_DIR GLEW_INCLUDE_DIR)
# Flex/Bison
find_package(BISON REQUIRED)
@@ -419,7 +437,7 @@ target_link_libraries(csgtexttest tests-common tests-nocgal ${QT_LIBRARIES} ${OP
# csgtermtest
#
add_executable(csgtermtest csgtermtest.cc ../src/CSGTermEvaluator.cc)
-target_link_libraries(csgtermtest tests-common tests-nocgal ${QT_LIBRARIES} ${OPENGL_LIBRARY} ${Boost_LIBRARIES})
+target_link_libraries(csgtermtest tests-nocgal ${QT_LIBRARIES} ${OPENGL_LIBRARY} ${Boost_LIBRARIES})
#
# cgaltest
diff --git a/tests/FindGLEW.cmake b/tests/FindGLEW.cmake
index 1b0cac4..b7e37d0 100644
--- a/tests/FindGLEW.cmake
+++ b/tests/FindGLEW.cmake
@@ -3,55 +3,63 @@
# Once done this will define
#
# GLEW_FOUND
-# GLEW_INCLUDE_PATH
+# GLEW_INCLUDE_DIR
# GLEW_LIBRARY
#
# 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.5)
+endif()
-IF (WIN32)
- FIND_PATH( GLEW_INCLUDE_PATH 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)
- message(STATUS "GLEW_DIR: " ${GLEW_DIR})
- FIND_PATH( GLEW_INCLUDE_PATH GL/glew.h
- HINTS ${GLEW_DIR}/include
- 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
- HINTS ${GLEW_DIR}/lib
- PATHS /usr/lib /usr/local/lib /usr/pkg/lib
- NO_DEFAULT_PATH
- DOC "The GLEW library")
-ENDIF (WIN32)
+if (GLEW_FOUND)
+ set(GLEW_INCLUDE_DIR ${GLEW_INCLUDE_DIRS})
+ set(GLEW_LIBRARY ${GLEW_LDFLAGS})
+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 (GLEW_INCLUDE_PATH)
- SET( GLEW_FOUND 1 CACHE STRING "Set to 1 if GLEW is found, 0 otherwise")
- MESSAGE(STATUS "GLEW include found in " ${GLEW_INCLUDE_PATH} )
- MESSAGE(STATUS "GLEW library found in " ${GLEW_LIBRARY} )
-ELSE (GLEW_INCLUDE_PATH)
- SET( GLEW_FOUND 0 CACHE STRING "Set to 1 if GLEW is found, 0 otherwise")
-ENDIF (GLEW_INCLUDE_PATH)
+ 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)
+
+ 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")
+ endif()
+endif() \ No newline at end of file
contact: Jan Huwald // Impressum