~ubuntu-branches/debian/jessie/yade/jessie

« back to all changes in this revision

Viewing changes to CMakeLists.txt

  • Committer: Package Import Robot
  • Author(s): Anton Gladky
  • Date: 2014-08-04 19:34:58 UTC
  • mfrom: (1.1.11)
  • Revision ID: package-import@ubuntu.com-20140804193458-cw8qhnujxe9wzi15
Tags: 1.11.0-1
* [a0600ae] Imported Upstream version 1.11.0
* [a3055e0] Do not use parallel build on kfreebsd-amd64 and s390x.
* [f86b405] Remove applied patches.

Show diffs side-by-side

added added

removed removed

Lines of Context:
14
14
#  ENABLE_GL2PS: enable GL2PS-option (ON by default)
15
15
#  ENABLE_LINSOLV: enable LINSOLV-option (ON by default)
16
16
#  ENABLE_PFVFLOW: enable PFVFLOW-option, FlowEngine (ON by default)
 
17
#  ENABLE_LBMFLOW: enable LBMFLOW-option, LBM_ENGINE (ON by default)
17
18
#  ENABLE_SPH: enable SPH-option, Smoothed Particle Hydrodynamics (OFF by default, experimental)
18
 
#  ENABLE_LBMFLOW: enable LBMFLOW-option, LBM_ENGINE (OFF by default)
19
19
#  ENABLE_LIQMIGRATION: enable LIQMIGRATION-option, see [Mani2013] for details (OFF by default)
20
20
#  ENABLE_MASK_ARBITRARY: enable MASK_ARBITRARY option (OFF by default)
21
21
#  runtimePREFIX: used for packaging, when install directory is not the same is runtime directory (/usr/local by default)
62
62
ENDIF()
63
63
 
64
64
#===========================================================
65
 
ADD_DEFINITIONS(" -DYADE_PTR_CAST=boost::static_pointer_cast -DYADE_CAST=static_cast ")
 
65
 
 
66
SET(CMAKE_CXX_FLAGS  "${CMAKE_CXX_FLAGS} -std=c++0x")
 
67
 
 
68
#===========================================================
 
69
 
66
70
IF (CMAKE_CXX_FLAGS)
67
71
  #If flags are set, add only neccessary flags
68
72
  IF (DEBUG)
124
128
OPTION(ENABLE_LINSOLV "Enable direct solver for the flow engines (experimental)" ${DEFAULT})
125
129
OPTION(ENABLE_PFVFLOW "Enable flow engine (experimental)" ${DEFAULT})
126
130
OPTION(ENABLE_SPH "Enable SPH" OFF)
127
 
OPTION(ENABLE_LBMFLOW "Enable LBM engine (very experimental)" OFF)
 
131
OPTION(ENABLE_LBMFLOW "Enable LBM engine (very experimental)" ON)
128
132
OPTION(ENABLE_LIQMIGRATION "Enable liquid control (very experimental), see [Mani2013] for details" OFF)
129
133
OPTION(ENABLE_MASK_ARBITRARY "Enable arbitrary precision of bitmask variables (only Body::groupMask yet implemented) (experimental). Use -DMASK_ARBITRARY_SIZE=int to set number of used bits (256 by default)" OFF)
130
134
 
134
138
  INCLUDE_DIRECTORIES(${EIGEN3_INCLUDE_DIR})
135
139
  MESSAGE(STATUS "Found Eigen3, version: ${EIGEN3_VERSION}")
136
140
  
137
 
  # Minimal recommended version 3.2.1
 
141
  # Minimal required version 3.2.1
138
142
  IF ((${EIGEN3_MAJOR_VERSION} LESS 2) OR ((${EIGEN3_MAJOR_VERSION} EQUAL 2) AND (${EIGEN3_MINOR_VERSION} LESS 1)))
139
 
    MESSAGE(WARNING "Minimal recommended Eigen3 version is 3.2.1")
 
143
    MESSAGE(FATAL_ERROR "Minimal required Eigen3 version is 3.2.1, please update Eigen3!")
140
144
  ENDIF ((${EIGEN3_MAJOR_VERSION} LESS 2) OR ((${EIGEN3_MAJOR_VERSION} EQUAL 2) AND (${EIGEN3_MINOR_VERSION} LESS 1)))
141
145
 
142
 
  SET(CONFIGURED_FEATS "${CONFIGURED_FEATS} Eigen3")
143
146
  IF (NOT VECTORIZE)
144
147
    MESSAGE(STATUS "Disable vectorization")
145
148
    ADD_DEFINITIONS("-DEIGEN_DONT_VECTORIZE -DEIGEN_DONT_ALIGN -DEIGEN_DISABLE_UNALIGNED_ARRAY_ASSERT")
264
267
 
265
268
    IF(ENABLE_PFVFLOW)
266
269
      SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DFLOW_ENGINE")
267
 
      SET(CONFIGURED_FEATS "${CONFIGURED_FEATS} PFVflow") 
 
270
      SET(CONFIGURED_FEATS "${CONFIGURED_FEATS} PFVFLOW")
268
271
    ELSE(ENABLE_PFVFLOW)
269
 
      SET(DISABLED_FEATS "${DISABLED_FEATS} PFVflow")
 
272
      SET(DISABLED_FEATS "${DISABLED_FEATS} PFVFLOW")
270
273
    ENDIF(ENABLE_PFVFLOW)
271
274
 
272
275
  ELSE(CGAL_FOUND AND GMP_FOUND AND (NOT("${CMAKE_CXX_COMPILER} ${CMAKE_CXX_COMPILER_ARG1}" MATCHES ".*clang")))
274
277
    SET(DISABLED_FEATS "${DISABLED_FEATS} CGAL")
275
278
    SET(ENABLE_CGAL OFF)
276
279
    IF(ENABLE_PFVFLOW)
277
 
      SET(DISABLED_FEATS "${DISABLED_FEATS} PFVflow")
 
280
      SET(DISABLED_FEATS "${DISABLED_FEATS} PFVFLOW")
278
281
      MESSAGE(STATUS "CGAL NOT found: PFVFLOW disabled")
279
282
    ENDIF(ENABLE_PFVFLOW)
280
283
 
294
297
    MESSAGE(STATUS "Found Cholmod")
295
298
    MESSAGE(STATUS "Found OpenBlas")
296
299
    MESSAGE(STATUS "Found Metis")
297
 
    SET(CONFIGURED_FEATS "${CONFIGURED_FEATS} LinSolv")
 
300
    SET(CONFIGURED_FEATS "${CONFIGURED_FEATS} LINSOLV")
298
301
  ELSE(CHOLMOD_FOUND AND OPENBLAS_FOUND AND METIS_FOUND)
299
302
    MESSAGE(STATUS "Missing dependency for LINSOLV, disabled")
300
 
    SET(DISABLED_FEATS "${DISABLED_FEATS} LinSolv")
 
303
    SET(DISABLED_FEATS "${DISABLED_FEATS} LINSOLV")
301
304
    SET(ENABLE_LINSOLV OFF)
302
305
  ENDIF(CHOLMOD_FOUND AND OPENBLAS_FOUND AND METIS_FOUND)
303
306
ELSE(ENABLE_LINSOLV)
304
 
  SET(DISABLED_FEATS "${DISABLED_FEATS} LinSolv")
 
307
  SET(DISABLED_FEATS "${DISABLED_FEATS} LINSOLV")
305
308
ENDIF(ENABLE_LINSOLV)
306
309
#===============================================
307
310
IF(ENABLE_SPH)
430
433
FILE(GLOB_RECURSE SRC_PKG  "pkg/*.cpp")
431
434
FILE(GLOB SRC_LIB  "lib/*.cpp")
432
435
 
433
 
SET(SRC_LIB "${SRC_LIB};lib/base/Math.cpp;lib/factory/ClassFactory.cpp;lib/factory/DynLibManager.cpp;lib/multimethods/Indexable.cpp;lib/serialization/Serializable.cpp;lib/pyutil/gil.cpp;core/main/pyboot.cpp;${GUI_SRC_LIB};${CGAL_SRC_LIB}")
 
436
SET(SRC_LIB "${SRC_LIB};lib/base/Math.cpp;lib/factory/ClassFactory.cpp;lib/factory/DynLibManager.cpp")
 
437
SET(SRC_LIB "${SRC_LIB};lib/serialization/Serializable.cpp;lib/pyutil/gil.cpp;core/main/pyboot.cpp;${GUI_SRC_LIB};${CGAL_SRC_LIB}")
434
438
 
435
439
#===========================================================
436
440