blob: 3f5e61e0078e5e7291e064567e857a947bab2b15 (
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
|
QT += qml quick widgets
CONFIG += qt debug
win32 {
ARMADILLO_DIR = "C:\Armadillo"
QMAKE_LIBDIR += "$$ARMADILLO_DIR\lib"
DEFINES += ARMA_USE_LAPACK ARMA_USE_BLAS
INCLUDEPATH += "$$ARMADILLO_DIR\include"
LIBS += -llapack_win64_MT -lblas_win64_MT
}
msvc:QMAKE_CXXFLAGS += /openmp
g++ {
QMAKE_CXXFLAGS += -std=c++11 -fopenmp
LIBS += -larmadillo -fopenmp
}
HEADERS += main.h \
colorscale.h \
continuouscolorscale.h \
geometry.h \
scale.h \
scatterplot.h \
voronoisplat.h \
colormap.h \
historygraph.h \
barchart.h \
manipulationhandler.h \
mapscalehandler.h \
numericrange.h \
selectionhandler.h \
brushinghandler.h \
projectionobserver.h \
skelft.h \
skelftkernel.h \
mp.h
SOURCES += main.cpp \
colorscale.cpp \
continuouscolorscale.cpp \
geometry.cpp \
scatterplot.cpp \
voronoisplat.cpp \
colormap.cpp \
historygraph.cpp \
barchart.cpp \
manipulationhandler.cpp \
mapscalehandler.cpp \
selectionhandler.cpp \
brushinghandler.cpp \
projectionobserver.cpp \
skelft_core.cpp \
lamp.cpp \
plmp.cpp \
knn.cpp \
forcescheme.cpp \
measures.cpp \
dist.cpp
OTHER_FILES += skelft.cu
# CUDA settings
CUDA_SOURCES += skelft.cu
CUDA_LIBS = cuda cudart
CUDA_ARCH = sm_30
NVCC_LIBS = $$join(CUDA_LIBS, " -l", "-l", "")
NVCC_OPTIONS += --use_fast_math
win32 {
CUDA_DIR = "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5"
CUDA_INCLUDEPATH += $$shell_quote($$CUDA_DIR\include)
NVCC = $$CUDA_DIR\bin\nvcc
QMAKE_LIBDIR += "$$CUDA_DIR\lib\x64"
LIBS += cuda.lib cudart.lib
}
unix {
CUDA_DIR = "/opt/cuda"
CUDA_INCLUDEPATH += $$CUDA_DIR/include
NVCC = $$CUDA_DIR/bin/nvcc
QMAKE_LIBDIR += $$CUDA_DIR/lib64
LIBS += $$NVCC_LIBS
}
#macx {
# CUDA_DIR = "/Developer/GPU Computing"
# CUDA_INCLUDEPATH += $$shell_quote($$CUDA_DIR/shared/inc)
# CUDA_INCLUDEPATH += $$shell_quote($$CUDA_DIR/C/common/inc)
# NVCC = /usr/local/cuda/bin/nvcc
# QMAKE_LIBDIR += $$CUDA_DIR/CUDALibraries/common/lib
# LIBS += $$NVCC_LIBS
#}
NVCC_INCS = $$join(CUDA_INCLUDEPATH, " -I", "-I", "")
SYSTEM_TYPE = 64
CONFIG(debug, debug|release) {
# msvc: use /MDd, just as Qt does
msvc:NVCC_OPTIONS += -Xcompiler "/MDd"
cuda_dbg.input = CUDA_SOURCES
cuda_dbg.output = ${QMAKE_FILE_BASE}_cuda.o
cuda_dbg.commands = $$NVCC -D_DEBUG -g $$NVCC_OPTIONS $$NVCC_INCS $$NVCC_LIBS --machine $$SYSTEM_TYPE -arch=$$CUDA_ARCH -c -o ${QMAKE_FILE_OUT} ${QMAKE_FILE_NAME}
cuda_dbg.dependency_type = TYPE_C
QMAKE_EXTRA_COMPILERS += cuda_dbg
} else {
# msvc: use /MD, just as Qt does
msvc:NVCC_OPTIONS += -Xcompiler "/MD"
cuda.input = CUDA_SOURCES
cuda.output = ${QMAKE_FILE_BASE}_cuda.o
cuda.commands = $NVCC $$NVCC_OPTIONS $$NVCC_INCS $$NVCC_LIBS --machine $$SYSTEM_TYPE -arch=$$CUDA_ARCH -c -o ${QMAKE_FILE_OUT} ${QMAKE_FILE_NAME}
cuda.dependency_type = TYPE_C
QMAKE_EXTRA_COMPILERS += cuda
}
RESOURCES += pm.qrc
target.path = .
INSTALLS += target
|