Blame view

CMakeLists.txt 2.22 KB
3f56f1f9   dmayerich   initial commit
1
2
3
4
5
6
7
  #Specify the version being used aswell as the language

  cmake_minimum_required(VERSION 2.8)

  #Name your project here

  project(bimsim)

  

  #set the module directory

  set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}")

3f36b18e   David Mayerich   Adding planewave ...
8
9
10
11
12
  set(CMAKE_AUTOMOC ON)

  

  # As moc files are generated in the binary dir, tell CMake

    # to always look for includes there:

  set(CMAKE_INCLUDE_CURRENT_DIR ON)

3f56f1f9   dmayerich   initial commit
13
14
15
16
17
  

  #find BOOST

  set(Boost_USE_STATIC_LIBS        ON)

  set(Boost_USE_MULTITHREADED      ON)

  set(Boost_USE_STATIC_RUNTIME    OFF)

274c3d2b   dmayerich   fixed visual stud...
18
  find_package( Boost 1.46.0 COMPONENTS program_options )

3f56f1f9   dmayerich   initial commit
19
  

3f36b18e   David Mayerich   Adding planewave ...
20
21
22
23
24
  #find the Qt5

  find_package(Qt5Widgets REQUIRED)

  find_package(Qt5Core REQUIRED)

  find_package(Qt5Gui REQUIRED)

  #find_package(Qt5OpenGL REQUIRED)

3f56f1f9   dmayerich   initial commit
25
  include_directories(${QT_INCLUDE_DIRECTORY})

3f56f1f9   dmayerich   initial commit
26
27
28
29
  

  #set up CUDA

  find_package(CUDA)

  

3f56f1f9   dmayerich   initial commit
30
  #ask the user for the RTS location

3f56f1f9   dmayerich   initial commit
31
32
33
34
35
  find_package(RTS REQUIRED)

  

  #set the include directories

  include_directories(

  	${CMAKE_CURRENT_BINARY_DIR}

3f36b18e   David Mayerich   Adding planewave ...
36
37
38
39
  	${Qt5Widgets_INCLUDE_DIRS}

  	${Qt5Core_INCLUDE_DIRS}

  	${Qt5Gui_INCLUDE_DIRS}

  #	${Qt5OpenGL_INCLUDE_DIRS}

3f56f1f9   dmayerich   initial commit
40
  	${RTS_INCLUDE_DIR}

3f36b18e   David Mayerich   Adding planewave ...
41
      	${Boost_INCLUDE_DIR}

3f56f1f9   dmayerich   initial commit
42
43
  )

  

3f36b18e   David Mayerich   Adding planewave ...
44
45
46
47
  #build position independent code for Qt (-fPIC)

  #set(CMAKE_CXX_FLAGS "-fPIC")

  

  #enable warnings (-Wall)

3f56f1f9   dmayerich   initial commit
48
49
50
51
52
53
54
  if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX)

  	add_definitions(-Wall)

  endif()

  

  #Assign source files to the appropriate variables

  file(GLOB SRC_CPP "*.cpp")

  file(GLOB SRC_H "*.h")

3f36b18e   David Mayerich   Adding planewave ...
55
  file(GLOB SRC_UI "*.ui")

3f56f1f9   dmayerich   initial commit
56
57
  file(GLOB SRC_CU "*.cu")

  

3f56f1f9   dmayerich   initial commit
58
  #determine which source files have to be moc'd

3f36b18e   David Mayerich   Adding planewave ...
59
60
61
  Qt5_wrap_cpp(UI_MOC ${SRC_H})

  Qt5_wrap_ui(UI_H ${SRC_UI})

  Qt5_add_resources(ALL_RCC ${ALL_QRC})

3f56f1f9   dmayerich   initial commit
62
  

3f36b18e   David Mayerich   Adding planewave ...
63
  set(CMAKE_CXX_FLAGS "${Qt5Widgets_EXECUTABLE_COMPILE_FLAGS}")

3f56f1f9   dmayerich   initial commit
64
65
66
67
68
  

  #create an executable

  cuda_add_executable(bimsim 

                      ${SRC_CPP}

                      ${SRC_H}

3f36b18e   David Mayerich   Adding planewave ...
69
70
71
  		    ${RTS_SOURCE}

  		    ${UI_H}

                      ${SRC_UI}

3f56f1f9   dmayerich   initial commit
72
73
74
                      ${SRC_CU}

  )

  

3f36b18e   David Mayerich   Adding planewave ...
75
76
77
  #specify which qt5 modules to use

  qt5_use_modules(bimsim Core Widgets OpenGL Gui)

  

3f56f1f9   dmayerich   initial commit
78
  #set the link libraries

3f36b18e   David Mayerich   Adding planewave ...
79
80
81
82
83
84
85
86
87
  target_link_libraries(bimsim

  					  ${Qt5Widgets_LIBRARIES}

  					  ${Qt5Core_LIBRARIES}

  					  ${Qt5Gui_LIBRARIES}

  #					  ${Qt5OpenGL_LIBRARIES}

  					  ${CUDA_cufft_LIBRARY}

  					  ${CUDA_cublas_LIBRARY}

  					  ${Boost_LIBRARIES}

  					  )

3f56f1f9   dmayerich   initial commit
88
89
90