comparison generator/CMakeLists.txt @ 235:b796329e8c38

We need to start cmake twice. It is necessary for getting a class list from the generator and using this list for building other parts of QtD.
author SokoL_SD
date Sun, 19 Jul 2009 18:09:33 +0000
parents 1db8a1da977a
children fcc0ada121e1
comparison
equal deleted inserted replaced
234:1b0e2ee5aedc 235:b796329e8c38
300 set(gen_sources ${gen_sources} ${CMAKE_SOURCE_DIR}/generator/typesystem_${package}.xml) 300 set(gen_sources ${gen_sources} ${CMAKE_SOURCE_DIR}/generator/typesystem_${package}.xml)
301 find_file(d_inc_file_found typesystem_${package}-java.java PATHS ${CMAKE_SOURCE_DIR}/generator/) 301 find_file(d_inc_file_found typesystem_${package}-java.java PATHS ${CMAKE_SOURCE_DIR}/generator/)
302 if(d_inc_file_found) 302 if(d_inc_file_found)
303 set(${CMAKE_SOURCE_DIR}/generator/typesystem_${package}-java.java) 303 set(${CMAKE_SOURCE_DIR}/generator/typesystem_${package}-java.java)
304 endif(d_inc_file_found) 304 endif(d_inc_file_found)
305 endforeach(package ${packages}) 305 endforeach(package ${all_packages})
306 mark_as_advanced(d_inc_file_found) 306 mark_as_advanced(d_inc_file_found)
307 set(d_inc_file_found 1) 307 set(d_inc_file_found 1)
308 308
309 foreach(package ${packages}) 309 set(dgen_impl ${CMAKE_BINARY_DIR}/build/cpp/qt_core/ArrayOps_shell.cpp)
310 set(dgen_impl ${CMAKE_BINARY_DIR}/cpp/qt_${package}/qt_${package}.pri)
311 break(package ${packages})
312 endforeach(package ${packages})
313
314 if(CMAKE_HOST_WIN32) 310 if(CMAKE_HOST_WIN32)
315 set(sep ";") 311 set(sep ";")
316 else(CMAKE_HOST_WIN32) 312 else(CMAKE_HOST_WIN32)
317 set(sep ":") 313 set(sep ":")
318 endif(CMAKE_HOST_WIN32) 314 endif(CMAKE_HOST_WIN32)
320 set(inc_paths ${path}${sep}) 316 set(inc_paths ${path}${sep})
321 endforeach(path ${QT_INCLUDES}) 317 endforeach(path ${QT_INCLUDES})
322 add_custom_command(OUTPUT ${dgen_impl} 318 add_custom_command(OUTPUT ${dgen_impl}
323 COMMAND ${CMAKE_COMMAND} -E remove -f ${dgen_impl} 319 COMMAND ${CMAKE_COMMAND} -E remove -f ${dgen_impl}
324 COMMAND "generator" 320 COMMAND "generator"
325 ARGS ${GEN_OPT} --include-paths=${inc_paths} --output-directory=${CMAKE_BINARY_DIR} 321 ARGS ${GEN_OPT} --qt-include-directory=${QT_INCLUDE_DIR}
322 --output-directory=${CMAKE_BINARY_DIR}/build
326 --source-directory=${CMAKE_SOURCE_DIR}/generator 323 --source-directory=${CMAKE_SOURCE_DIR}/generator
327 qtjambi_masterinclude.h 324 qtjambi_masterinclude.h
328 ${CMAKE_BINARY_DIR}/CMakeFiles/build.txt 325 ${CMAKE_BINARY_DIR}/CMakeFiles/build.txt
329 COMMENT "Generating binding..." 326 COMMENT "Generating binding..."
330 DEPENDS generator ${gen_sources} 327 DEPENDS ${gen_sources} ${CMAKE_BINARY_DIR}/CMakeFiles/build.txt
331 ) 328 )
332 add_custom_target(dgen DEPENDS ${dgen_impl} COMMENT "") 329 add_custom_target(dgen ALL DEPENDS ${dgen_impl} COMMENT "")
333
334 macro(add_sources_for_generating)
335 foreach(source ${ARGN})
336 add_custom_command(OUTPUT "${source}"
337 COMMAND ""
338 ARGS ""
339 DEPENDS ${dgen_impl}
340 COMMENT ""
341 )
342 endforeach(source ${ARGN})
343 endmacro(add_sources_for_generating)