a681d723b9c4f8c60f313d7e043f64b33f9d4e0c
[blender-staging.git] / intern / openvdb / CMakeLists.txt
1 # ***** BEGIN GPL LICENSE BLOCK *****
2 #
3 # This program is free software; you can redistribute it and/or
4 # modify it under the terms of the GNU General Public License
5 # as published by the Free Software Foundation; either version 2
6 # of the License, or (at your option) any later version.
7 #
8 # This program is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11 # GNU General Public License for more details.
12 #
13 # You should have received a copy of the GNU General Public License
14 # along with this program; if not, write to the Free Software Foundation,
15 # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
16 #
17 # The Original Code is Copyright (C) 2015, Blender Foundation
18 # All rights reserved.
19 # ***** END GPL LICENSE BLOCK *****
20
21 set(INC
22   .
23   intern
24   ../guardedalloc
25 )
26
27 set(INC_SYS
28 )
29
30 set(SRC
31   openvdb_capi.h
32 )
33
34 set(LIB
35 )
36
37 if(WITH_OPENVDB)
38   add_definitions(
39     -DWITH_OPENVDB
40     ${OPENVDB_DEFINITIONS}
41   )
42
43   if(WIN32)
44     add_definitions(
45       -DOPENVDB_STATICLIB
46       -D_USE_MATH_DEFINES
47     )
48   endif()
49
50   if(WITH_OPENVDB_3_ABI_COMPATIBLE)
51     add_definitions(
52       -DOPENVDB_3_ABI_COMPATIBLE
53     )
54   endif()
55
56   list(APPEND INC_SYS
57     ${BOOST_INCLUDE_DIR}
58     ${TBB_INCLUDE_DIRS}
59     ${OPENEXR_INCLUDE_DIRS}
60     ${OPENVDB_INCLUDE_DIRS}
61   )
62
63   list(APPEND SRC
64     intern/openvdb_dense_convert.cc
65     intern/openvdb_reader.cc
66     intern/openvdb_writer.cc
67     intern/openvdb_level_set.cc
68     intern/openvdb_transform.cc
69     openvdb_capi.cc
70     openvdb_util.cc
71
72     intern/openvdb_dense_convert.h
73     intern/openvdb_reader.h
74     intern/openvdb_writer.h
75     intern/openvdb_level_set.h
76     intern/openvdb_transform.h
77     openvdb_util.h
78   )
79
80   list(APPEND LIB
81     ${OPENVDB_LIBRARIES}
82     ${OPENEXR_LIBRARIES}
83     ${ZLIB_LIBRARIES}
84   )
85
86   if(WITH_OPENVDB_BLOSC)
87     add_definitions(
88       -DWITH_OPENVDB_BLOSC
89     )
90     list(APPEND LIB
91       ${BLOSC_LIBRARIES}
92       ${ZLIB_LIBRARIES}
93     )
94   endif()
95
96   list(APPEND LIB
97     ${BOOST_LIBRARIES}
98     ${TBB_LIBRARIES}
99   )
100 endif()
101
102 blender_add_lib(bf_intern_openvdb "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")