Merge branch 'master' into blender2.8
[blender.git] / build_files / cmake / Modules / FindOpenVDB.cmake
1 # - Find OPENVDB library
2 # Find the native OPENVDB includes and library
3 # This module defines
4 #  OPENVDB_INCLUDE_DIRS, where to find openvdb.h, Set when
5 #                            OPENVDB_INCLUDE_DIR is found.
6 #  OPENVDB_LIBRARIES, libraries to link against to use OPENVDB.
7 #  OPENVDB_ROOT_DIR, The base directory to search for OPENVDB.
8 #                        This can also be an environment variable.
9 #  OPENVDB_FOUND, If false, do not try to use OPENVDB.
10 #
11 # also defined, but not for general use are
12 #  OPENVDB_LIBRARY, where to find the OPENVDB library.
13
14 #=============================================================================
15 # Copyright 2015 Blender Foundation.
16 #
17 # Distributed under the OSI-approved BSD License (the "License");
18 # see accompanying file Copyright.txt for details.
19 #
20 # This software is distributed WITHOUT ANY WARRANTY; without even the
21 # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
22 # See the License for more information.
23 #=============================================================================
24
25 # If OPENVDB_ROOT_DIR was defined in the environment, use it.
26 IF(NOT OPENVDB_ROOT_DIR AND NOT $ENV{OPENVDB_ROOT_DIR} STREQUAL "")
27   SET(OPENVDB_ROOT_DIR $ENV{OPENVDB_ROOT_DIR})
28 ENDIF()
29
30 SET(_openvdb_SEARCH_DIRS
31   ${OPENVDB_ROOT_DIR}
32   /usr/local
33   /sw # Fink
34   /opt/local # DarwinPorts
35   /opt/openvdb
36   /opt/lib/openvdb
37 )
38
39 FIND_PATH(OPENVDB_INCLUDE_DIR
40   NAMES
41     openvdb/openvdb.h
42   HINTS
43     ${_openvdb_SEARCH_DIRS}
44   PATH_SUFFIXES
45     include
46 )
47
48 FIND_LIBRARY(OPENVDB_LIBRARY
49   NAMES
50     openvdb
51   HINTS
52     ${_openvdb_SEARCH_DIRS}
53   PATH_SUFFIXES
54     lib64 lib
55 )
56
57 # handle the QUIETLY and REQUIRED arguments and set OPENVDB_FOUND to TRUE if
58 # all listed variables are TRUE
59 INCLUDE(FindPackageHandleStandardArgs)
60 FIND_PACKAGE_HANDLE_STANDARD_ARGS(OPENVDB DEFAULT_MSG
61     OPENVDB_LIBRARY OPENVDB_INCLUDE_DIR)
62
63 IF(OPENVDB_FOUND)
64   SET(OPENVDB_LIBRARIES ${OPENVDB_LIBRARY})
65   SET(OPENVDB_INCLUDE_DIRS ${OPENVDB_INCLUDE_DIR})
66 ENDIF(OPENVDB_FOUND)
67
68 MARK_AS_ADVANCED(
69   OPENVDB_INCLUDE_DIR
70   OPENVDB_LIBRARY
71 )
72
73 UNSET(_openvdb_SEARCH_DIRS)