ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/branches/development/cmake/modules/FindQhull.cmake
Revision: 1704
Committed: Tue Apr 24 20:40:04 2012 UTC (13 years ago) by gezelter
File size: 3034 byte(s)
Log Message:
qhull modifications for compilation 


File Contents

# Content
1 ###############################################################################
2 # Find QHULL
3 #
4 # This sets the following variables:
5 # QHULL_FOUND - True if QHULL was found.
6 # QHULL_INCLUDE_DIRS - Directories containing the QHULL include files.
7 # QHULL_LIBRARIES - Libraries needed to use QHULL.
8 # QHULL_DEFINITIONS - Compiler flags for QHULL.
9 # If QHULL_USE_STATIC is specified then look for static libraries ONLY else
10 # look for shared ones
11
12 set(QHULL_MAJOR_VERSION 6)
13
14 if(QHULL_USE_STATIC)
15 set(QHULL_RELEASE_NAME qhullstatic)
16 set(QHULL_DEBUG_NAME qhullstatic_d)
17 else(QHULL_USE_STATIC)
18 set(QHULL_RELEASE_NAME qhull qhull${QHULL_MAJOR_VERSION})
19 set(QHULL_DEBUG_NAME qhull_d qhull${QHULL_MAJOR_VERSION}_d qhull_d${QHULL_MAJOR_VERSION})
20 endif(QHULL_USE_STATIC)
21
22
23 find_file(QHULL_HEADER
24 NAMES libqhull/libqhull.h qhull.h
25 HINTS "${QHULL_ROOT}" "$ENV{QHULL_ROOT}" "${QHULL_INCLUDE_DIR}"
26 PATHS "$ENV{PROGRAMFILES}/QHull" "$ENV{PROGRAMW6432}/QHull"
27 PATH_SUFFIXES qhull src/libqhull libqhull include)
28
29 set(QHULL_HEADER "${QHULL_HEADER}" CACHE INTERNAL "QHull header" FORCE )
30
31 if(QHULL_HEADER)
32 get_filename_component(qhull_header ${QHULL_HEADER} NAME_WE)
33 if("${qhull_header}" STREQUAL "qhull")
34 set(HAVE_QHULL_2011 OFF)
35 get_filename_component(QHULL_INCLUDE_DIR ${QHULL_HEADER} PATH)
36 elseif("${qhull_header}" STREQUAL "libqhull")
37 set(HAVE_QHULL_2011 ON)
38 get_filename_component(QHULL_INCLUDE_DIR ${QHULL_HEADER} PATH)
39 get_filename_component(QHULL_INCLUDE_DIR ${QHULL_INCLUDE_DIR} PATH)
40 endif()
41 else(QHULL_HEADER)
42 set(QHULL_INCLUDE_DIR "QHULL_INCLUDE_DIR-NOTFOUND")
43 endif(QHULL_HEADER)
44
45 set(QHULL_INCLUDE_DIR "${QHULL_INCLUDE_DIR}" CACHE PATH "QHull include dir." FORCE)
46
47 find_library(QHULL_LIBRARY
48 NAMES ${QHULL_RELEASE_NAME}
49 HINTS "${QHULL_ROOT}" "$ENV{QHULL_ROOT}"
50 PATHS "$ENV{PROGRAMFILES}/QHull" "$ENV{PROGRAMW6432}/QHull"
51 PATH_SUFFIXES project build bin lib)
52
53 find_library(QHULL_LIBRARY_DEBUG
54 NAMES ${QHULL_DEBUG_NAME} ${QHULL_RELEASE_NAME}
55 HINTS "${QHULL_ROOT}" "$ENV{QHULL_ROOT}"
56 PATHS "$ENV{PROGRAMFILES}/QHull" "$ENV{PROGRAMW6432}/QHull"
57 PATH_SUFFIXES project build bin lib)
58
59 if(NOT QHULL_LIBRARY_DEBUG)
60 set(QHULL_LIBRARY_DEBUG ${QHULL_LIBRARY})
61 endif(NOT QHULL_LIBRARY_DEBUG)
62
63 set(QHULL_INCLUDE_DIRS ${QHULL_INCLUDE_DIR})
64 set(QHULL_LIBRARIES optimized ${QHULL_LIBRARY} debug ${QHULL_LIBRARY_DEBUG})
65
66 include(FindPackageHandleStandardArgs)
67 find_package_handle_standard_args(Qhull DEFAULT_MSG QHULL_LIBRARY QHULL_INCLUDE_DIR)
68
69 mark_as_advanced(QHULL_LIBRARY QHULL_LIBRARY_DEBUG QHULL_INCLUDE_DIR)
70
71 if(QHULL_FOUND)
72 set(HAVE_QHULL ON)
73 if(NOT QHULL_USE_STATIC)
74 add_definitions("-Dqh_QHpointer")
75 if(MSVC)
76 add_definitions("-Dqh_QHpointer_dllimport")
77 endif(MSVC)
78 endif(NOT QHULL_USE_STATIC)
79 message(STATUS "QHULL found (include: ${QHULL_INCLUDE_DIRS}, lib: ${QHULL_LIBRARIES})")
80 endif(QHULL_FOUND)