comparison CMakeLists.txt @ 378:7341c47790d4

binding of qwt
author Eldar Insafutdinov
date Sat, 10 Jul 2010 21:54:44 +0100
parents c429854a40c0
children a795eeb3b21f
comparison
equal deleted inserted replaced
375:c429854a40c0 378:7341c47790d4
49 option(BUILD_TOOLS "Build tools" "ON") 49 option(BUILD_TOOLS "Build tools" "ON")
50 #option(GENERATE_DI_FILES "Generate *.di files with DC -H command" "OFF") 50 #option(GENERATE_DI_FILES "Generate *.di files with DC -H command" "OFF")
51 set(GENERATE_DI_FILES OFF) ## Very experimental option. Temporarily disabled. 51 set(GENERATE_DI_FILES OFF) ## Very experimental option. Temporarily disabled.
52 option(VERBOSE_DEBUG "Verbose debug" "OFF") 52 option(VERBOSE_DEBUG "Verbose debug" "OFF")
53 53
54 set(all_packages Core Gui OpenGL Xml Svg Network WebKit CACHE INTERNAL "") 54 set(all_packages Core Gui OpenGL Xml Svg Network WebKit Qwt CACHE INTERNAL "")
55 55
56 ## Init D toolkit. 56 ## Init D toolkit.
57 set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake) 57 set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake)
58 FIND_PACKAGE(D REQUIRED) 58 FIND_PACKAGE(D REQUIRED)
59 59
91 91
92 set(packages CACHE INTERNAL "") 92 set(packages CACHE INTERNAL "")
93 foreach(package_big ${all_packages}) 93 foreach(package_big ${all_packages})
94 string(TOLOWER ${package_big} package) 94 string(TOLOWER ${package_big} package)
95 string(TOUPPER ${package_big} package_upper) 95 string(TOUPPER ${package_big} package_upper)
96 option(BUILD_QT_${package_upper} "Build Qt${package_big}" "ON") 96 set(package_default_option "ON")
97 if(${package_big} STREQUAL "Qwt")
98 set(package_default_option "OFF")
99 endif()
100 option(BUILD_QT_${package_upper} "Build Qt${package_big}" ${package_default_option})
97 if(BUILD_QT_${package_upper}) 101 if(BUILD_QT_${package_upper})
98 set(packages ${packages} ${package_big}) 102 set(packages ${packages} ${package_big})
99 endif() 103 endif()
100 endforeach() 104 endforeach()
105
106 set(QWT_INCLUDE_PATH "/usr/include/qwt-qt4" CACHE STRING "Qwt include path")
107
108 set(inc_paths "")
109
110 if(CMAKE_HOST_WIN32)
111 set(sep ";")
112 else()
113 set(sep ":")
114 endif()
115
116 if(BUILD_QT_QWT)
117 set(inc_paths ${inc_paths}${sep}${QWT_INCLUDE_PATH})
118 endif()
101 119
102 add_subdirectory(generator) 120 add_subdirectory(generator)
103 121
104 add_custom_target(main ALL) 122 add_custom_target(main ALL)
105 add_dependencies(main dgen) 123 add_dependencies(main dgen)
149 167
150 set(QTD_VERSION_STR ${QT_VERSION_MAJOR}.${QT_VERSION_MINOR}.${QT_VERSION_PATCH}) 168 set(QTD_VERSION_STR ${QT_VERSION_MAJOR}.${QT_VERSION_MINOR}.${QT_VERSION_PATCH})
151 math(EXPR QTD_VERSION "(${QT_VERSION_MAJOR} << 16) + (${QT_VERSION_MINOR} << 8) + ${QT_VERSION_PATCH}") 169 math(EXPR QTD_VERSION "(${QT_VERSION_MAJOR} << 16) + (${QT_VERSION_MINOR} << 8) + ${QT_VERSION_PATCH}")
152 170
153 include_directories(${QT_INCLUDES} ${CMAKE_SOURCE_DIR}/include ${CMAKE_CURRENT_BINARY_DIR}/include) 171 include_directories(${QT_INCLUDES} ${CMAKE_SOURCE_DIR}/include ${CMAKE_CURRENT_BINARY_DIR}/include)
172 if(${BUILD_QT_QWT})
173 include_directories(${QWT_INCLUDE_PATH})
174 endif()
154 175
155 # System specifc settings. 176 # System specifc settings.
156 if(CMAKE_HOST_WIN32) 177 if(CMAKE_HOST_WIN32)
157 string(REGEX REPLACE ".dll([A-Za-z\\.0-9]+)" "\\1" CMAKE_IMPORT_LIBRARY_SUFFIX "${CMAKE_IMPORT_LIBRARY_SUFFIX}") 178 string(REGEX REPLACE ".dll([A-Za-z\\.0-9]+)" "\\1" CMAKE_IMPORT_LIBRARY_SUFFIX "${CMAKE_IMPORT_LIBRARY_SUFFIX}")
158 endif() 179 endif()
340 set(link_example) 361 set(link_example)
341 include (${CMAKE_SOURCE_DIR}/build/${package}.txt) 362 include (${CMAKE_SOURCE_DIR}/build/${package}.txt)
342 363
343 set(all_req_found 1) 364 set(all_req_found 1)
344 if(BUILD_QT_${package_upper}) 365 if(BUILD_QT_${package_upper})
345 foreach(req ${required}) 366 foreach(req ${required})
346 set(req_found)
347 foreach(pack ${packages_big})
348 if(${pack} STREQUAL ${req})
349 set(req_found 1)
350 endif()
351 endforeach(pack ${packages})
352 if(NOT req_found)
353 set(req_found) 367 set(req_found)
354 foreach(pack ${all_packages}) 368 foreach(pack ${packages_big})
355 if(${pack} STREQUAL ${req}) 369 if(${pack} STREQUAL ${req})
356 set(req_found 1) 370 set(req_found 1)
357 endif(${pack} STREQUAL ${req})
358 endforeach(pack ${all_packages})
359 if(req_found)
360 message(STATUS "Package '${package_big}' requires '${req}', but it is not active")
361 else()
362 message(STATUS "Package '${package_big}' requires '${req}', but it is not found")
363 endif() 371 endif()
364 set(all_req_found) 372 endforeach(pack ${packages})
365 endif() 373 if(NOT req_found)
366 endforeach(req ${required}) 374 set(req_found)
375 foreach(pack ${all_packages})
376 if(${pack} STREQUAL ${req})
377 set(req_found 1)
378 endif(${pack} STREQUAL ${req})
379 endforeach(pack ${all_packages})
380 if(req_found)
381 message(STATUS "Package '${package_big}' requires '${req}', but it is not active")
382 else()
383 message(STATUS "Package '${package_big}' requires '${req}', but it is not found")
384 endif()
385 set(all_req_found)
386 endif()
387 endforeach(req ${required})
367 else(BUILD_QT_${package_upper}) 388 else(BUILD_QT_${package_upper})
368 set(all_req_found) 389 set(all_req_found)
369 endif(BUILD_QT_${package_upper}) 390 endif(BUILD_QT_${package_upper})
370 391
371 if("${all_req_found}" EQUAL 1) 392 if("${all_req_found}" EQUAL 1)
372 set(packages_big ${packages_big} ${package_big}) 393 set(packages_big ${packages_big} ${package_big})
373 set(packages ${packages} ${package}) 394 set(packages ${packages} ${package})