--- /dev/null
+# This file is part of LyX, the document processor.
+# Licence details can be found in the file COPYING.
+#
+# Copyright (c) 2006-2011 Peter Kümmel, <syntheticpp@gmx.net>
+#
+
+add_subdirectory(libs)
+
--- /dev/null
+# This file is part of LyX, the document processor.
+# Licence details can be found in the file COPYING.
+#
+# Copyright (c) 2010-2011 Peter Kümmel, <syntheticpp@gmx.net>
+#
+
+project(boost)
+
+
+if(LYX_USE_TR1_REGEX)
+ message(STATUS "Using TR1 regex")
+else()
+ add_subdirectory(regex)
+endif()
+
+
+add_subdirectory(signals)
+
--- /dev/null
+# This file is part of LyX, the document processor.
+# Licence details can be found in the file COPYING.
+#
+# Copyright (c) 2006-2011 Peter Kümmel, <syntheticpp@gmx.net>
+#
+
+project(boost_regex)
+
+set(boost_regex_sources
+ cpp_regex_traits.cpp
+ c_regex_traits.cpp
+ cregex.cpp
+ fileiter.cpp
+ instances.cpp
+ regex.cpp
+ regex_raw_buffer.cpp
+ regex_traits_defaults.cpp
+ w32_regex_traits.cpp)
+
+lyx_add_path(boost_regex_sources ${TOP_SRC_DIR}/boost/libs/regex/src)
+
+add_library(boost_regex STATIC ${boost_regex_sources})
+
--- /dev/null
+# This file is part of LyX, the document processor.
+# Licence details can be found in the file COPYING.
+#
+# Copyright (c) 2006-2011 Peter Kümmel, <syntheticpp@gmx.net>
+#
+
+project(boost_signals)
+
+set(boost_signals_sources
+ connection.cpp
+ named_slot_map.cpp
+ signal_base.cpp
+ slot.cpp
+ trackable.cpp
+)
+
+lyx_add_path(boost_signals_sources ${TOP_SRC_DIR}/boost/libs/signals/src)
+
+if(NOT LYX_MERGE_FILES)
+ add_library(boost_signals STATIC ${boost_signals_sources})
+else()
+ lyx_const_touched_files(_allinone boost_signals_sources)
+ add_library(boost_signals STATIC ${_allinone_files})
+endif()
+
COMMAND ${py_compile} ${_copied_py}
DEPENDS ${_copied_py}
)
- SET_SOURCE_FILES_PROPERTIES(${_copied_py} ${_created_py_} GENERATED)
- install(FILES ${_compiled_py_} DESTINATION ${_project})
+ SET_SOURCE_FILES_PROPERTIES(${_copied_py} GENERATED)
+ install(PROGRAMS ${_compiled_py_} ${_copied_py} DESTINATION ${_project})
LIST(APPEND _generated ${_compiled_py_})
endforeach(_orig_py)
#define _CONFIG_H
// obligatory flags
-#define QT_NO_STL
-#define QT_NO_KEYWORDS
-#define HAVE_ICONV
+#define QT_NO_STL 1
+#define QT_NO_KEYWORDS 1
+#define HAVE_ICONV 1
#include "configCompiler.h"
#cmakedefine LYX_NLS 1
#ifdef LYX_NLS
-#define ENABLE_NLS
+#define ENABLE_NLS 1
+// These are needed when building included gettext (taken from autoconf macro)
+#cmakedefine LYX_EXTERNAL_LIBINTL 1
+#if !defined(LYX_EXTERNAL_LIBINTL)
+// this only makes sense when LYX_EXTERNAL_LIBINTL is OFF.
+#define __libc_lock_t gl_lock_t
+#define __libc_lock_define gl_lock_define
+#define __libc_lock_define_initialized gl_lock_define_initialized
+#define __libc_lock_init gl_lock_init
+#define __libc_lock_lock gl_lock_lock
+#define __libc_lock_unlock gl_lock_unlock
+#define __libc_lock_recursive_t gl_recursive_lock_t
+#define __libc_lock_define_recursive gl_recursive_lock_define
+#define __libc_lock_define_initialized_recursive gl_recursive_lock_define_initialized
+#define __libc_lock_init_recursive gl_recursive_lock_init
+#define __libc_lock_lock_recursive gl_recursive_lock_lock
+#define __libc_lock_unlock_recursive gl_recursive_lock_unlock
+#define glthread_in_use libintl_thread_in_use
+#define glthread_lock_init libintl_lock_init
+#define glthread_lock_lock libintl_lock_lock
+#define glthread_lock_unlock libintl_lock_unlock
+#define glthread_lock_destroy libintl_lock_destroy
+#define glthread_rwlock_init libintl_rwlock_init
+#define glthread_rwlock_rdlock libintl_rwlock_rdlock
+#define glthread_rwlock_wrlock libintl_rwlock_wrlock
+#define glthread_rwlock_unlock libintl_rwlock_unlock
+#define glthread_rwlock_destroy libintl_rwlock_destroy
+#define glthread_recursive_lock_init libintl_recursive_lock_init
+#define glthread_recursive_lock_lock libintl_recursive_lock_lock
+#define glthread_recursive_lock_unlock libintl_recursive_lock_unlock
+#define glthread_recursive_lock_destroy libintl_recursive_lock_destroy
+#define glthread_once libintl_once
+#define glthread_once_call libintl_once_call
+#define glthread_once_singlethreaded libintl_once_singlethreaded
+#define hash_string libintl_hash_string
+#endif /* LYX_EXTERNAL_LIBINTL */
#endif
#define HAVE__PCLOSE 1
#define HAVE_GETPID 1
#define HAVE__GETPID 1
+#define HAVE_GETTEXT 1 /* TODO this is set manually */
#define HAVE_MKDIR 1
#define HAVE__MKDIR 1
/* #undef HAVE_SETENV 1 */
--- /dev/null
+# This file is part of LyX, the document processor.
+# Licence details can be found in the file COPYING.
+#
+# Copyright (c) 2008-2011 Peter Kümmel, <syntheticpp@gmx.net>
+# Copyright (c) 2008-2011 Kornel Benko, <Kornel.Benko@berlin.de>
+#
+
+configure_file(${TOP_SRC_DIR}/lib/lyx2lyx/lyx2lyx_version.py.in
+ ${CMAKE_CURRENT_BINARY_DIR}/lyx2lyx_version.py)
+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/lyx2lyx_version.py DESTINATION ${LYX_DATA_SUBDIR}lyx2lyx)
+
+if (UNIX)
+ set(_project "lyx2lyx")
+ include(../PyCompile)
+endif()
+
+install(PROGRAMS ${TOP_SRC_DIR}/lib/lyx2lyx/lyx2lyx DESTINATION ${LYX_DATA_SUBDIR}lyx2lyx)
--- /dev/null
+# This file is part of LyX, the document processor.
+# Licence details can be found in the file COPYING.
+#
+# Copyright (c) 2008-2011 Peter Kümmel, <syntheticpp@gmx.net>
+# Copyright (c) 2008-2011 Kornel Benko, <Kornel.Benko@berlin.de>
+#
+
+if (UNIX)
+ set(_project "scripts")
+ include(../PyCompile)
+endif()
+
--- /dev/null
+# This file is part of LyX, the document processor.
+# Licence details can be found in the file COPYING.
+#
+# Copyright (c) 2008-2011 Peter Kümmel, <syntheticpp@gmx.net>
+# Copyright (c) 2008-2011 Kornel Benko, <Kornel.Benko@berlin.de>
+#
+
+project(po)
+
+include_directories(${TOP_SRC_DIR}/po)
+
+SET(_lyxname ${PACKAGE})
+SET(_py_sources)
+macro(add_gettext_python _par _dir)
+ set(_sources)
+ foreach(_arg ${ARGN})
+ file(GLOB _s1 ${TOP_SRC_DIR}/${_dir}/${_arg})
+ list(SORT _s1)
+ list(APPEND _sources ${_s1})
+ endforeach(_arg)
+ if (${_par} MATCHES "layouttranslations")
+ SET(_dst "${CMAKE_CURRENT_BINARY_DIR}/${_par}")
+ else ()
+ SET(_dst "${CMAKE_CURRENT_BINARY_DIR}/${_par}_l10n.pot")
+ endif()
+ SET(_tmp_src_files "${CMAKE_CURRENT_BINARY_DIR}/${_par}_tmp_files")
+ SET(_src_files "${CMAKE_CURRENT_BINARY_DIR}/${_par}_files")
+ file(WRITE ${_tmp_src_files} "")
+ foreach(_s ${_sources})
+ FILE(APPEND ${_tmp_src_files} "${_s}\n")
+ endforeach()
+ if(${_par} MATCHES "^\(.*\)_[0-9]+$")
+ set(_par1 ${CMAKE_MATCH_1})
+ else()
+ set(_par1 ${_par})
+ endif()
+ ADD_CUSTOM_COMMAND(
+ OUTPUT ${_src_files}
+ COMMAND ${CMAKE_COMMAND} -E copy_if_different ${_tmp_src_files} ${_src_files}
+ DEPENDS ${_tmp_src_files}
+ )
+ if (${_par} MATCHES "layouttranslations")
+ ADD_CUSTOM_COMMAND(
+ OUTPUT "${_dst}"
+ PRE_BUILD
+ COMMAND ${CMAKE_COMMAND} -E copy_if_different "${TOP_SRC_DIR}/lib/layouttranslations" "${_dst}"
+ COMMAND ${LYX_PYTHON_EXECUTABLE}
+ ARGS "${TOP_SRC_DIR}/po/lyx_pot.py" -b "${TOP_SRC_DIR}" -o "${_dst}" -t ${_par1} "--src_file=${_src_files}"
+ COMMAND ${CMAKE_COMMAND} -E copy_if_different "${_dst}" "${TOP_SRC_DIR}/lib/layouttranslations"
+ DEPENDS ${_sources} ${_src_files} "${TOP_SRC_DIR}/lib/layouttranslations"
+ COMMENT "${LYX_PYTHON_EXECUTABLE} ${TOP_SRC_DIR}/po/lyx_pot.py -b ${TOP_SRC_DIR} -o ${_dst} -t ${_par1} --src_file=${_src_files}"
+ )
+ ADD_CUSTOM_TARGET(layouttranslations1 DEPENDS "${_dst}")
+ if (LYX_DATA_SUBDIR STREQUAL "")
+ install(FILES "${TOP_SRC_DIR}/lib/layouttranslations" DESTINATION .)
+ else()
+ install(FILES "${TOP_SRC_DIR}/lib/layouttranslations" DESTINATION ${LYX_DATA_SUBDIR})
+ endif()
+ else()
+ ADD_CUSTOM_COMMAND(
+ OUTPUT "${_dst}"
+ PRE_BUILD
+ COMMAND ${LYX_PYTHON_EXECUTABLE}
+ ARGS "${TOP_SRC_DIR}/po/lyx_pot.py" -b "${TOP_SRC_DIR}" -o "${_dst}" -t ${_par1} "--src_file=${_src_files}"
+ DEPENDS ${_sources} ${_src_files}
+ COMMENT "${LYX_PYTHON_EXECUTABLE} ${TOP_SRC_DIR}/po/lyx_pot.py -b ${TOP_SRC_DIR} -o ${_dst} -t ${_par1} --src_file=${_src_files}"
+ )
+ LIST(APPEND _py_sources "${_dst}")
+ endif()
+ SET_SOURCE_FILES_PROPERTIES("${_dst}" GENERATED)
+ SET_SOURCE_FILES_PROPERTIES("${_src_files}" GENERATED)
+endmacro(add_gettext_python)
+
+SET_SOURCE_FILES_PROPERTIES("${CMAKE_CURRENT_BINARY_DIR}/${_lyxname}.cat.pot" GENERATED)
+SET_SOURCE_FILES_PROPERTIES("${CMAKE_CURRENT_BINARY_DIR}/${_lyxname}.fmt.pot" GENERATED)
+SET_SOURCE_FILES_PROPERTIES("${CMAKE_CURRENT_BINARY_DIR}/${_lyxname}.pot" GENERATED)
+
+add_gettext_python(qt4 src/frontends/qt4/ui *.ui)
+add_gettext_python(layouts lib/layouts *.layout *.inc *.module)
+add_gettext_python(languages lib languages)
+add_gettext_python(encodings lib encodings)
+add_gettext_python(ui lib/ui *.ui *.inc)
+add_gettext_python(external lib external_templates)
+add_gettext_python(formats lib configure.py)
+add_gettext_python(layouttranslations lib/layouts *.layout *.inc *.module)
+
+ADD_CUSTOM_COMMAND(
+ OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${_lyxname}.cat.pot"
+ COMMAND ${LYX_PYTHON_EXECUTABLE}
+ ARGS "${TOP_SRC_DIR}/development/cmake/po/cat.py" ${_py_sources} > "${CMAKE_CURRENT_BINARY_DIR}/${_lyxname}.cat.pot"
+ DEPENDS ${_py_sources}
+ )
+
+ADD_CUSTOM_COMMAND(
+ OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${_lyxname}.fmt.pot"
+ COMMAND ${GETTEXT_MSGUNIQ_EXECUTABLE}
+ ARGS -o "${CMAKE_CURRENT_BINARY_DIR}/${_lyxname}.fmt.pot" "${CMAKE_CURRENT_BINARY_DIR}/${_lyxname}.cat.pot"
+ DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/${_lyxname}.cat.pot"
+ )
+
+SET(_potfiles_dep)
+
+file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/POTFILES.in "")
+file(GLOB_RECURSE _tmp_potfiles RELATIVE ${TOP_SRC_DIR}/ ${TOP_SRC_DIR}/src/*.h ${TOP_SRC_DIR}/src/*.cpp ${TOP_SRC_DIR}/src/*.cpp.in)
+list(SORT _tmp_potfiles)
+list(REMOVE_ITEM _tmp_potfiles src/support/Package.cpp)
+
+foreach(_f ${_tmp_potfiles})
+ # we don't need to select only relevant files because the outcome of xgettext
+ # will stay the same.
+ # Relevant files are files containing the string '_(".*")'
+ LIST(APPEND _potfiles_dep "${TOP_SRC_DIR}/${_f}")
+ file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/POTFILES.in "${_f}\n")
+endforeach(_f)
+
+ADD_CUSTOM_COMMAND(
+ OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${_lyxname}.pot"
+ COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_BINARY_DIR}/${_lyxname}.fmt.pot" "${CMAKE_CURRENT_BINARY_DIR}/${_lyxname}.pot"
+ COMMAND ${GETTEXT_XGETTEXT_EXECUTABLE}
+ ARGS --default-domain=${_lyxname} --directory=${TOP_SRC_DIR} --add-comments=TRANSLATORS: --language=C++ --join-existing --keyword=_ --keyword=N_ --keyword=B_ --keyword=qt_ --files-from="${CMAKE_CURRENT_BINARY_DIR}/POTFILES.in" --copyright-holder="LyX Developers" --msgid-bugs-address=lyx-devel@lists.lyx.org -o "${CMAKE_CURRENT_BINARY_DIR}/${_lyxname}.pot"
+ DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/${_lyxname}.fmt.pot" ${_potfiles_dep}
+ )
+
+#
+# We have to copy the po-files first,
+# otherwise they would be modified (inside the macro GETTEXT_CREATE_TRANSLATIONS())
+# This makes the "svn up" on po-files work again
+file(GLOB LYX_BASE_PO_FILES RELATIVE ${TOP_SRC_DIR}/po ${TOP_SRC_DIR}/po/*.po)
+set(LYX_PO_FILES)
+SET(LYX_UPDATED_PO_FILES)
+SET(LYX_DEST_PO ${TOP_SRC_DIR}/po)
+
+foreach(_pofile ${LYX_BASE_PO_FILES})
+ add_custom_command(
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_pofile}
+ COMMAND ${CMAKE_COMMAND} -E copy ${TOP_SRC_DIR}/po/${_pofile} ${CMAKE_CURRENT_BINARY_DIR}/${_pofile}
+ DEPENDS ${TOP_SRC_DIR}/po/${_pofile}
+ )
+ list(APPEND LYX_PO_FILES ${CMAKE_CURRENT_BINARY_DIR}/${_pofile})
+endforeach(_pofile)
+
+foreach(_pofile ${LYX_BASE_PO_FILES})
+ add_custom_command(
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_pofile}.copied
+ COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_CURRENT_BINARY_DIR}/${_pofile} ${LYX_DEST_PO}/${_pofile}
+ COMMAND ${CMAKE_COMMAND} -E touch ${_pofile}.copied
+ DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${_pofile}
+ )
+ list(APPEND LYX_UPDATED_PO_FILES ${CMAKE_CURRENT_BINARY_DIR}/${_pofile}.copied)
+endforeach(_pofile)
+
+if(LYX_CPACK OR LYX_INSTALL)
+ set(_addALLOption ALL)
+endif()
+GETTEXT_CREATE_TRANSLATIONS(${CMAKE_CURRENT_BINARY_DIR}/${_lyxname}.pot ${_addALLOption} ${LYX_PO_FILES})
+
+# ALL omitted here, to prevent from automatic creation
+ADD_CUSTOM_TARGET(update_po_files DEPENDS ${LYX_UPDATED_PO_FILES})
+add_dependencies(update_po_files translations)
+
+# ADD_POFILES("lyx")
+
--- /dev/null
+# This file is part of LyX, the document processor.
+# Licence details can be found in the file COPYING.
+#
+# Copyright (c) 2006-2011 Peter Kümmel, <syntheticpp@gmx.net>
+#
+
+set(_lyx ${PACKAGE_BASE}${PROGRAM_SUFFIX})
+project(${_lyx})
+
+include_directories(${TOP_SRC_DIR}/src)
+
+add_subdirectory(frontends)
+add_subdirectory(graphics)
+add_subdirectory(insets)
+add_subdirectory(mathed)
+add_subdirectory(support)
+add_subdirectory(tex2lyx)
+if (UNIX)
+ add_subdirectory(client)
+endif()
+
+file(GLOB lyx_sources ${TOP_SRC_DIR}/src/${LYX_CPP_FILES})
+file(GLOB moc_files ${TOP_SRC_DIR}/src/${LYX_MOC_FILES})
+list(REMOVE_ITEM lyx_sources ${moc_files} .)
+file(GLOB lyx_headers ${TOP_SRC_DIR}/src/${LYX_HPP_FILES})
+
+list(REMOVE_ITEM lyx_sources
+ ${TOP_SRC_DIR}/src/Variables.cpp
+ ${TOP_SRC_DIR}/src/Section.cpp
+ ${TOP_SRC_DIR}/src/lyxcore.cpp
+ ${TOP_SRC_DIR}/src/lyxinsets.cpp
+ ${TOP_SRC_DIR}/src/lyxmathed.cpp)
+
+list(REMOVE_ITEM lyx_headers
+ ${TOP_SRC_DIR}/src/Variables.h
+ ${TOP_SRC_DIR}/src/Section.h)
+
+if(NOT APPLE)
+ list(REMOVE_ITEM lyx_sources ${TOP_SRC_DIR}/src/AppleSpellChecker.cpp)
+ list(REMOVE_ITEM lyx_headers ${TOP_SRC_DIR}/src/AppleSpellChecker.h)
+endif()
+
+if(NOT ASPELL_FOUND)
+ list(REMOVE_ITEM lyx_sources ${TOP_SRC_DIR}/src/AspellChecker.cpp)
+ list(REMOVE_ITEM lyx_headers ${TOP_SRC_DIR}/src/AspellChecker.h)
+else()
+ set(dont_merge ${dont_merge} ${TOP_SRC_DIR}/src/AspellChecker.cpp)
+endif()
+
+if(NOT ENCHANT_FOUND)
+ list(REMOVE_ITEM lyx_sources ${TOP_SRC_DIR}/src/EnchantChecker.cpp)
+ list(REMOVE_ITEM lyx_headers ${TOP_SRC_DIR}/src/EnchantChecker.h)
+else()
+ set(dont_merge ${dont_merge} ${TOP_SRC_DIR}/src/EnchantChecker.cpp)
+endif()
+
+if(NOT HUNSPELL_FOUND)
+ list(REMOVE_ITEM lyx_sources ${TOP_SRC_DIR}/src/HunspellChecker.cpp)
+ list(REMOVE_ITEM lyx_headers ${TOP_SRC_DIR}/src/HunspellChecker.h)
+else()
+ set(dont_merge ${dont_merge} ${TOP_SRC_DIR}/src/HunspellChecker.cpp)
+endif()
+
+
+lyx_automoc(${TOP_SRC_DIR}/src/Compare.cpp)
+if(WIN32)
+ lyx_automoc(${TOP_SRC_DIR}/src/Server.cpp)
+endif()
+
+include_directories(${CMAKE_CURRENT_BINARY_DIR}
+ ${ZLIB_INCLUDE_DIR} ${QT_INCLUDES})
+
+lyx_add_msvc_pch(lyx)
+
+if (LYX_DEVEL_VERSION)
+ add_definitions(-DDEVEL_VERSION)
+endif()
+
+
+if (LYX_MERGE_FILES)
+ if(dont_merge)
+ list(REMOVE_ITEM lyx_sources ${dont_merge})
+ endif()
+ lyx_const_touched_files(_allinone lyx_sources)
+ set(lyx_sources ${_allinone_files} ${dont_merge})
+endif()
+
+if (LYX_VLD)
+ configure_file(${vld_path}/vld.ini ${CMAKE_CURRENT_BINARY_DIR}/vld.ini COPYONLY)
+ configure_file(${vld_path}/vld.ini ${CMAKE_CURRENT_BINARY_DIR}/memory_leak_report.txt COPYONLY)
+ set(vld_files ${CMAKE_CURRENT_BINARY_DIR}/vld.ini ${CMAKE_CURRENT_BINARY_DIR}/memory_leak_report.txt)
+endif()
+
+if(WIN32)
+ set(FILE_RC ${TOP_SRC_DIR}/development/cmake/lyx.rc)
+ message(STATUS "Using icon defined in resource file: ${FILE_RC}")
+endif()
+
+lyx_find_info_files(LyXInfoFiles ${TOP_SRC_DIR}/*)
+lyx_find_info_files(LyXCMakeFiles ${TOP_SRC_DIR}/development/cmake/*.txt)
+lyx_find_info_files(LyXCMakeFiles ${TOP_SRC_DIR}/development/cmake/*.cmake)
+lyx_find_info_files(LyXCMakeFiles ${TOP_SRC_DIR}/development/cmake/*.h)
+lyx_find_info_files(LyXCMakeFiles ${TOP_SRC_DIR}/development/cmake/*.msvc)
+lyx_find_info_files(LyXCMakeFiles ${TOP_SRC_DIR}/development/cmake/modules/*)
+lyx_find_info_files(LyXUiFiles ${TOP_SRC_DIR}/lib/ui/*)
+
+add_executable(${_lyx}
+ ${WIN32_CONSOLE}
+ ${lyx_sources}
+ ${lyx_headers}
+ ${vld_files}
+ ${FILE_RC}
+ ${lyx_info_files}
+ ${lyx_cmake_files}
+)
+
+lyx_add_gcc_pch(${_lyx})
+
+target_link_libraries(${_lyx}
+ mathed
+ insets
+ frontends
+ frontend_qt4
+ graphics
+ support
+ ${LIBINTL_LIBRARIES}
+ ${ICONV_LIBRARY}
+ ${QT_QTMAIN_LIBRARY}
+ ${vld_dll})
+
+
+if(HUNSPELL_FOUND)
+ target_link_libraries(${_lyx} ${HUNSPELL_LIBRARY})
+endif()
+if(ASPELL_FOUND)
+ target_link_libraries(${_lyx} ${ASPELL_LIBRARY})
+endif()
+if(ENCHANT_FOUND)
+ target_link_libraries(${_lyx} ${ENCHANT_LIBRARY})
+endif()
+
+if(APPLE)
+ target_link_libraries(${_lyx} "-bind_at_load")
+ target_link_libraries(${_lyx} "-framework Carbon")
+endif()
+
+if(MINGW)
+ target_link_libraries(${_lyx} ole32)
+endif()
+
+project_source_group("${GROUP_CODE}" lyx_sources lyx_headers)
+
+install(TARGETS ${_lyx} DESTINATION bin)
+
--- /dev/null
+# This file is part of LyX, the document processor.
+# Licence details can be found in the file COPYING.
+#
+# Copyright (c) 2006-2011 Peter Kümmel, <syntheticpp@gmx.net>
+#
+
+project(frontends)
+
+include_directories(${TOP_SRC_DIR}/src/frontends)
+
+add_subdirectory(qt4)
+
+file(GLOB frontends_sources ${TOP_SRC_DIR}/src/frontends/${LYX_CPP_FILES})
+file(GLOB frontends_headers ${TOP_SRC_DIR}/src/frontends/${LYX_HPP_FILES})
+
+
+if(NOT LYX_MERGE_FILES)
+ add_library(frontends ${library_type} ${frontends_sources} ${frontends_headers})
+else()
+ lyx_const_touched_files(_allinone frontends_sources)
+ add_library(frontends ${library_type} ${_allinone_files})
+endif()
+
+target_link_libraries(frontends ${Lyx_Boost_Libraries})
+
+project_source_group("${GROUP_CODE}" frontends_sources frontends_headers)
+
--- /dev/null
+# This file is part of LyX, the document processor.
+# Licence details can be found in the file COPYING.
+#
+# Copyright (c) 2006-2011 Peter Kümmel, <syntheticpp@gmx.net>
+#
+
+project(frontend_qt4)
+
+file(GLOB frontends_qt4_sources ${TOP_SRC_DIR}/src/frontends/qt4/${LYX_CPP_FILES})
+file(GLOB moc_files ${TOP_SRC_DIR}/src/frontends/qt4/${LYX_MOC_FILES})
+
+list(REMOVE_ITEM frontends_qt4_sources ${moc_files} .)
+list(REMOVE_ITEM frontends_qt4_sources ${TOP_SRC_DIR}/src/frontends/qt4/liblyxqt4.cpp)
+list(REMOVE_ITEM frontends_qt4_sources ${TOP_SRC_DIR}/src/frontends/qt4/Resources.cpp)
+
+file(GLOB frontends_qt4_headers ${TOP_SRC_DIR}/src/frontends/qt4/${LYX_HPP_FILES})
+file(GLOB frontend_qt4_UI ${TOP_SRC_DIR}/src/frontends/qt4/ui/*.ui)
+
+lyx_add_msvc_pch(frontends_qt4)
+
+lyx_automoc(${frontends_qt4_sources})
+
+lyx_add_ui_files(frontends_qt4_sources ui_files ${frontend_qt4_UI})
+
+file(GLOB_RECURSE frontend_qt4_images_png ${TOP_SRC_DIR}/lib/images/*.png)
+file(GLOB_RECURSE frontend_qt4_images_gif ${TOP_SRC_DIR}/lib/images/*.gif)
+set(resource_name ${CMAKE_CURRENT_BINARY_DIR}/Resources.qrc)
+set(frontend_qt4_images ${frontend_qt4_images_png} ${frontend_qt4_images_gif})
+lyx_qt_resources_file(${resource_name} "${TOP_SRC_DIR}/lib/" frontend_qt4_images)
+qt4_add_resources(resource_files ${resource_name})
+
+
+add_definitions(-DQT_GENUINE_STR -DLYX_BUILD_QT4_FRONTEND)
+
+include_directories(
+ ${TOP_SRC_DIR}/src/frontends/qt4
+ ${QT_INCLUDES}
+ ${CMAKE_CURRENT_BINARY_DIR})
+
+if (LYX_DEVEL_VERSION)
+ add_definitions(-DDEVEL_VERSION)
+endif()
+
+if(LYX_MERGE_FILES)
+ lyx_const_touched_files(_allinone frontends_qt4_sources)
+ set(depends_moc_uic ${frontends_qt4_headers} ${ui_files})
+ set_source_files_properties(_allinone_const.C PROPERTIES OBJECT_DEPENDS "${depends_moc_uic}")
+ set_source_files_properties(_allinone_touched.C PROPERTIES OBJECT_DEPENDS "${depends_moc_uic}")
+ add_library(frontend_qt4 ${library_type}
+ ${_allinone_files} ${frontends_qt4_headers} ${ui_files} ${resource_files})
+else()
+ add_library(frontend_qt4 ${library_type} ${frontends_qt4_sources} ${frontends_qt4_headers} ${ui_files} ${resource_files})
+endif()
+
+
+target_link_libraries(frontend_qt4
+ frontends
+ ${QT_QTCORE_LIBRARY}
+ ${QT_QTGUI_LIBRARY})
+
+lyx_add_gcc_pch(frontend_qt4)
+
+if(WIN32)
+ target_link_libraries(frontend_qt4 Gdi32)
+endif()
+
+project_source_group("${GROUP_CODE}" frontends_qt4_sources frontends_qt4_headers)
+
+source_group("Uic files" FILES ${frontend_qt4_UI})
+
--- /dev/null
+# This file is part of LyX, the document processor.
+# Licence details can be found in the file COPYING.
+#
+# Copyright (c) 2006-2011 Peter Kümmel, <syntheticpp@gmx.net>
+#
+
+project(graphics)
+
+file(GLOB graphics_sources ${TOP_SRC_DIR}/src/graphics/${LYX_CPP_FILES})
+file(GLOB graphics_headers ${TOP_SRC_DIR}/src/graphics/${LYX_HPP_FILES})
+
+lyx_add_msvc_pch(graphics)
+
+
+include_directories(${TOP_SRC_DIR}/src/graphics)
+
+if(NOT LYX_MERGE_FILES)
+ add_library(graphics ${library_type} ${graphics_sources} ${graphics_headers})
+else()
+ lyx_const_touched_files(_allinone graphics_sources)
+ add_library(graphics ${library_type} ${_allinone_files})
+endif()
+
+lyx_add_gcc_pch(graphics)
+
+project_source_group("${GROUP_CODE}" graphics_sources graphics_headers)
+
--- /dev/null
+# This file is part of LyX, the document processor.
+# Licence details can be found in the file COPYING.
+#
+# Copyright (c) 2006-2011 Peter Kümmel, <syntheticpp@gmx.net>
+#
+
+project(insets)
+
+file(GLOB insets_sources ${TOP_SRC_DIR}/src/insets/${LYX_CPP_FILES})
+file(GLOB insets_headers ${TOP_SRC_DIR}/src/insets/${LYX_HPP_FILES})
+
+list(REMOVE_ITEM insets_sources ${TOP_SRC_DIR}/src/insets/InsetTheorem.cpp)
+
+lyx_add_msvc_pch(insets)
+
+include_directories(${TOP_SRC_DIR}/src/insets ${QT_INCLUDES})
+
+
+if(NOT LYX_MERGE_FILES)
+ add_library(insets ${library_type} ${insets_sources} ${insets_headers})
+else()
+ lyx_const_touched_files(_allinone insets_sources)
+ add_library(insets ${library_type} ${_allinone_files})
+endif()
+
+lyx_add_gcc_pch(insets)
+
+project_source_group("${GROUP_CODE}" insets_sources insets_headers)
+
--- /dev/null
+# This file is part of LyX, the document processor.
+# Licence details can be found in the file COPYING.
+#
+# Copyright (c) 2006-2011, Peter Kümmel, <syntheticpp@gmx.net>
+#
+
+project(mathed)
+
+file(GLOB mathed_sources ${TOP_SRC_DIR}/src/mathed/${LYX_CPP_FILES})
+file(GLOB mathed_headers ${TOP_SRC_DIR}/src/mathed/${LYX_HPP_FILES})
+
+list(REMOVE_ITEM mathed_sources
+ ${TOP_SRC_DIR}/src/mathed/InsetMathXYArrow.cpp
+ ${TOP_SRC_DIR}/src/mathed/InsetFormulaMacro.cpp)
+
+lyx_add_msvc_pch(mathed)
+
+include_directories(${TOP_SRC_DIR}/src/mathed)
+
+if(NOT LYX_MERGE_FILES)
+ add_library(mathed ${library_type} ${mathed_sources} ${mathed_headers})
+else()
+ lyx_const_touched_files(_allinone mathed_sources)
+ add_library(mathed ${library_type} ${_allinone_files})
+endif()
+
+lyx_add_gcc_pch(mathed)
+
+project_source_group("${GROUP_CODE}" mathed_sources mathed_headers)
+
--- /dev/null
+# This file is part of LyX, the document processor.
+# Licence details can be found in the file COPYING.
+#
+# Copyright (c) 2006-2011 Peter Kümmel, <syntheticpp@gmx.net>
+#
+
+project(support)
+
+file(GLOB support_sources ${TOP_SRC_DIR}/src/support/${LYX_CPP_FILES})
+file(GLOB moc_files ${TOP_SRC_DIR}/src/support/${LYX_MOC_FILES})
+list(REMOVE_ITEM support_sources ${moc_files} .)
+if(APPLE)
+ list(APPEND dont_merge ${TOP_SRC_DIR}/src/support/AppleSpeller.m)
+endif()
+
+file(GLOB support_headers ${TOP_SRC_DIR}/src/support/${LYX_HPP_FILES})
+
+file(GLOB support_mythes_sources ${TOP_SRC_DIR}/src/support/mythes/*.cxx)
+file(GLOB support_mythes_headers ${TOP_SRC_DIR}/src/support/mythes/*.hxx)
+
+file(GLOB support_linkback_sources ${TOP_SRC_DIR}/src/support/linkback/*.m*)
+file(GLOB support_linkback_headers ${TOP_SRC_DIR}/src/support/linkback/*.h)
+
+list(REMOVE_ITEM support_sources
+ ${TOP_SRC_DIR}/src/support/os_win32.cpp
+ ${TOP_SRC_DIR}/src/support/os_unix.cpp
+ ${TOP_SRC_DIR}/src/support/os_cygwin.cpp
+ ${TOP_SRC_DIR}/src/support/os_os2.C
+ ${TOP_SRC_DIR}/src/support/atexit.c
+ ${TOP_SRC_DIR}/src/support/strerror.c
+ ${TOP_SRC_DIR}/src/support/gettext.cpp)
+
+if(APPLE)
+ message(STATUS "Mac LinkBack support")
+else()
+ set(support_linkback_sources "")
+ set(support_linkback_headers "")
+endif()
+
+# needed to compile tex2lyx in merged mode
+set(dont_merge ${dont_merge} ${TOP_SRC_DIR}/src/support/gettext.cpp)
+
+lyx_add_msvc_pch(support)
+
+lyx_automoc(${support_sources})
+
+include_directories(
+ ${TOP_SRC_DIR}/src/support
+ ${TOP_BINARY_DIR}/src/support
+ ${TOP_SRC_DIR}/src/support/mythes
+ ${QT_INCLUDES}
+ ${ICONV_INCLUDE_DIR}
+ ${ZLIB_INCLUDE_DIR}
+ ${LIBINTL_INCLUDE_DIR})
+
+
+if(NOT LYX_MERGE_FILES)
+ set(support_sources ${support_sources} ${support_mythes_sources} ${support_linkback_sources})
+ set(support_headers ${support_headers} ${support_mythes_headers} ${support_linkback_headers})
+ add_library(support ${library_type} ${support_sources} ${support_headers} ${dont_merge})
+else()
+ # GCC bug: gcc resolves ::bind as boost::bind
+ set(support_separate ${TOP_SRC_DIR}/src/support/socktools.cpp ${TOP_SRC_DIR}/src/support/Messages.cpp)
+ list(REMOVE_ITEM support_sources ${support_separate})
+ lyx_const_touched_files(_allinone support_sources)
+ set(depends_moc ${support_headers})
+ set_source_files_properties(_allinone_const.C
+ PROPERTIES OBJECT_DEPENDS "${depends_moc}")
+ set_source_files_properties(_allinone_touched.C
+ PROPERTIES OBJECT_DEPENDS "${depends_moc}")
+ add_library(support ${library_type} ${_allinone_files} ${support_separate}
+ ${support_mythes_sources} ${support_linkback_sources} ${support_headers} ${dont_merge})
+endif()
+
+target_link_libraries(support ${Lyx_Boost_Libraries} ${QT_QTCORE_LIBRARY} ${ZLIB_LIBRARY})
+
+lyx_add_gcc_pch(support)
+
+if(APPLE)
+ target_link_libraries(support "objc" "-framework Appkit" "-framework CoreFoundation")
+elseif(WIN32)
+ target_link_libraries(support shlwapi psapi)
+endif()
+
+project_source_group("${GROUP_CODE}" support_sources support_headers)
+
--- /dev/null
+# This file is part of LyX, the document processor.
+# Licence details can be found in the file COPYING.
+#
+# Copyright (c) 2006-2011 Peter Kümmel, <syntheticpp@gmx.net>
+# Copyright (c) 2008-2011 Kornel Benko, <Kornel.Benko@berlin.de>
+#
+
+set(_tex2lyx tex2lyx${PROGRAM_SUFFIX})
+project(${_tex2lyx})
+
+# There is no header file lengthcommon.h
+set(LINKED_sources ${TOP_SRC_DIR}/src/lengthcommon.cpp)
+set(LINKED_headers)
+
+foreach(_src insets/InsetLayout Color Counters
+ Encoding FloatList Floating
+ Layout LayoutFile LayoutModuleList Lexer ModuleList TextClass
+ FontInfo Spacing)
+ list(APPEND LINKED_sources ${TOP_SRC_DIR}/src/${_src}.cpp)
+ list(APPEND LINKED_headers ${TOP_SRC_DIR}/src/${_src}.h)
+endforeach(_src)
+
+file(GLOB tex2lyx_sources ${TOP_SRC_DIR}/src/tex2lyx/${LYX_CPP_FILES})
+
+file(GLOB tex2lyx_headers ${TOP_SRC_DIR}/src/tex2lyx/${LYX_HPP_FILES})
+
+include_directories(BEFORE
+ ${TOP_SRC_DIR}/src/tex2lyx
+ ${TOP_SRC_DIR}/src/support/minizip
+ ${ZLIB_INCLUDE_DIR})
+
+add_definitions(-DTEX2LYX)
+
+if(NOT LYX_MERGE_FILES)
+ add_executable(${_tex2lyx} ${tex2lyx_sources} ${LINKED_sources} ${tex2lyx_headers} ${LINKED_headers})
+else()
+ lyx_const_touched_files(_allinone tex2lyx_sources)
+ lyx_const_touched_files(_allinone_linked LINKED_sources)
+ add_executable(${_tex2lyx} ${_allinone_files} ${_allinone_linked_files})
+endif()
+
+target_link_libraries(${_tex2lyx}
+ support
+ ${Lyx_Boost_Libraries}
+ ${QT_QTCORE_LIBRARY}
+ ${LIBINTL_LIBRARIES}
+ ${ICONV_LIBRARY})
+
+if(WIN32)
+ target_link_libraries(${_tex2lyx} shlwapi ole32 psapi)
+endif()
+
+if(APPLE)
+ target_link_libraries(${_tex2lyx} "-framework Carbon")
+endif()
+
+
+project_source_group("${GROUP_CODE}" tex2lyx_sources tex2lyx_headers)
+
+install(TARGETS ${_tex2lyx} DESTINATION bin)
+