CMakeLists.txt 3.08 KB
Newer Older
1
cmake_minimum_required(VERSION 2.8)
Pierre Kraemer's avatar
Pierre Kraemer committed
2 3 4 5 6

project(CGoGNDebug)

SET(CMAKE_BUILD_TYPE Debug)

7 8 9 10 11 12
IF(WIN32)
	SET(LIBRARY_OUTPUT_PATH ${CGoGN_ROOT_DIR}/lib)
ELSE(WIN32)
	SET(LIBRARY_OUTPUT_PATH ${CGoGN_ROOT_DIR}/lib/Debug)
ENDIF(WIN32)

Pierre Kraemer's avatar
Pierre Kraemer committed
13 14

include_directories(
15
	${CMAKE_CURRENT_BINARY_DIR}
Pierre Kraemer's avatar
Pierre Kraemer committed
16
	${CGoGN_ROOT_DIR}/include
17
	${CGoGN_EXT_INCLUDES}
Pierre Kraemer's avatar
Pierre Kraemer committed
18 19
)

20

Pierre Kraemer's avatar
Pierre Kraemer committed
21 22 23 24 25 26 27
file(
	GLOB_RECURSE
	files_topology
	${CGoGN_ROOT_DIR}/src/Topology/*.cpp
	${CGoGN_ROOT_DIR}/include/Topology/*.hpp
	${CGoGN_ROOT_DIR}/include/Topology/*.h
)
28

Pierre Kraemer's avatar
Pierre Kraemer committed
29 30 31 32 33 34 35
file(
	GLOB_RECURSE
	files_container
	${CGoGN_ROOT_DIR}/src/Container/*.cpp
	${CGoGN_ROOT_DIR}/include/Container/*.hpp
	${CGoGN_ROOT_DIR}/include/Container/*.h
)
36

Pierre Kraemer's avatar
Pierre Kraemer committed
37 38 39 40 41 42 43 44 45
file(
	GLOB_RECURSE
	files_algo
	${CGoGN_ROOT_DIR}/src/Algo/*.cpp
	${CGoGN_ROOT_DIR}/src/Algo/*.c
	${CGoGN_ROOT_DIR}/include/Algo/*.hpp
	${CGoGN_ROOT_DIR}/include/Algo/*.h
)

46
file(
47
	GLOB
48 49 50 51
	shaders_srcD
	${CGoGN_ROOT_DIR}/include/Utils/*.frag
	${CGoGN_ROOT_DIR}/include/Utils/*.vert
	${CGoGN_ROOT_DIR}/include/Utils/*.geom	
52 53 54
	${CGoGN_ROOT_DIR}/include/Utils/Shaders/*.frag
	${CGoGN_ROOT_DIR}/include/Utils/Shaders/*.vert
	${CGoGN_ROOT_DIR}/include/Utils/Shaders/*.geom
55 56
)

57

Sylvain Thery's avatar
Sylvain Thery committed
58
IF(WIN32)
Sylvain Thery's avatar
Sylvain Thery committed
59
	add_custom_target(shader_targetD ${CGoGN_ROOT_DIR}/ThirdParty/bin/Release/shader_to_h ${shaders_srcD}
60
	WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
61
	SOURCES ${shaders_srcD} )
Sylvain Thery's avatar
Sylvain Thery committed
62
ELSE(WIN32)
Sylvain Thery's avatar
Sylvain Thery committed
63
	add_custom_target(shader_targetD ${CGoGN_ROOT_DIR}/ThirdParty/bin/shader_to_h ${shaders_srcD}
Sylvain Thery's avatar
Sylvain Thery committed
64 65 66 67 68
	WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
	SOURCES ${shaders_srcD} 
)
ENDIF(WIN32)

Pierre Kraemer's avatar
Pierre Kraemer committed
69 70

file(
Sylvain Thery's avatar
Sylvain Thery committed
71
	GLOB		# WARNING NO MORE RECURSE TO AVOID TAKING QT FILES
Pierre Kraemer's avatar
Pierre Kraemer committed
72 73 74 75
	files_utils
	${CGoGN_ROOT_DIR}/src/Utils/*.cpp
	${CGoGN_ROOT_DIR}/include/Utils/*.hpp
	${CGoGN_ROOT_DIR}/include/Utils/*.h
Sylvain Thery's avatar
Sylvain Thery committed
76 77 78 79
	
	${CGoGN_ROOT_DIR}/src/Utils/Shaders/*.cpp
	${CGoGN_ROOT_DIR}/include/Utils/Shaders/*.hpp
	${CGoGN_ROOT_DIR}/include/Utils/Shaders/*.h
Pierre Kraemer's avatar
Pierre Kraemer committed
80
)
Sylvain Thery's avatar
Sylvain Thery committed
81

82 83 84 85 86 87
IF(WITH_QT)
	file(
		GLOB
		files_utils_qt
		${CGoGN_ROOT_DIR}/src/Utils/Qt/*.cpp
		${CGoGN_ROOT_DIR}/include/Utils/Qt/*.hpp
88 89
		${CGoGN_ROOT_DIR}/include/Utils/Qt/*.h
	)
90
	file(
91
		GLOB
92
		utils_qt_headers
93
		${CGoGN_ROOT_DIR}/include/Utils/Qt/qtgl.h
94
		${CGoGN_ROOT_DIR}/include/Utils/Qt/qtSimple.h
95 96 97
		${CGoGN_ROOT_DIR}/include/Utils/Qt/qtQGLV_glw.h
		${CGoGN_ROOT_DIR}/include/Utils/Qt/qtQGLV.h
		${CGoGN_ROOT_DIR}/include/Utils/Qt/qtpopup.h
98
		${CGoGN_ROOT_DIR}/include/Utils/Qt/qthistodraw.h 
99 100
		${CGoGN_ROOT_DIR}/include/Utils/Qt/qtcolorschooser.h
	)
101 102 103 104
		
	QT4_WRAP_CPP(UTILS_QT_HEADERS_MOC ${utils_qt_headers})
	SET (files_utils_withQt ${files_utils} ${files_utils_qt} ${UTILS_QT_HEADERS_MOC})
ENDIF (WITH_QT)
Sylvain Thery's avatar
Sylvain Thery committed
105

Pierre Kraemer's avatar
Pierre Kraemer committed
106

107 108 109 110 111 112
IF (ONELIB)
	IF(WITH_QT)
		add_library( cgognD ${files_topology} ${files_container} ${files_algo} ${files_utils_withQt}) 
	ELSE(WITH_QT)
		add_library( cgognD ${files_topology} ${files_container} ${files_algo} ${files_utils} )
	ENDIF (WITH_QT)
113
	add_dependencies(cgognD shader_targetD )
114 115 116 117 118 119 120 121 122 123
ELSE (ONELIB)
	add_library( topologyD	${files_topology})
	add_library( containerD	${files_container})
	add_library( algoD		${files_algo})
	IF(WITH_QT)
		add_library( utilsD ${files_utils_withQt} )
	ELSE(WITH_QT)
		add_library( utilsD ${files_utils} )
	ENDIF (WITH_QT)
	add_dependencies(utilsD shader_targetD )
124
ENDIF (ONELIB)