#create the implementation files from the ui files and add them to the list of sources
#usage: LYX_ADD_QT4_UI_FILES(foo_SRCS ${ui_files})
-macro (LYX_ADD_UI_FILES _sources )
+macro (LYX_ADD_UI_FILES _sources _ui)
foreach (_current_FILE ${ARGN})
get_filename_component(_tmp_FILE ${_current_FILE} ABSOLUTE)
-P ${CMAKE_MODULE_PATH}/LyXuic.cmake
MAIN_DEPENDENCY ${_tmp_FILE}
)
- set(${_sources} ${${_sources}} ${_header})
+ set(${_ui} ${${_ui}} ${_header})
endforeach (_current_FILE)
endmacro (LYX_ADD_UI_FILES)
macro(lyx_merge_files _filename _list)
+ message("----- Generating merged file ${_filename}\n")
set(_tmp)
set(_content)
- foreach(_current ${${_list}})
- file(READ ${_current} _tmp)
- set(_content ${_content} "\n\n\n\n//----------------------------------------\n/*\n file: ${_current} \n*/\n\n")
- set(_content ${_content} ${_tmp})
- endforeach(_current)
- file(WRITE ${_filename} "${_content}")
+ foreach(_current ${${_list}})
+ file(READ ${_current} _tmp)
+ set(_content ${_content} "\n\n\n\n//----------------------------------------\n/*\n file: ${_current} \n*/\n\n")
+ set(_content ${_content} ${_tmp})
+ endforeach(_current)
+ file(WRITE ${_filename} "${_content}")
endmacro(lyx_merge_files _list _filename)
lyx_automoc(${frontends_qt4_sources})
-lyx_add_ui_files(frontends_qt4_sources ${frontend_qt4_UI})
+lyx_add_ui_files(frontends_qt4_sources ui_files ${frontend_qt4_UI})
add_definitions(
-DQT_CLEAN_NAMESPACE
)
-include_directories( ${TOP_SRC_DIR}/src/frontends/qt4
+include_directories(
+ ${TOP_SRC_DIR}/src/frontends/qt4
${TOP_SRC_DIR}/src/frontends/controllers
${CMAKE_CURRENT_BINARY_DIR})
-add_library(frontend_qt4 STATIC ${frontends_qt4_sources} ${frontends_qt4_headers})
+if(MERGE_FILES AND MSVC)
+ lyx_merge_files(${CMAKE_CURRENT_BINARY_DIR}/frontends_qt4_allinone.C frontends_qt4_sources)
+ set(depends_moc_uic ${frontends_qt4_headers} ${ui_files})
+ SET_SOURCE_FILES_PROPERTIES(frontends_qt4_allinone.C PROPERTIES OBJECT_DEPENDS "${depends_moc_uic}")
+ add_library(frontend_qt4 STATIC ${CMAKE_CURRENT_BINARY_DIR}/frontends_qt4_allinone.C ${frontends_qt4_headers} ${ui_files})
+else(MERGE_FILES AND MSVC)
+ add_library(frontend_qt4 STATIC ${frontends_qt4_sources} ${frontends_qt4_headers} ${ui_files})
+else(MERGE_FILES AND MSVC)
target_link_libraries(frontend_qt4 ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} controllers)
if(NOT MERGE_FILES)
add_library(support STATIC ${support_sources} ${support_headers})
else(NOT MERGE_FILES)
+ # move to front
+ list(REMOVE_ITEM support_sources ${TOP_SRC_DIR}/src/support/convert.C)
+ list(APPEND support_sources ${TOP_SRC_DIR}/src/support/convert.C)
+ list(REMOVE_ITEM support_sources ${TOP_SRC_DIR}/src/support/lstrings.C)
+ list(APPEND support_sources ${TOP_SRC_DIR}/src/support/lstrings.C)
+ list(REVERSE support_sources)
lyx_merge_files(${CMAKE_CURRENT_BINARY_DIR}/support_allinone.C support_sources)
add_library(support STATIC ${CMAKE_CURRENT_BINARY_DIR}/support_allinone.C)
endif(NOT MERGE_FILES)