CMakeLists.txt 3.02 KB
Newer Older
Sylvain Thery's avatar
Sylvain Thery committed
1
cmake_minimum_required(VERSION 2.8)
Pierre Kraemer's avatar
Pierre Kraemer committed
2 3 4

project(CGoGNRelease)

thery's avatar
thery committed
5
SET(CMAKE_BUILD_TYPE Release)
Pierre Kraemer's avatar
Pierre Kraemer committed
6

thery's avatar
thery committed
7 8 9 10
IF(WIN32)
	SET(LIBRARY_OUTPUT_PATH ${CGoGN_ROOT_DIR}/lib)
ELSE(WIN32)
	SET(LIBRARY_OUTPUT_PATH ${CGoGN_ROOT_DIR}/lib/Release)
11
	ADD_DEFINITIONS(-DNOTOPOWARNING)
thery's avatar
thery committed
12
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
Sylvain Thery's avatar
Sylvain Thery committed
17
	${CGoGN_EXT_INCLUDES}
Pierre Kraemer's avatar
Pierre Kraemer committed
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
)

file(
	GLOB_RECURSE
	files_topology
	${CGoGN_ROOT_DIR}/src/Topology/*.cpp
	${CGoGN_ROOT_DIR}/include/Topology/*.hpp
	${CGoGN_ROOT_DIR}/include/Topology/*.h
)

file(
	GLOB_RECURSE
	files_container
	${CGoGN_ROOT_DIR}/src/Container/*.cpp
	${CGoGN_ROOT_DIR}/include/Container/*.hpp
	${CGoGN_ROOT_DIR}/include/Container/*.h
)

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
)

Sylvain Thery's avatar
Sylvain Thery committed
45

46
file(
Sylvain Thery's avatar
Sylvain Thery committed
47 48
#	GLOB_RECURSE
	GLOB
49 50 51 52
	shaders_src
	${CGoGN_ROOT_DIR}/include/Utils/*.frag
	${CGoGN_ROOT_DIR}/include/Utils/*.vert
	${CGoGN_ROOT_DIR}/include/Utils/*.geom	
Sylvain Thery's avatar
Sylvain Thery committed
53 54 55
	${CGoGN_ROOT_DIR}/include/Utils/Shaders/*.frag
	${CGoGN_ROOT_DIR}/include/Utils/Shaders/*.vert
	${CGoGN_ROOT_DIR}/include/Utils/Shaders/*.geom
56 57
)

58 59

IF(WIN32)
unknown's avatar
unknown committed
60
	add_custom_target(shader_target ${CGoGN_ROOT_DIR}/ThirdParty/bin/Release/shader_to_h ${shaders_src}
61
	WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
unknown's avatar
unknown committed
62
	SOURCES ${shaders_src} )
63
ELSE(WIN32)
unknown's avatar
unknown committed
64
	add_custom_target(shader_target ${CGoGN_ROOT_DIR}/ThirdParty/bin/shader_to_h ${shaders_src}
65
	WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
unknown's avatar
unknown committed
66
	SOURCES ${shaders_src} )
67 68
ENDIF(WIN32)

Pierre Kraemer's avatar
Pierre Kraemer committed
69
file(
Sylvain Thery's avatar
Sylvain Thery committed
70
	GLOB		# WARNING NO MORE RECURSE TO AVOID TAKING QT FILES
Pierre Kraemer's avatar
Pierre Kraemer committed
71 72 73 74
	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
75 76 77 78

	${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
79
)
Sylvain Thery's avatar
Sylvain Thery committed
80

81
IF(WITH_QT)
Sylvain Thery's avatar
Sylvain Thery committed
82

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

Sylvain Thery's avatar
Sylvain Thery committed
102 103 104



105 106 107 108 109 110
IF (ONELIB)
	IF(WITH_QT)
		add_library( cgogn ${files_topology} ${files_container} ${files_algo} ${files_utils_withQt}) 
	ELSE(WITH_QT)
		add_library( cgogn ${files_topology} ${files_container} ${files_algo} ${files_utils} )
	ENDIF (WITH_QT)
Sylvain Thery's avatar
Sylvain Thery committed
111
	add_dependencies(cgogn shader_target )
112 113 114 115 116 117 118 119 120 121
ELSE (ONELIB)
	add_library( container	${files_container})
	add_library( topology	${files_topology})
	add_library( algo		${files_algo})
	IF(WITH_QT)
		add_library( utils ${files_utils_withQt} )
	ELSE(WITH_QT)
		add_library( utils ${files_utils} )
	ENDIF (WITH_QT)
	add_dependencies(utils shader_target )
Sylvain Thery's avatar
Sylvain Thery committed
122
ENDIF (ONELIB)