diff options
Diffstat (limited to 'extern/mantaflow/CMakeLists.txt')
-rw-r--r-- | extern/mantaflow/CMakeLists.txt | 72 |
1 files changed, 56 insertions, 16 deletions
diff --git a/extern/mantaflow/CMakeLists.txt b/extern/mantaflow/CMakeLists.txt index bdee06349d2..9f66b42c6bf 100644 --- a/extern/mantaflow/CMakeLists.txt +++ b/extern/mantaflow/CMakeLists.txt @@ -31,19 +31,32 @@ if(MSVC_CLANG AND WITH_OPENMP AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS "9.0.1 remove_cc_flag("-fopenmp") endif() -set(MANTAVERSION "0.12") +set(MANTAVERSION "0.13") add_definitions(-DWITH_FLUID=1) -set(MANTA_DEP - dependencies -) +# Compile Mantaflow dependencies too (e.g. cnpy for numpy file IO). +# Make sure that dependencies exist before enabling this option by updating the source files in extern/ +set(WITH_MANTA_DEPENDENCIES 0) + +# Enable Mantaflow numpy support +set(WITH_MANTA_NUMPY 0) + +if(NOT WITH_MANTA_DEPENDENCIES) + add_definitions(-DNO_CNPY=1) +endif() + set(MANTA_HLP helper ) set(MANTA_PP preprocessed ) +if(WITH_MANTA_DEPENDENCIES) + set(MANTA_DEP + dependencies + ) +endif() if(WITH_TBB) add_definitions(-DTBB=1) @@ -54,10 +67,18 @@ if(WITH_OPENVDB) add_definitions(-DOPENVDB_STATICLIB) endif() +if(WITH_OPENVDB_BLOSC) + add_definitions(-DOPENVDB_BLOSC=1) +endif() + if(WIN32) add_definitions(-D_USE_MATH_DEFINES) endif() +if(WITH_MANTA_NUMPY AND WITH_PYTHON_INSTALL_NUMPY) + add_definitions(-DNUMPY=1) +endif() + set(INC ${MANTA_PP} ${MANTA_PP}/fileio @@ -65,14 +86,25 @@ set(INC ${MANTA_PP}/plugin ${MANTA_HLP}/pwrapper ${MANTA_HLP}/util - ${MANTA_DEP}/cnpy ) +if(WITH_MANTA_DEPENDENCIES) + list(APPEND INC + ${MANTA_DEP}/cnpy + ) +endif() + set(INC_SYS ${PYTHON_INCLUDE_DIRS} ${ZLIB_INCLUDE_DIRS} ) +if(WITH_MANTA_NUMPY AND WITH_PYTHON_INSTALL_NUMPY) + list(APPEND INC_SYS + ${PYTHON_NUMPY_INCLUDE_DIRS} + ) +endif() + if(WITH_TBB) list(APPEND INC_SYS ${TBB_INCLUDE_DIRS} @@ -92,9 +124,6 @@ if(WITH_OPENVDB) endif() set(SRC - ${MANTA_DEP}/cnpy/cnpy.cpp - ${MANTA_DEP}/cnpy/cnpy.h - ${MANTA_PP}/commonkernels.h ${MANTA_PP}/commonkernels.h.reg.cpp ${MANTA_PP}/conjugategrad.cpp @@ -106,10 +135,12 @@ set(SRC ${MANTA_PP}/fastmarch.cpp ${MANTA_PP}/fastmarch.h ${MANTA_PP}/fastmarch.h.reg.cpp - ${MANTA_PP}/fileio/ioutil.cpp ${MANTA_PP}/fileio/iogrids.cpp ${MANTA_PP}/fileio/iomeshes.cpp ${MANTA_PP}/fileio/ioparticles.cpp + ${MANTA_PP}/fileio/ioutil.cpp + ${MANTA_PP}/fileio/iovdb.cpp + ${MANTA_PP}/fileio/mantaio.cpp ${MANTA_PP}/fileio/mantaio.h ${MANTA_PP}/fileio/mantaio.h.reg.cpp ${MANTA_PP}/fluidsolver.cpp @@ -155,14 +186,10 @@ set(SRC ${MANTA_PP}/plugin/initplugins.cpp ${MANTA_PP}/plugin/kepsilon.cpp ${MANTA_PP}/plugin/meshplugins.cpp -# TODO (sebbas): add numpy to libraries -# ${MANTA_PP}/plugin/numpyconvert.cpp ${MANTA_PP}/plugin/pressure.cpp ${MANTA_PP}/plugin/ptsplugins.cpp ${MANTA_PP}/plugin/secondaryparticles.cpp ${MANTA_PP}/plugin/surfaceturbulence.cpp -# TODO (sebbas): add numpy to libraries -# ${MANTA_PP}/plugin/tfplugins.cpp ${MANTA_PP}/plugin/vortexplugins.cpp ${MANTA_PP}/plugin/waveletturbulence.cpp ${MANTA_PP}/plugin/waves.cpp @@ -187,9 +214,6 @@ set(SRC ${MANTA_PP}/vortexsheet.h.reg.cpp ${MANTA_HLP}/pwrapper/manta.h -# TODO (sebbas): add numpy to libraries -# ${MANTA_HLP}/pwrapper/numpyWrap.cpp -# ${MANTA_HLP}/pwrapper/numpyWrap.h ${MANTA_HLP}/pwrapper/pclass.cpp ${MANTA_HLP}/pwrapper/pclass.h ${MANTA_HLP}/pwrapper/pconvert.cpp @@ -215,6 +239,22 @@ set(SRC ${MANTA_HLP}/util/vectorbase.h ) +if(WITH_MANTA_DEPENDENCIES) + list(APPEND SRC + ${MANTA_DEP}/cnpy/cnpy.cpp + ${MANTA_DEP}/cnpy/cnpy.h + ) +endif() + +if(WITH_MANTA_NUMPY AND WITH_PYTHON_INSTALL_NUMPY) + list(APPEND SRC + ${MANTA_PP}/plugin/numpyconvert.cpp + ${MANTA_PP}/plugin/tfplugins.cpp + ${MANTA_HLP}/pwrapper/numpyWrap.cpp + ${MANTA_HLP}/pwrapper/numpyWrap.h + ) +endif() + set(LIB ${PYTHON_LINKFLAGS} ${PYTHON_LIBRARIES} |