summaryrefslogtreecommitdiff
path: root/eigen2.pri
blob: e188eaf0a6b14a7ca88b92e6341d491c13b66534 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
eigen2 {

  CONFIG(mingw-cross-env) {
    EIGEN2_INCLUDEPATH = mingw-cross-env/include/eigen2
  }

  # Optionally specify location of Eigen2 using the 
  # OPENSCAD_LIBRARIES env. variable
  isEmpty(EIGEN2_INCLUDEPATH) {
    OPENSCAD_LIBRARIES_EIGEN2 = $$(OPENSCAD_LIBRARIES)
    !isEmpty(OPENSCAD_LIBRARIES_EIGEN2) {
      EIGEN2_INCLUDEPATH = $$OPENSCAD_LIBRARIES_EIGEN2/include/eigen2
    }
  }

  # Optionally specify location of Eigen2 using the 
  # EIGEN2DIR env. variable
  isEmpty(EIGEN2_INCLUDEPATH) {
    EIGEN2_DIR = $$(EIGEN2DIR)
    !isEmpty(EIGEN2_DIR):isEmpty(EIGEN2_INCLUDE_PATH) { 
      message("EIGEN2: OPENSCAD_LIBRARIES NOT")
      EIGEN2_INCLUDEPATH = $$EIGEN2_DIR
    }
  }

  isEmpty(EIGEN2_INCLUDEPATH) {
    freebsd-g++: EIGEN2_INCLUDEPATH *= /usr/local/include/eigen2
    macx: EIGEN2_INCLUDEPATH *= /opt/local/include/eigen2
    linux*: EIGEN2_INCLUDEPATH *= /usr/include/eigen2
  }

  # eigen2 being under 'include/eigen2' needs special prepending
  QMAKE_INCDIR_QT = $$EIGEN2_INCLUDEPATH $$QMAKE_INCDIR_QT

  # disable Eigen SIMD optimizations for platforms where it breaks compilation
  !macx {
    !freebsd-g++ {
      QMAKE_CXXFLAGS += -DEIGEN_DONT_ALIGN
    }
  }
}
contact: Jan Huwald // Impressum