From 12bd9b6b2bba50da9c3444dfb42b985ed2a6a7c1 Mon Sep 17 00:00:00 2001 From: gregory guy Date: Mon, 15 Mar 2021 15:32:40 +0100 Subject: [PATCH] Conversion to the cmake building system. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: gregory guy Signed-off-by: Slávek Banko --- CMakeLists.txt | 230 +++++++++ ConfigureChecks.cmake | 475 ++++++++++++++++++ TQtMacros.cmake | 307 +++++++++++ config.h.cmake | 20 + .../unix/endian/ConfigureChecks.cmake | 19 + config.tests/unix/ipv6/ConfigureChecks.cmake | 33 ++ .../unix/largefile/ConfigureChecks.cmake | 42 ++ config.tests/unix/stl/ConfigureChecks.cmake | 103 ++++ examples/CMakeLists.txt | 12 + examples/aclock/CMakeLists.txt | 19 + examples/action/CMakeLists.txt | 22 + examples/action/toggleaction/CMakeLists.txt | 19 + examples/addressbook/CMakeLists.txt | 21 + examples/application/CMakeLists.txt | 20 + examples/biff/CMakeLists.txt | 20 + examples/buttongroups/CMakeLists.txt | 20 + examples/canvas/CMakeLists.txt | 20 + examples/checklists/CMakeLists.txt | 20 + examples/cursor/CMakeLists.txt | 19 + examples/customlayout/CMakeLists.txt | 22 + examples/dclock/CMakeLists.txt | 20 + examples/demo/CMakeLists.txt | 48 ++ include/ntqconfig.h.cmake | 23 + include/ntqmodules.h.cmake | 17 + qmake/CMakeLists.txt | 65 +++ qmake/generators/CMakeLists.txt | 36 ++ qmake/generators/mac/CMakeLists.txt | 26 + qmake/generators/mac/pbuilder_pbx.cpp | 4 + qmake/generators/makefile.cpp | 3 + qmake/generators/unix/CMakeLists.txt | 29 ++ qmake/generators/win32/CMakeLists.txt | 92 ++++ qmake/project.cpp | 3 + src/CMakeLists.txt | 98 ++++ src/canvas/CMakeLists.txt | 29 ++ src/codecs/CMakeLists.txt | 50 ++ src/dialogs/CMakeLists.txt | 49 ++ src/inputmethod/CMakeLists.txt | 31 ++ src/kernel/CMakeLists.txt | 187 +++++++ src/kernel/ntqgif.h | 4 + src/kernel/qapplication_x11.cpp | 4 +- src/moc/CMakeLists.txt | 98 ++++ src/network/CMakeLists.txt | 44 ++ src/opengl/CMakeLists.txt | 48 ++ src/sql/CMakeLists.txt | 100 ++++ src/styles/CMakeLists.txt | 80 +++ src/table/CMakeLists.txt | 30 ++ src/tools/CMakeLists.txt | 75 +++ src/tools/qconfig.cpp.cmake | 27 + src/tools/qcstring.cpp | 9 +- src/tools/qstring.cpp | 3 + src/tqt3.pc.cmake | 12 + src/widgets/CMakeLists.txt | 91 ++++ src/workspace/CMakeLists.txt | 30 ++ src/xml/CMakeLists.txt | 32 ++ tools/CMakeLists.txt | 3 + tools/assistant/CMakeLists.txt | 101 ++++ tools/assistant/lib/CMakeLists.txt | 42 ++ tools/designer/CMakeLists.txt | 3 + tools/designer/app/CMakeLists.txt | 25 + tools/designer/designer/CMakeLists.txt | 263 ++++++++++ tools/designer/editor/CMakeLists.txt | 41 ++ tools/designer/plugins/CMakeLists.txt | 3 + tools/designer/tools/CMakeLists.txt | 3 + .../designer/tools/tqtconv2ui/CMakeLists.txt | 25 + .../designer/tools/tqtcreatecw/CMakeLists.txt | 24 + tools/designer/uic/CMakeLists.txt | 41 ++ tools/designer/uilib/CMakeLists.txt | 54 ++ tools/linguist/CMakeLists.txt | 3 + tools/linguist/linguist/CMakeLists.txt | 102 ++++ tools/linguist/lrelease/CMakeLists.txt | 37 ++ tools/linguist/lupdate/CMakeLists.txt | 41 ++ tools/linguist/tqm2ts/CMakeLists.txt | 36 ++ tools/linguist/tutorial/CMakeLists.txt | 3 + tools/linguist/tutorial/tt1/CMakeLists.txt | 26 + tools/linguist/tutorial/tt2/CMakeLists.txt | 28 ++ tools/linguist/tutorial/tt3/CMakeLists.txt | 28 ++ translations/CMakeLists.txt | 5 + tutorial/CMakeLists.txt | 15 + tutorial/t1/CMakeLists.txt | 18 + tutorial/t10/CMakeLists.txt | 20 + tutorial/t11/CMakeLists.txt | 20 + tutorial/t12/CMakeLists.txt | 20 + tutorial/t13/CMakeLists.txt | 21 + tutorial/t14/CMakeLists.txt | 21 + tutorial/t15/CMakeLists.txt | 18 + tutorial/t2/CMakeLists.txt | 18 + tutorial/t3/CMakeLists.txt | 18 + tutorial/t4/CMakeLists.txt | 18 + tutorial/t5/CMakeLists.txt | 18 + tutorial/t6/CMakeLists.txt | 18 + tutorial/t7/CMakeLists.txt | 19 + tutorial/t8/CMakeLists.txt | 20 + tutorial/t9/CMakeLists.txt | 20 + 93 files changed, 4196 insertions(+), 3 deletions(-) create mode 100644 CMakeLists.txt create mode 100644 ConfigureChecks.cmake create mode 100644 TQtMacros.cmake create mode 100644 config.h.cmake create mode 100644 config.tests/unix/endian/ConfigureChecks.cmake create mode 100644 config.tests/unix/ipv6/ConfigureChecks.cmake create mode 100644 config.tests/unix/largefile/ConfigureChecks.cmake create mode 100644 config.tests/unix/stl/ConfigureChecks.cmake create mode 100644 examples/CMakeLists.txt create mode 100644 examples/aclock/CMakeLists.txt create mode 100644 examples/action/CMakeLists.txt create mode 100644 examples/action/toggleaction/CMakeLists.txt create mode 100644 examples/addressbook/CMakeLists.txt create mode 100644 examples/application/CMakeLists.txt create mode 100644 examples/biff/CMakeLists.txt create mode 100644 examples/buttongroups/CMakeLists.txt create mode 100644 examples/canvas/CMakeLists.txt create mode 100644 examples/checklists/CMakeLists.txt create mode 100644 examples/cursor/CMakeLists.txt create mode 100644 examples/customlayout/CMakeLists.txt create mode 100644 examples/dclock/CMakeLists.txt create mode 100644 examples/demo/CMakeLists.txt create mode 100644 include/ntqconfig.h.cmake create mode 100644 include/ntqmodules.h.cmake create mode 100644 qmake/CMakeLists.txt create mode 100644 qmake/generators/CMakeLists.txt create mode 100644 qmake/generators/mac/CMakeLists.txt create mode 100644 qmake/generators/unix/CMakeLists.txt create mode 100644 qmake/generators/win32/CMakeLists.txt create mode 100644 src/CMakeLists.txt create mode 100644 src/canvas/CMakeLists.txt create mode 100644 src/codecs/CMakeLists.txt create mode 100644 src/dialogs/CMakeLists.txt create mode 100644 src/inputmethod/CMakeLists.txt create mode 100644 src/kernel/CMakeLists.txt create mode 100644 src/moc/CMakeLists.txt create mode 100644 src/network/CMakeLists.txt create mode 100644 src/opengl/CMakeLists.txt create mode 100644 src/sql/CMakeLists.txt create mode 100644 src/styles/CMakeLists.txt create mode 100644 src/table/CMakeLists.txt create mode 100644 src/tools/CMakeLists.txt create mode 100644 src/tools/qconfig.cpp.cmake create mode 100644 src/tqt3.pc.cmake create mode 100644 src/widgets/CMakeLists.txt create mode 100644 src/workspace/CMakeLists.txt create mode 100644 src/xml/CMakeLists.txt create mode 100644 tools/CMakeLists.txt create mode 100644 tools/assistant/CMakeLists.txt create mode 100644 tools/assistant/lib/CMakeLists.txt create mode 100644 tools/designer/CMakeLists.txt create mode 100644 tools/designer/app/CMakeLists.txt create mode 100644 tools/designer/designer/CMakeLists.txt create mode 100644 tools/designer/editor/CMakeLists.txt create mode 100644 tools/designer/plugins/CMakeLists.txt create mode 100644 tools/designer/tools/CMakeLists.txt create mode 100644 tools/designer/tools/tqtconv2ui/CMakeLists.txt create mode 100644 tools/designer/tools/tqtcreatecw/CMakeLists.txt create mode 100644 tools/designer/uic/CMakeLists.txt create mode 100644 tools/designer/uilib/CMakeLists.txt create mode 100644 tools/linguist/CMakeLists.txt create mode 100644 tools/linguist/linguist/CMakeLists.txt create mode 100644 tools/linguist/lrelease/CMakeLists.txt create mode 100644 tools/linguist/lupdate/CMakeLists.txt create mode 100644 tools/linguist/tqm2ts/CMakeLists.txt create mode 100644 tools/linguist/tutorial/CMakeLists.txt create mode 100644 tools/linguist/tutorial/tt1/CMakeLists.txt create mode 100644 tools/linguist/tutorial/tt2/CMakeLists.txt create mode 100644 tools/linguist/tutorial/tt3/CMakeLists.txt create mode 100644 translations/CMakeLists.txt create mode 100644 tutorial/CMakeLists.txt create mode 100644 tutorial/t1/CMakeLists.txt create mode 100644 tutorial/t10/CMakeLists.txt create mode 100644 tutorial/t11/CMakeLists.txt create mode 100644 tutorial/t12/CMakeLists.txt create mode 100644 tutorial/t13/CMakeLists.txt create mode 100644 tutorial/t14/CMakeLists.txt create mode 100644 tutorial/t15/CMakeLists.txt create mode 100644 tutorial/t2/CMakeLists.txt create mode 100644 tutorial/t3/CMakeLists.txt create mode 100644 tutorial/t4/CMakeLists.txt create mode 100644 tutorial/t5/CMakeLists.txt create mode 100644 tutorial/t6/CMakeLists.txt create mode 100644 tutorial/t7/CMakeLists.txt create mode 100644 tutorial/t8/CMakeLists.txt create mode 100644 tutorial/t9/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 00000000..95596961 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,230 @@ +############################################ +# # +# Improvements and feedbacks are welcome # +# # +# This file is released under GPL >= 3 # +# # +############################################ + + +cmake_minimum_required( VERSION 3.5 ) + + +#### general package setup + +project( tqt3 ) + +set( PACKAGE ${PROJECT_NAME} ) +set( PACKAGE_VERSION 3.5.0 ) + + +#### include essential cmake modules + +include( FindPkgConfig ) +include( CheckFunctionExists ) +include( CheckIncludeFile ) +include( CheckLibraryExists ) +include( CheckCSourceCompiles ) +include( CheckCXXSourceCompiles ) +include( GNUInstallDirs OPTIONAL ) + + +#### include our cmake modules + +include( TDEMacros ) +include( TQtMacros.cmake ) + + +##### set version number ######################## + +tde_set_project_version() + + +##### setup install paths + +include( TDESetupPaths ) +tde_setup_paths( ) + +if( CMAKE_INSTALL_LIBDIR ) + set( SYSTEM_LIBDIR "${CMAKE_INSTALL_LIBDIR}" ) +else() + set( SYSTEM_LIBDIR "lib${LIB_SUFFIX}" ) +endif() + +set( QT_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" CACHE STRING "install path" ) +set( QT_INSTALL_BINS "${CMAKE_INSTALL_PREFIX}/bin" CACHE STRING "executables path (bin)" ) +set( QT_INSTALL_LIBS "${CMAKE_INSTALL_PREFIX}/${SYSTEM_LIBDIR}" CACHE STRING "libraries path (lib)" ) +set( QT_INSTALL_PLUGINS "${CMAKE_INSTALL_PREFIX}/${SYSTEM_LIBDIR}/${PROJECT_NAME}/plugins" CACHE STRING "plugins path" ) +set( QT_INSTALL_HEADERS "${CMAKE_INSTALL_PREFIX}/include/${PROJECT_NAME}" CACHE STRING "headers path" ) +set( QT_INSTALL_SHARE "${CMAKE_INSTALL_PREFIX}/share" CACHE STRING "data root path" ) +set( QT_INSTALL_DATA "${CMAKE_INSTALL_PREFIX}/share/${PROJECT_NAME}" CACHE STRING "data path" ) +set( QT_INSTALL_DOCS "${CMAKE_INSTALL_PREFIX}/share/${PROJECT_NAME}/doc" CACHE STRING "documentation path" ) +set( QT_INSTALL_TRANSLATIONS "${CMAKE_INSTALL_PREFIX}/share/${PROJECT_NAME}/translations" CACHE STRING "translations path" ) +set( QT_INSTALL_SYSCONF "/etc/${PROJECT_NAME}" CACHE STRING "config path" ) + + +##### optional stuff + +option( WITH_ALL_OPTIONS "Enable all optional support" ON ) +option( WITH_GCC_VISIBILITY "Enable fvisibility and fvisibility-inlines-hidden" OFF ) +option( WITH_IMMODULE_EXTENSIONS "Enable immodule extensions support" OFF ) # break ABI +option( WITH_STL "Enable c++ stl support" ${WITH_ALL_OPTIONS} ) +option( WITH_IPV6 "Enable IPv6 support" ${WITH_ALL_OPTIONS} ) +option( WITH_CUPS "Enable cups support" ${WITH_ALL_OPTIONS} ) +option( WITH_SOUND "Enable sound support with Nas" ${WITH_ALL_OPTIONS} ) +option( WITH_GLIBMAINLOOP "Enable Glib support" ${WITH_ALL_OPTIONS} ) +option( WITH_XFT "Enable Xft support" ${WITH_ALL_OPTIONS} ) +option( WITH_XSHAPE "Enable XShape support" ${WITH_ALL_OPTIONS} ) +option( WITH_TABLET "Enable tablet support" ${WITH_ALL_OPTIONS} ) +option( WITH_XINERAMA "Enable Xinerame support" ${WITH_ALL_OPTIONS} ) +option( WITH_XRANDR "Enable Xrandr support" ${WITH_ALL_OPTIONS} ) +option( WITH_XRENDER "Enable XRender support" ${WITH_ALL_OPTIONS} ) +option( WITH_XSYNC "Enable Xsync support" ${WITH_ALL_OPTIONS} ) +option( WITH_XKB "Enable X KeyBoard support" ${WITH_ALL_OPTIONS} ) +option( WITH_SM "Enable Session management support" ${WITH_ALL_OPTIONS} ) +option( WITH_XCURSOR "Enable XCursor support" ${WITH_ALL_OPTIONS} ) +option( WITH_LIBMNG "Enable libmng support" ${WITH_ALL_OPTIONS} ) +option( WITH_JPEG "Enable jpeg support" ${WITH_ALL_OPTIONS} ) +option( WITH_PNG "Enable libpng support" ${WITH_ALL_OPTIONS} ) +option( WITH_TQTGIF "Enable TQT gif support" ${WITH_ALL_OPTIONS} ) + + +##### user requested build + +set( TQT_CONFIG "full-config" CACHE STRING "Enable tqt fonctionalities" ) #choices: minimal-config|small-config|medium-config|large-config|full-config + +option( BUILD_ALL "Build all" ON ) +option( BUILD_LIB "Build the tqt library itself" ${BUILD_ALL} ) +option( BUILD_TQMAKE "Build the tqmake executable" ${BUILD_ALL} ) +option( BUILD_TMOC "Build the tmoc executable" ${BUILD_ALL} ) +option( BUILD_TOOLS "Build various other tools" ${BUILD_ALL} ) +option( BUILD_TUTORIAL "Build the tutorials" ${BUILD_ALL} ) +option( BUILD_EXAMPLE "Build the examples" ${BUILD_ALL} ) +option( BUILD_TRANSLATIONS "Build translations" ${BUILD_ALL} ) + + +##### user requested tqt modules + +option( WITH_MODULE_ALL "Build all modules" ON ) +option( WITH_MODULE_TOOLS "Build the tools module" ${WITH_MODULE_ALL} ) +option( WITH_MODULE_KERNEL "Build the kernel module" ${WITH_MODULE_ALL} ) +option( WITH_MODULE_WIDGETS "Build the widgets module" ${WITH_MODULE_ALL} ) +option( WITH_MODULE_DIALOGS "Build the dialog module" ${WITH_MODULE_ALL} ) +option( WITH_MODULE_WORKSPACE "Build the worspace module" ${WITH_MODULE_ALL} ) +option( WITH_MODULE_INPUTMETHOD "Build the inputmethode module" ${WITH_MODULE_ALL} ) +option( WITH_MODULE_NETWORK "Build the network module" ${WITH_MODULE_ALL} ) +option( WITH_MODULE_CANVAS "Build the canvas module" ${WITH_MODULE_ALL} ) +option( WITH_MODULE_TABLE "Build the table module" ${WITH_MODULE_ALL} ) +option( WITH_MODULE_XML "Build the xml module" ${WITH_MODULE_ALL} ) +option( WITH_MODULE_OPENGL "Build the OpenGL module" ${WITH_MODULE_ALL} ) +option( WITH_MODULE_STYLES "Build the styles module" ${WITH_MODULE_ALL} ) +option( WITH_MODULE_SQL "Build the SQL module" ${WITH_MODULE_ALL} ) + + +##### user requested styles: + +## Motif style is mandatory for CDE, MotifPlus and SGI builds +## Windows style is mandatory for Platinum and Interlace (experimental, OFF by default) builds + +option( WITH_STYLE_ALL "Build tqt3 styles" ${WITH_MODULE_STYLES} ) +option( WITH_STYLE_MOTIF "Build Motif style" ${WITH_STYLE_ALL} ) +option( WITH_STYLE_CDE "Build CDE style" ${WITH_STYLE_ALL} ) +option( WITH_STYLE_MOTIFPLUS "Build Motif plus style" ${WITH_STYLE_ALL} ) +option( WITH_STYLE_SGI "Build SGI style" ${WITH_STYLE_ALL} ) +option( WITH_STYLE_WINDOWS "Build Windows style" ${WITH_STYLE_ALL} ) +option( WITH_STYLE_PLATINIUM "Build platinium style" ${WITH_STYLE_ALL} ) +option( WITH_STYLE_INTERLACE "Build interlace style" OFF ) + + +##### user requested sql modules + +option( BUILD_SQL_PLUGIN_ALL "Build all sql plugins" ${WITH_MODULE_SQL} ) +option( BUILD_SQL_PLUGIN_PSQL "Build plugin for PostgreSQL" ${BUILD_SQL_PLUGIN_ALL} ) +option( BUILD_SQL_PLUGIN_MYSQL "Build plugin for MySQL" ${BUILD_SQL_PLUGIN_ALL} ) +option( BUILD_SQL_PLUGIN_ODBC "Build plugin for ODBC" ${BUILD_SQL_PLUGIN_ALL} ) +option( BUILD_SQL_PLUGIN_IBASE "Build plugin for Firebird" ${BUILD_SQL_PLUGIN_ALL} ) +#option( BUILD_SQL_PLUGIN_SQLITE "Build plugin for SQLite" ${BUILD_SQL_PLUGIN_ALL} ) +option( BUILD_SQL_PLUGIN_SQLITE3 "Build plugin for SQLite3" ${BUILD_SQL_PLUGIN_ALL} ) + + +option( WITH_SQL_DRIVER_ALL "Build all sql drivers" OFF ) +option( WITH_SQL_DRIVER_PSQL "Build support for PostgreSQL" ${WITH_SQL_DRIVER_ALL} ) +option( WITH_SQL_DRIVER_MYSQL "Build support for MySQL" ${WITH_SQL_DRIVER_ALL} ) +option( WITH_SQL_DRIVER_ODBC "Build support for ODBC" ${WITH_SQL_DRIVER_ALL} ) +option( WITH_SQL_DRIVER_IBASE "Build support for Firebird" ${WITH_SQL_DRIVER_ALL} ) +#option( WITH_SQL_DRIVER_SQLITE "Build support for SQLite" ${WITH_SQL_DRIVER_ALL} ) +option( WITH_SQL_DRIVER_SQLITE3 "Build support for SQLite3" ${WITH_SQL_DRIVER_ALL} ) + + +##### tutorials + +option( BUILD_TUTORIAL_ALL "Build all tutorials" ${BUILD_TUTORIAL} ) +option( BUILD_TUTORIAL_1 "Build tutorial t1" ${BUILD_TUTORIAL_ALL} ) +option( BUILD_TUTORIAL_2 "Build tutorial t2" ${BUILD_TUTORIAL_ALL} ) +option( BUILD_TUTORIAL_3 "Build tutorial t3" ${BUILD_TUTORIAL_ALL} ) +option( BUILD_TUTORIAL_4 "Build tutorial t4" ${BUILD_TUTORIAL_ALL} ) +option( BUILD_TUTORIAL_5 "Build tutorial t5" ${BUILD_TUTORIAL_ALL} ) +option( BUILD_TUTORIAL_6 "Build tutorial t6" ${BUILD_TUTORIAL_ALL} ) +option( BUILD_TUTORIAL_7 "Build tutorial t7" ${BUILD_TUTORIAL_ALL} ) +option( BUILD_TUTORIAL_8 "Build tutorial t8" ${BUILD_TUTORIAL_ALL} ) +option( BUILD_TUTORIAL_9 "Build tutorial t9" ${BUILD_TUTORIAL_ALL} ) +option( BUILD_TUTORIAL_10 "Build tutorial t10" ${BUILD_TUTORIAL_ALL} ) +option( BUILD_TUTORIAL_11 "Build tutorial t11" ${BUILD_TUTORIAL_ALL} ) +option( BUILD_TUTORIAL_12 "Build tutorial t12" ${BUILD_TUTORIAL_ALL} ) +option( BUILD_TUTORIAL_13 "Build tutorial t13" ${BUILD_TUTORIAL_ALL} ) +option( BUILD_TUTORIAL_14 "Build tutorial t14" ${BUILD_TUTORIAL_ALL} ) +option( BUILD_TUTORIAL_15 "Build tutorial t15" ${BUILD_TUTORIAL_ALL} ) + + +###### examples + +option( BUILD_EXAMPLE_ALL "Build the examples" ${BUILD_EXAMPLE} ) +option( BUILD_EXAMPLE_ACLOCK "Build example aclock" ${BUILD_EXAMPLE_ALL} ) +option( BUILD_EXAMPLE_ACTION "Build example action" ${BUILD_EXAMPLE_ALL} ) +option( BUILD_EXAMPLE_ADDRESSBOOK "Build example addressbook" ${BUILD_EXAMPLE_ALL} ) +option( BUILD_EXAMPLE_APPLICATION "Build example application" ${BUILD_EXAMPLE_ALL} ) +option( BUILD_EXAMPLE_BIFF "Build example biff" ${BUILD_EXAMPLE_ALL} ) +option( BUILD_EXAMPLE_BUTTONGROUPS "Build example buttongroups" ${BUILD_EXAMPLE_ALL} ) +#option( BUILD_EXAMPLE_CANVAS "Build example canvas" ${BUILD_EXAMPLE_ALL} ) +option( BUILD_EXAMPLE_CHECKLISTS "Build example checklists" ${BUILD_EXAMPLE_ALL} ) +option( BUILD_EXAMPLE_CURSOR "Build example cursor" ${BUILD_EXAMPLE_ALL} ) +option( BUILD_EXAMPLE_CUSTOMLAYOUT "Build example customlayout" ${BUILD_EXAMPLE_ALL} ) +option( BUILD_EXAMPLE_DCLOCK "Build example dclock" ${BUILD_EXAMPLE_ALL} ) +#option( BUILD_EXAMPLE_DEMO "Build example demo" ${BUILD_EXAMPLE_ALL} ) + + +##### configure checks + +include( ConfigureChecks.cmake ) +include( config.tests/unix/endian/ConfigureChecks.cmake ) # test: little/big endian +include( config.tests/unix/largefile/ConfigureChecks.cmake ) # test: large lifes +include( config.tests/unix/stl/ConfigureChecks.cmake ) # test: stl supported +include( config.tests/unix/ipv6/ConfigureChecks.cmake ) # test: IPv6 network + + +###### global compiler settings + +add_definitions( -DHAVE_CONFIG_H ) + +set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${TQT_CXX_FLAGS}" ) +set( CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-undefined" ) +set( CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--no-undefined" ) + + +##### directories + +add_subdirectory( src ) +tde_conditional_add_subdirectory( BUILD_TQMAKE qmake ) +tde_conditional_add_subdirectory( BUILD_TMOC src/moc ) +tde_conditional_add_subdirectory( BUILD_TOOLS tools ) +tde_conditional_add_subdirectory( BUILD_TUTORIAL tutorial ) +tde_conditional_add_subdirectory( BUILD_EXAMPLE examples ) +tde_conditional_add_subdirectory( BUILD_TRANSLATIONS translations ) + + +##### write configure files + +configure_file( config.h.cmake config.h @ONLY ) +configure_file( src/tools/qconfig.cpp.cmake src/tools/qconfig.cpp @ONLY ) +configure_file( include/ntqconfig.h.cmake include/ntqconfig.h @ONLY ) +configure_file( include/ntqmodules.h.cmake include/ntqmodules.h @ONLY ) diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake new file mode 100644 index 00000000..b06b636d --- /dev/null +++ b/ConfigureChecks.cmake @@ -0,0 +1,475 @@ +########################################### +# # +# Improvements and feedback are welcome # +# # +# This file is released under GPL >= 3 # +# # +########################################### + +# required stuff + +tde_setup_architecture_flags() + + +##### check for gcc visibility support + +if( WITH_GCC_VISIBILITY ) + tde_setup_gcc_visibility() +endif( WITH_GCC_VISIBILITY ) + + +##### TQT gif support + +if( WITH_TQTGIF ) + set( BUILTIN_GIF_READER QT_BUILTIN_GIF_READER ) + set( QT_BUILTIN_GIF_READER 1 ) +endif( WITH_TQTGIF ) + + +##### check for fontconfig + +pkg_search_module( LIBFONTCONFIG fontconfig ) + +if( NOT LIBFONTCONFIG_FOUND ) + tde_message_fatal( "fontconfig is required but was not found on your system" ) +endif( NOT LIBFONTCONFIG_FOUND ) + + +##### check for libpng + +if( WITH_PNG ) + find_package( PNG ) + if( NOT PNG_FOUND ) + tde_message_fatal( "libpng support has been requested but was not found on your system" ) + endif() + else() + set( NO_IMAGEIO_PNG TQT_NO_IMAGEIO_PNG ) +endif( WITH_PNG ) + + +##### check for jpeg + +if( WITH_JPEG ) + find_package( JPEG ) + if( NOT JPEG_FOUND ) + tde_message_fatal( "jpeg support has been requested but was not found on your system" ) + endif() + else() + set( NO_IMAGEIO_JPEG TQT_NO_IMAGEIO_JPEG ) +endif( WITH_JPEG ) + + +##### check for libmng + +if( WITH_LIBMNG ) + find_path( LIBMNG_HEADER libmng.h ) + find_library( LIBMNG_LIBRARY mng ) + if( LIBMNG_HEADER AND LIBMNG_LIBRARY ) + set( LIB_MNG_INCLUDE_DIRS "${LIBMNG_HEADER}" ) + set( LIB_MNG_LIBRARIES "${LIBMNG_LIBRARY}" ) + else() + tde_message_fatal( "Libmng support has been requested but was not found on your system" ) + endif() + if( (NOT WITH_JPEG) OR (NOT JPEG_FOUND) ) + tde_message_fatal( "libmng support requires jpeg support too" ) + endif() + else() + set( NO_IMAGEIO_MNG TQT_NO_IMAGEIO_MNG ) +endif( WITH_LIBMNG ) + + +##### check for X11 + +find_package( X11 COMPONENTS SM Xcursor Xext Xfixes Xi Xinerama Xrandr Xrender Xshape Xinput XSync Xkb ) + +pkg_search_module( LIBICE ice ) + +if( NOT LIBICE_FOUND ) + tde_message_fatal( "libice is require but was not found on your system" ) +endif( NOT LIBICE_FOUND ) + +if( WITH_XCURSOR ) + check_include_file( "X11/Xcursor/Xcursor.h" HAVE_XCURSOR ) + if( NOT HAVE_XCURSOR ) + tde_message_fatal( "XCursor support has been requested but was not found on your system" ) + endif() + else() + set( NO_XCURSOR TQT_NO_XCURSOR ) +endif( WITH_XCURSOR ) + +if( WITH_SM ) + check_include_file( "X11/SM/SMlib.h" HAVE_SM ) + if( NOT HAVE_SM ) + tde_message_fatal( "Session management support has been requested but was not found on your system" ) + endif() + else() + set( NO_SM TQT_NO_SM_SUPPORT ) +endif( WITH_SM ) + +if( WITH_XKB ) + check_include_file( "X11/XKBlib.h" HAVE_XKB ) + if( NOT HAVE_XKB ) + tde_message_fatal( "X KeyBoard support has been requested but was not found on your system" ) + endif() + else() + set( NO_XKB TQT_NO_XKB ) +endif( WITH_XKB ) + +if( WITH_XSYNC ) + if( NOT X11_XSync_FOUND ) + tde_message_fatal( "Xsync support has been requested but was not found on your system" ) + endif() + else() + set( NO_XSYNC TQT_NO_XSYNC ) +endif( WITH_XSYNC ) + +if( WITH_XRENDER ) + check_include_file( "X11/extensions/Xrender.h" HAVE_XRENDER ) + if( NOT HAVE_XRENDER ) + tde_message_fatal( "Xrender support has been requested but was not found on your system" ) + endif() + else() + set( NO_XRENDER TQT_NO_XRENDER ) +endif( WITH_XRENDER ) + +if( WITH_XRANDR ) + check_include_file( "X11/extensions/Xrandr.h" HAVE_XRANDR ) + if( NOT HAVE_XRANDR ) + tde_message_fatal( "Xrandr support has been requested but was not found on your system" ) + endif() + else() + set( NO_XRANDR TQT_NO_XRANDR ) +endif( WITH_XRANDR ) + +if( WITH_XINERAMA ) + check_include_file( "X11/extensions/Xinerama.h" HAVE_XINERAMA ) + if( NOT HAVE_XINERAMA ) + tde_message_fatal( "Xinerame support has been requested but was not found on your system" ) + endif() + else() + set( NO_XINERAMA TQT_NO_XINERAMA ) +endif( WITH_XINERAMA ) + +if( WITH_TABLET ) + check_include_file( "X11/extensions/XInput.h" HAVE_XINPUT ) + if( X11_Xinput_FOUND ) + set( TABLET_SUPPORT QT_TABLET_SUPPORT ) + else() + tde_message_fatal( "Tablet support has been requested but XInput was not found on your system" ) + endif() +endif( WITH_TABLET ) + + +if( WITH_XSHAPE ) + check_include_file( "X11/extensions/shape.h" HAVE_SHAPE ) + if( NOT HAVE_SHAPE ) + tde_message_fatal( "X11 shape extension support has been requested but was not found on your system" ) + endif() + else() + set( NO_SHAPE TQT_NO_SHAPE ) +endif( WITH_XSHAPE ) + +if( WITH_XFT ) + check_include_file( "X11/Xft/Xft2.h" HAVE_XFT2 ) + if( HAVE_XFT2 ) + set( USE_XFT2_HEADER QT_USE_XFT2_HEADER ) + set( XFT2 QT_XFT2 ) + endif() + + if( NOT X11_Xft_FOUND ) + tde_message_fatal( "libXft support has been requested but was not found on your system" ) + endif() + else() + set( NO_XFTFREETYPE TQT_NO_XFTFREETYPE ) +endif( WITH_XFT ) + + +##### check for glib + +if( WITH_GLIBMAINLOOP ) + pkg_search_module( GLIB2 glib-2.0 ) + if( GLIB2_FOUND ) + pkg_search_module( GTHREAD2 gthread-2.0 ) + if( NOT GTHREAD2_FOUND ) + tde_message_fatal( "gthread-2.0 is required but was not found on your system" ) + endif() + set( USE_GLIBMAINLOOP QT_USE_GLIBMAINLOOP ) + else() + tde_message_fatal( "glib-2.0 support has been requested but not found on your system" ) + endif() +endif( WITH_GLIBMAINLOOP ) + + +##### check for Nas/sound + +if( WITH_SOUND ) + find_path( NAS_INCLUDE_DIRS "audio/audiolib.h" ) + find_library( NAS_LIBRARIES audio ) + + if( NOT NAS_INCLUDE_DIRS AND NOT NAS_LIBRARIES ) + tde_message_fatal( "Sound support has been requested but Nas was not found on your system" ) + else() + set( NAS_SUPPORT QT_NAS_SUPPORT ) + endif() + else() + set( NO_SOUND TQT_NO_SOUND ) +endif( WITH_SOUND ) + + +##### check for libtirpc + +check_include_file( "rpcsvc/ypclnt.h" HAVE_YPCLN_H ) + +if( HAVE_YPCLN_H ) + pkg_search_module( TIRPC libtirpc ) + else() + tde_message_fatal( "libtirpc headers are required, but were not found on your system" ) +endif() + + +##### check for Thread library + +find_package( Threads ) +if( Threads_FOUND ) + add_definitions( -DTQT_THREAD_SUPPORT ) +endif() + + +##### check for freetype2 + +find_package( Freetype ) +if( NOT FREETYPE_FOUND ) + tde_message_fatal( "Freetype is required, but was not found on your system" ) +endif() + + +##### check for zlib + +find_package( ZLIB ) +if( NOT ZLIB_FOUND ) + tde_message_fatal( "Zlib is required, but was not found on your system" ) + else() + check_include_file( "zlib.h" HAVE_ZLIB_H ) +endif() + + +##### check for cups + +if( WITH_CUPS ) + find_package( Cups ) + if( NOT CUPS_FOUND ) + tde_message_fatal( "Cups support have been requested, but was not found on your system" ) + endif() + else() + set( NO_CUPS TQT_NO_CUPS ) +endif() + + +##### check for uuid library + +pkg_search_module( _UUID uuid ) +if( NOT _UUID_FOUND ) + tde_message_fatal( "the uuid libary is required, but was not found on your system" ) +endif() + + +##### check headers + +check_include_file( "unistd.h" Q_OS_UNIX ) #probably not needed +check_include_file( "sys/mman.h" Q_OS_LINUX ) #probably not needed + + +##### variables to generate (include folder) + +set( _HOST_SYSTEM_PROCESSOR ${CMAKE_HOST_SYSTEM_PROCESSOR} ) +set( _HOST_SYSTEM_NAME ${CMAKE_CXX_PLATFORM_ID} ) +set( _SIZEOF_VOID_P ${CMAKE_SIZEOF_VOID_P} ) + +if( ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" AND "${CMAKE_CXX_COMPILER_VERSION}" VERSION_GREATER "4.0.0") OR ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang") ) + set( _COMPILER_NAME "g++-4.*" ) + else() + set( _COMPILER_NAME "g++-3.*" ) +endif() + + +##### immodule extensions + +if( WITH_IMMODULE_EXTENSIONS ) + set( TQT_NO_IM_EXTENSIONS 1 ) +endif() + + +##### set build for modules + +if( BUILD_TMOC ) + set( TMOC_EXECUTABLE $ CACHE FILEPATH "" ) + set( MOC_EXECUTABLE $ CACHE FILEPATH "" ) +endif() +if( BUILD_TOOLS ) + set( UIC_EXECUTABLE $ CACHE FILEPATH "" ) +endif() + +if( WITH_MODULE_STYLES ) + set( TQT_MODULE_STYLES 1 ) +endif() + +if( WITH_MODULE_TOOLS ) + set( TQT_MODULE_TOOLS 1 ) +endif() + +if( WITH_MODULE_KERNEL ) + set( TQT_MODULE_KERNEL 1 ) +endif() + +if( WITH_MODULE_WIDGETS ) + set( TQT_MODULE_WIDGETS 1 ) +endif() + +if( WITH_MODULE_DIALOGS ) + set( TQT_MODULE_DIALOGS 1 ) +endif() + +if( WITH_MODULE_WORKSPACE ) + set( TQT_MODULE_WORKSPACE 1 ) +endif() + +if( WITH_MODULE_INPUTMETHOD ) + set( TQT_MODULE_INPUTMETHOD 1 ) +endif() + +if( WITH_MODULE_NETWORK ) + set( TQT_MODULE_NETWORK 1 ) +endif() + +if( WITH_MODULE_CANVAS ) + set( TQT_MODULE_CANVAS 1 ) +endif() + +if( WITH_MODULE_TABLE ) + set( TQT_MODULE_TABLE 1 ) +endif() + +if( WITH_MODULE_XML ) + set( TQT_MODULE_XML 1 ) +endif() + +if( WITH_MODULE_OPENGL ) + set(OpenGL_GL_PREFERENCE LEGACY) + find_package( OpenGL ) + if( OPENGL_FOUND ) + set( TQT_MODULE_OPENGL 1 ) + elseif( OPENGL_GLU_FOUND ) + set( TQT_MODULE_OPENGL 1 ) + set( DLOPEN_OPENGL QT_DLOPEN_OPENGL ) + else() + tde_message_fatal( "OpenGL support is requested, but was not found on your system" ) + endif() +endif() + +if( WITH_MODULE_SQL ) + set( TQT_MODULE_SQL 1 ) +endif() + +if( (BUILD_SQL_PLUGIN_PSQL OR (WITH_MODULE_SQL AND WITH_SQL_DRIVER_PSQL)) AND NOT PostgreSQL_FOUND ) + find_package( PostgreSQL ) + if( NOT PostgreSQL_FOUND ) + tde_message_fatal( "PostgreSQL has been requested, but was not found on your system" ) + endif() +endif() + +if( (BUILD_SQL_PLUGIN_MYSQL OR (WITH_MODULE_SQL AND WITH_SQL_DRIVER_MYSQL)) AND NOT MYSQL_FOUND ) + message( STATUS "Check for MariaDB or MySQL" ) + find_program( MYSQL_CONFIG NAMES mariadb_config mysql_config ) + + if( NOT MYSQL_CONFIG ) + tde_message_fatal( "MySql support is requested but neither MySql or Mariadb have been found on your system" ) + else() + macro( _mysql_config __type __var ) + execute_process( + COMMAND ${MYSQL_CONFIG} --${__type} + OUTPUT_VARIABLE ${__var} + RESULT_VARIABLE __result + OUTPUT_STRIP_TRAILING_WHITESPACE + ) + if( _result ) + tde_message_fatal( "Unable to run ${MYSQL_CONFIG}!" ) + endif() + endmacro() + + _mysql_config( include MYSQL_INCLUDE_DIRS ) + _mysql_config( libs MYSQL_LIBRARIES ) + + if( MYSQL_INCLUDE_DIRS ) + string( REGEX REPLACE "(^| +)-I" ";" MYSQL_INCLUDE_DIRS "${MYSQL_INCLUDE_DIRS}" ) + endif() + + if( MYSQL_LIBRARIES ) + string( REGEX REPLACE "(^| +)-l" ";" MYSQL_LIBRARIES "${MYSQL_LIBRARIES}" ) + endif() + + set( MYSQL_INCLUDE_DIRS "${MYSQL_INCLUDE_DIRS}" CACHE INTERNAL "" FORCE ) + set( MYSQL_LIBRARIES "${MYSQL_LIBRARIES}" CACHE INTERNAL "" FORCE ) + set( MYSQL_FOUND 1 CACHE INTERNAL "" FORCE ) + + message( STATUS "MySQL includes ${MYSQL_INCLUDE_DIRS}" ) + message( STATUS "MySQL libraries ${MYSQL_LIBRARIES}" ) + endif( NOT MYSQL_CONFIG ) +endif() + +if( (BUILD_SQL_PLUGIN_ODBC OR (WITH_MODULE_SQL AND WITH_SQL_DRIVER_ODBC)) AND NOT ODBC_FOUND ) + pkg_search_module( ODBC odbc;libiodbc ) + if( NOT ODBC_FOUND ) + tde_message_fatal( "ODBC support has been requested, but was not found on your system" ) + endif() +endif() + +if( (BUILD_SQL_PLUGIN_IBASE OR (WITH_MODULE_SQL AND WITH_SQL_DRIVER_IBASE)) AND NOT FBCLIENT_FOUND ) + find_program( FIREBIRD_CONFIG fb_config ) + if( NOT FIREBIRD_CONFIG ) + tde_message_fatal( "IBASE support has been requested, but was not found on your system" ) + else() + macro( _fbclient_config __type __var ) + execute_process( + COMMAND ${FIREBIRD_CONFIG} --${__type} + OUTPUT_VARIABLE ${__var} + RESULT_VARIABLE __result + OUTPUT_STRIP_TRAILING_WHITESPACE + ) + if( _result ) + tde_message_fatal( "Unable to run ${FIREBIRD_CONFIG}!" ) + endif() + endmacro() + + _fbclient_config( cflags FBCLIENT_INCLUDE_DIRS ) + _fbclient_config( libs FBCLIENT_LIBRARIES ) + + if( FBCLIENT_INCLUDE_DIRS ) + string( REGEX REPLACE "(^| +)-I" ";" FBCLIENT_INCLUDE_DIRS "${FBCLIENT_INCLUDE_DIRS}" ) + endif() + + if( FBCLIENT_LIBRARIES ) + string( REGEX REPLACE "(^| +)-l" ";" FBCLIENT_LIBRARIES "${FBCLIENT_LIBRARIES}" ) + endif() + + set( FBCLIENT_INCLUDE_DIRS "${FBCLIENT_INCLUDE_DIRS}" CACHE INTERNAL "" FORCE ) + set( FBCLIENT_LIBRARIES "${FBCLIENT_LIBRARIES}" CACHE INTERNAL "" FORCE ) + set( FBCLIENT_FOUND 1 CACHE INTERNAL "" FORCE ) + + message( STATUS "FIREBIRD includes ${FBCLIENT_INCLUDE_DIRS} ") + message( STATUS "FIREBIRD libraries ${FBCLIENT_LIBRARIES} ") + endif( NOT FIREBIRD_CONFIG ) +endif() + +if( (BUILD_SQL_PLUGIN_SQLITE OR (WITH_MODULE_SQL AND WITH_SQL_DRIVER_SQLITE)) AND NOT SQLITE_FOUND ) + pkg_search_module( SQLITE sqlite ) + if( NOT SQLITE_FOUND ) + tde_message_fatal( "SQLite support has been requested, but was not found on your system" ) + endif() +endif() + +if( (BUILD_SQL_PLUGIN_SQLITE3 OR (WITH_MODULE_SQL AND WITH_SQL_DRIVER_SQLITE3)) AND NOT SQLITE3_FOUND ) + pkg_search_module( SQLITE3 sqlite3 ) + if( NOT SQLITE3_FOUND ) + tde_message_fatal( "SQLite3 support has been requested, but was not found on your system" ) + endif() +endif() diff --git a/TQtMacros.cmake b/TQtMacros.cmake new file mode 100644 index 00000000..3aa50e9f --- /dev/null +++ b/TQtMacros.cmake @@ -0,0 +1,307 @@ +################################################# +# # +# Auxiliary macros for TQt # +# # +################################################# + +include( TDEMacros ) + + +################################################# +##### +##### tqt_install_includes +##### +##### The macro is used to determine the headers that are installed, +##### while the symlinks in the binary include directory are created. +##### +##### Syntax: +##### tqt_install_includes( +##### [FILES] include_name [include_name] +##### [DESTINATION subdir] +##### [ONLY_SYMLINK] +##### ) + +macro( tqt_install_includes ) + + unset( _files ) + unset( _dest ) + unset( _only_symlink ) + set( _var _files ) + + foreach( _arg ${ARGN} ) + + # found directive "FILES" + if( "+${_arg}" STREQUAL "+FILES" ) + unset( _files ) + set( _var _files ) + set( _directive 1 ) + endif( ) + + # found directive "DESTINATION" + if( "+${_arg}" STREQUAL "+DESTINATION" ) + unset( _dest ) + set( _var _dest ) + set( _directive 1 ) + endif( ) + + # found directive "ONLY_SYMLINK" + if( "+${_arg}" STREQUAL "+ONLY_SYMLINK" ) + unset( _var ) + set( _only_symlink 1 ) + set( _directive 1 ) + endif( ) + + # collect data + if( _directive ) + unset( _directive ) + elseif( _var ) + list( APPEND ${_var} ${_arg} ) + endif( ) + + endforeach( ) + + # determine destination directory + if( NOT IS_ABSOLUTE( "${_dest}" ) ) + set( _dest "${QT_INSTALL_HEADERS}/${_dest}" ) + endif() + file( RELATIVE_PATH _dest_sub "${QT_INSTALL_HEADERS}" "${_dest}" ) + file( MAKE_DIRECTORY "${CMAKE_BINARY_DIR}/include/${_dest_sub}" ) + + # process files + foreach( _file IN LISTS _files ) + if( NOT TARGET tqt-includes ) + add_custom_target( tqt-includes + WORKING_DIRECTORY "${CMAKE_BINARY_DIR}" + COMMENT "Prepare includes..." ) + endif() + + get_filename_component( _source_name "${_file}" NAME ) + get_filename_component( _source_file "${_file}" ABSOLUTE ) + file( RELATIVE_PATH _target_name "${CMAKE_SOURCE_DIR}" "${_source_file}" ) + string( REPLACE "/" "+" _target_name "${_target_name}" ) + + file( RELATIVE_PATH _link_source "${CMAKE_BINARY_DIR}/include/${_dest_sub}" ${_source_file} ) + file( RELATIVE_PATH _link_dest "${QT_INSTALL_HEADERS}" "${_dest}/${_source_name}" ) + + if( NOT TARGET ${_target_name} ) + add_custom_command( + OUTPUT ${CMAKE_BINARY_DIR}/include/${_link_dest} + COMMAND + ${CMAKE_COMMAND} -E create_symlink + ${_link_source} ${CMAKE_BINARY_DIR}/include/${_link_dest} + COMMENT "Include file ${_link_dest}" + ) + add_custom_target( ${_target_name} + DEPENDS ${CMAKE_BINARY_DIR}/include/${_link_dest} + ) + add_dependencies( tqt-includes ${_target_name} ) + endif() + + if( NOT "${_only_symlink}" ) + install( FILES ${_file} DESTINATION ${_dest} ) + endif() + endforeach( _file ) + +endmacro( tqt_install_includes ) + + +################################################# +##### +##### tqt_automoc +##### +##### The macro is used for 'moc' processing specifically for TQt as such +##### and adding them to an existing target. +##### +##### Syntax: +##### tqt_moc( +##### [TARGET] target +##### [INCLUDES include_name [include_name]] +##### ) + +macro( tqt_automoc ) + + unset( _target ) + set( _includes AUTO ) + set( _var _target ) + + foreach( _arg ${ARGN} ) + + # found directive "TARGET" + if( "+${_arg}" STREQUAL "+TARGET" ) + unset( _target ) + set( _var _target ) + set( _directive 1 ) + endif( ) + + # found directive "INCLUDES" + if( "+${_arg}" STREQUAL "+INCLUDES" ) + unset( _includes ) + set( _var _includes ) + set( _directive 1 ) + endif( ) + + # collect data + if( _directive ) + unset( _directive ) + elseif( _var ) + list( APPEND ${_var} ${_arg} ) + endif( ) + + endforeach( ) + + # target must already exist + if( NOT TARGET ${_target} ) + tde_message_fatal( "The specified target does not exists." ) + endif() + + # search include files suitable for processing + if( _includes STREQUAL "AUTO" ) + file( GLOB _includes RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/*.h ) + foreach( _include IN LISTS _includes ) + file( READ "${CMAKE_CURRENT_SOURCE_DIR}/${_include}" _src_content ) + string( REGEX REPLACE "(^|\n)[\t ]*#[^\n]*" "" _src_content "${_src_content}" ) + string( REGEX REPLACE "(//|/\\*)[^\n]*T?Q_OBJECT[^\n]*" "" _src_content "${_src_content}" ) + if( NOT _src_content MATCHES "[\n\t ]+T?Q_OBJECT[\n\t ]+" ) + list( REMOVE_ITEM _includes "${_include}" ) + endif() + endforeach() + elseif( _includes STREQUAL "-" ) + set( _includes "" ) + endif() + + # check tmoc executable + if( NOT DEFINED TMOC_EXECUTABLE ) + find_program( TMOC_EXECUTABLE + NAMES tmoc + HINT ${QT_INSTALL_BINS} + ) + if( "${TMOC_EXECUTABLE}" STREQUAL "TMOC_EXECUTABLE-NOTFOUND" ) + tde_message_fatal( "tmoc is required but not found" ) + endif( ) + endif() + + # processing sources of specified target + get_property( _sources TARGET ${_target} PROPERTY SOURCES ) + foreach( _src_file IN LISTS _sources ) + + get_filename_component( _src_file "${_src_file}" ABSOLUTE ) + + if( EXISTS "${_src_file}" ) + + # read source file and check if have moc include + file( READ "${_src_file}" _src_content ) + string( REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _moc_includes "${_src_content}" ) + + # found included moc(s)? + if( _moc_includes ) + foreach( _moc_file ${_moc_includes} ) + + # extracting moc filename + string( REGEX MATCH "[^ <\"]+\\.moc" _moc_file "${_moc_file}" ) + set( _moc_file "${CMAKE_CURRENT_BINARY_DIR}/${_moc_file}" ) + + # create source filename + get_filename_component( _src_path "${_src_file}" ABSOLUTE ) + get_filename_component( _src_path "${_src_path}" PATH ) + get_filename_component( _src_header "${_moc_file}" NAME_WE ) + if( NOT TQT_FOUND ) + set( _moc_source "${_src_path}/${_src_header}.cpp" ) + else() + set( _moc_source "${_src_path}/${_src_header}.h" ) + endif() + + # if header doesn't exists, check in META_INCLUDES + if( NOT EXISTS "${_moc_source}" ) + unset( _found ) + foreach( _src_path ${_meta_includes} ) + set( _moc_source "${_src_path}/${_src_header}.h" ) + if( EXISTS "${_moc_source}" ) + set( _found 1 ) + break( ) + endif( ) + endforeach( ) + if( NOT _found ) + get_filename_component( _moc_file "${_moc_file}" NAME ) + tde_message_fatal( "AUTOMOC error: '${_moc_file}' cannot be generated.\n Reason: '${_src_file}.h' not found." ) + endif( ) + endif( ) + + # moc-ing source + add_custom_command( OUTPUT ${_moc_file} + COMMAND ${TMOC_EXECUTABLE} ${_moc_source} -o ${_moc_file} + DEPENDS ${_moc_source} + ) + + # create dependency between source file and moc file + set_property( SOURCE ${_src_file} APPEND PROPERTY OBJECT_DEPENDS ${_moc_file} ) + + # remove from includes for processing + file( RELATIVE_PATH _moc_source ${CMAKE_CURRENT_SOURCE_DIR} ${_moc_source} ) + list( REMOVE_ITEM _includes "${_moc_source}" ) + + endforeach( _moc_file ) + + endif( _moc_includes ) + + endif( EXISTS "${_src_file}" ) + + endforeach( _src_file ) + + # processing headers + foreach( _include_file IN LISTS _includes ) + get_filename_component( _include_name "${_include_file}" NAME_WE ) + set( _moc_file ${CMAKE_CURRENT_BINARY_DIR}/moc_${_include_name}.cpp ) + + # moc-ing source + add_custom_command( OUTPUT ${_moc_file} + COMMAND ${TMOC_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/${_include_file} -o ${_moc_file} + DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${_include_file} + ) + set_property( TARGET ${_target} APPEND PROPERTY SOURCES ${_moc_file} ) + endforeach( _include_file ) + +endmacro( tqt_automoc ) + + +################################################# +##### +##### tqt_create_translation +##### +##### The macro is used for create binary files for translations +##### +##### Syntax: +##### tqt_create_translation( +##### ) + +macro( tqt_create_translation ) + + file( GLOB _srcs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/*_*.ts ) + list( SORT _srcs ) + + # generate *.qm files + foreach( _src ${_srcs} ) + + get_filename_component( _src ${_src} ABSOLUTE ) + + get_filename_component( _out ${_src} NAME_WE ) + string( REPLACE "@" "_" _target ${_out} ) + set( _out_filename "${_out}.qm" ) + set( _install_filename "${_out}.qm" ) + + add_custom_command( + OUTPUT ${_out_filename} + COMMAND tqlrelease ${_src} -qm ${_out_filename} + COMMENT "Build translation ${_out}" + DEPENDS ${_src} + ) + add_custom_target( "${_target}-translation" ALL DEPENDS ${_out_filename} ) + install( + FILES ${CMAKE_CURRENT_BINARY_DIR}/${_out_filename} + RENAME ${_install_filename} + DESTINATION ${QT_INSTALL_TRANSLATIONS} + ) + + endforeach( ) + +endmacro( tqt_create_translation ) diff --git a/config.h.cmake b/config.h.cmake new file mode 100644 index 00000000..25349254 --- /dev/null +++ b/config.h.cmake @@ -0,0 +1,20 @@ +#define VERSION "@VERSION@" + +// Defined if you have fvisibility and fvisibility-inlines-hidden support. +#cmakedefine __KDE_HAVE_GCC_VISIBILITY 1 + +/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most + significant byte first (like Motorola and SPARC, unlike Intel). */ +#cmakedefine WORDS_BIGENDIAN @WORDS_BIGENDIAN@ + +/* Defined if you have the header file. */ +#cmakedefine Q_OS_UNIX + +/* Defined if you have the header file */ +#cmakedefine Q_OS_LINUX + +/* Defined if you have header */ +#cmakedefine HAVE_ZLIB_H 1 + +/* Defined with TQT gif support */ +#cmakedefine QT_BUILTIN_GIF_READER @QT_BUILTIN_GIF_READER@ diff --git a/config.tests/unix/endian/ConfigureChecks.cmake b/config.tests/unix/endian/ConfigureChecks.cmake new file mode 100644 index 00000000..4fe0006c --- /dev/null +++ b/config.tests/unix/endian/ConfigureChecks.cmake @@ -0,0 +1,19 @@ +########################################### +# # +# Improvements and feedback are welcome # +# # +# This file is released under GPL >= 3 # +# # +########################################### + + +##### test big/little endian + +include(TestBigEndian) +test_big_endian(WORDS_BIGENDIAN) + +if( ${WORDS_BIGENDIAN} ) + set( _ENDIAN "Q_BIG_ENDIAN" ) + else() + set( _ENDIAN "Q_LITTLE_ENDIAN" ) +endif() diff --git a/config.tests/unix/ipv6/ConfigureChecks.cmake b/config.tests/unix/ipv6/ConfigureChecks.cmake new file mode 100644 index 00000000..ca0bbddf --- /dev/null +++ b/config.tests/unix/ipv6/ConfigureChecks.cmake @@ -0,0 +1,33 @@ +########################################### +# # +# Improvements and feedback are welcome # +# # +# This file is released under GPL >= 3 # +# # +########################################### + + +##### check for IPv6 support + +if( NOT WITH_IPV6) + set( TQT_NO_IPV6 1 ) + else() + check_cxx_source_compiles(" + #include + #include + #include + + int main() + { + sockaddr_in6 tmp; + sockaddr_storage tmp2; + (void)tmp; + (void)tmp2; + return 0; + }" + IPV6_SUPPORT) + + if( NOT IPV6_SUPPORT ) + set( NO_IPV6 TQT_NO_IPV6 ) + endif() +endif( NOT WITH_IPV6 ) diff --git a/config.tests/unix/largefile/ConfigureChecks.cmake b/config.tests/unix/largefile/ConfigureChecks.cmake new file mode 100644 index 00000000..4e0cc4c5 --- /dev/null +++ b/config.tests/unix/largefile/ConfigureChecks.cmake @@ -0,0 +1,42 @@ +########################################### +# # +# Improvements and feedback are welcome # +# # +# This file is released under GPL >= 3 # +# # +########################################### + + +##### check for large file support + +check_cxx_source_compiles(" +#define _LARGEFILE_SOURCE +#define _LARGE_FILES +#define _FILE_OFFSET_BITS 64 + +#include +#include +#include +#include +#include + +int main( int, char **argv ) +{ +// check that off_t can hold 2^63 - 1 and perform basic operations... +#define OFF_T_64 (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) + if (OFF_T_64 % 2147483647 != 1) + return 1; + + // stat breaks on SCO OpenServer + struct stat buf; + stat( argv[0], &buf ); + if (!S_ISREG(buf.st_mode)) + return 2; + + FILE *file = fopen( argv[0], \"r\" ); + off_t offset = ftello( file ); + fseek( file, offset, SEEK_CUR ); + fclose( file ); + return 0; +}" +QT_LARGEFILE_SUPPORT) diff --git a/config.tests/unix/stl/ConfigureChecks.cmake b/config.tests/unix/stl/ConfigureChecks.cmake new file mode 100644 index 00000000..7176813b --- /dev/null +++ b/config.tests/unix/stl/ConfigureChecks.cmake @@ -0,0 +1,103 @@ +########################################### +# # +# Improvements and feedback are welcome # +# # +# This file is released under GPL >= 3 # +# # +########################################### + + +##### check for STL support + +if( NOT WITH_STL ) + set( TQT_NO_STL 1 ) + else() + check_cxx_source_compiles(" + #include + #include + #include + #include + #include + + int main() + { + int rval(0); + std::vector v1; + v1.push_back(0); + v1.push_back(1); + v1.push_back(2); + v1.push_back(3); + v1.push_back(4); + + if ( v1.size() != 5 ) + { + std::cout << \"stltest: vector failed size check, expected 5, got \" << v1.size(); + ++rval; + } + if ( v1.capacity() < 5 ) + { + std::cout << \"stltest: vector failed capacity check, expected >= 5, got \" << v1.capacity(); + ++rval; + } + std::vector::iterator v1it = std::find( v1.begin(), v1.end(), 99 ); + if ( v1it != v1.end() ) + { + std::cout << \"stltest: find failed, expected end(), got \" << *v1it; + ++rval; + } + v1it = std::find( v1.begin(), v1.end(), 3 ); + if ( v1it == v1.end() ) + { + std::cout << \"stltest: find failed, expected to find element, got end()\"; + ++rval; + } + std::vector v2; + std::copy( v1.begin(), v1it, std::back_inserter( v2 ) ); + if ( v2.size() != 3 ) + { + std::cout << \"stltest: copy failed, expected 3 elements, got \" << v2.size(); + ++rval; + } + std::map m1; + m1.insert( std::make_pair( 1, 2.0 ) ); + m1.insert( std::make_pair( 3, 2.0 ) ); + m1.insert( std::make_pair( 5, 2.0 ) ); + m1.insert( std::make_pair( 7, 2.0 ) ); + if ( m1.size() != 4 ) + { + std::cout << \"stltest: map failed size check, expected 4, got \" << m1.size(); + ++rval; + } + std::map::iterator m1it = m1.begin(); + for ( ; m1it != m1.end(); ++m1it ) + { + if ( (*m1it).second != 2 ) + { + std::cout << \"stltest: iterator failed, expected 2, got \" << (*m1it).second; + ++rval; + } + } + std::map< int, double > m2( m1 ); + if ( m2.size() != m1.size() ) + { + std::cout << \"stltest: map copy failed, expected \" << m1.size() << \" elements, got \" << m2.size(); + ++rval; + } + return 0; + } + // something mean to see if the compiler and C++ standard lib are good enough + template + class DummyClass + { + // everything in std namespace ? + typedef std::bidirectional_iterator_tag i; + typedef std::ptrdiff_t d; + // typename implemented ? + typedef typename std::map::iterator MyIterator; + };" + STL_SUPPORT) + + if( NOT STL_SUPPORT ) + set( TQT_NO_STL false ) + endif() +endif(NOT WITH_STL) diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt new file mode 100644 index 00000000..b81f91fd --- /dev/null +++ b/examples/CMakeLists.txt @@ -0,0 +1,12 @@ +tde_conditional_add_subdirectory( BUILD_EXAMPLE_ACLOCK aclock ) +tde_conditional_add_subdirectory( BUILD_EXAMPLE_ACTION action ) +tde_conditional_add_subdirectory( BUILD_EXAMPLE_ADDRESSBOOK addressbook ) +tde_conditional_add_subdirectory( BUILD_EXAMPLE_APPLICATION application ) +tde_conditional_add_subdirectory( BUILD_EXAMPLE_BIFF biff ) +tde_conditional_add_subdirectory( BUILD_EXAMPLE_BUTTONGROUPS buttongroups ) +tde_conditional_add_subdirectory( BUILD_EXAMPLE_CANVAS canvas ) +tde_conditional_add_subdirectory( BUILD_EXAMPLE_CHECKLISTS checklists ) +tde_conditional_add_subdirectory( BUILD_EXAMPLE_CURSOR cursor ) +tde_conditional_add_subdirectory( BUILD_EXAMPLE_CUSTOMLAYOUT customlayout ) +tde_conditional_add_subdirectory( BUILD_EXAMPLE_DCLOCK dclock ) +tde_conditional_add_subdirectory( BUILD_EXAMPLE_DEMO demo ) diff --git a/examples/aclock/CMakeLists.txt b/examples/aclock/CMakeLists.txt new file mode 100644 index 00000000..aad0e781 --- /dev/null +++ b/examples/aclock/CMakeLists.txt @@ -0,0 +1,19 @@ +include_directories( + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### aclock (executable) + +tde_add_executable( aclock + + SOURCES + aclock.cpp + main.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( aclock ) diff --git a/examples/action/CMakeLists.txt b/examples/action/CMakeLists.txt new file mode 100644 index 00000000..5f2bf4ad --- /dev/null +++ b/examples/action/CMakeLists.txt @@ -0,0 +1,22 @@ +add_subdirectory( toggleaction ) + +include_directories( + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### action (executable) + +tde_add_executable( action + + SOURCES + application.cpp + main.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( action ) diff --git a/examples/action/toggleaction/CMakeLists.txt b/examples/action/toggleaction/CMakeLists.txt new file mode 100644 index 00000000..fe2e9762 --- /dev/null +++ b/examples/action/toggleaction/CMakeLists.txt @@ -0,0 +1,19 @@ +include_directories( + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### toggleaction (executable) + +tde_add_executable( toggleaction + + SOURCES + toggleaction.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( toggleaction ) diff --git a/examples/addressbook/CMakeLists.txt b/examples/addressbook/CMakeLists.txt new file mode 100644 index 00000000..baa5a933 --- /dev/null +++ b/examples/addressbook/CMakeLists.txt @@ -0,0 +1,21 @@ +include_directories( + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### addressbook (executable) + +tde_add_executable( addressbook + + SOURCES + centralwidget.cpp + mainwindow.cpp + main.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( addressbook ) diff --git a/examples/application/CMakeLists.txt b/examples/application/CMakeLists.txt new file mode 100644 index 00000000..2cc804a0 --- /dev/null +++ b/examples/application/CMakeLists.txt @@ -0,0 +1,20 @@ +include_directories( + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### application(executable) + +tde_add_executable( application + + SOURCES + main.cpp + application.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( application ) diff --git a/examples/biff/CMakeLists.txt b/examples/biff/CMakeLists.txt new file mode 100644 index 00000000..e3a8e201 --- /dev/null +++ b/examples/biff/CMakeLists.txt @@ -0,0 +1,20 @@ +include_directories( + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### biff (executable) + +tde_add_executable( biff + + SOURCES + main.cpp + biff.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( biff ) diff --git a/examples/buttongroups/CMakeLists.txt b/examples/buttongroups/CMakeLists.txt new file mode 100644 index 00000000..96c716e6 --- /dev/null +++ b/examples/buttongroups/CMakeLists.txt @@ -0,0 +1,20 @@ +include_directories( + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### buttongroups (executable) + +tde_add_executable( buttongroups + + SOURCES + main.cpp + buttongroups.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( buttongroups ) diff --git a/examples/canvas/CMakeLists.txt b/examples/canvas/CMakeLists.txt new file mode 100644 index 00000000..c13e56c4 --- /dev/null +++ b/examples/canvas/CMakeLists.txt @@ -0,0 +1,20 @@ +include_directories( + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### canvas (executable) + +tde_add_executable( canvas + + SOURCES + main.cpp + canvas.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( canvas ) diff --git a/examples/checklists/CMakeLists.txt b/examples/checklists/CMakeLists.txt new file mode 100644 index 00000000..a6a6703e --- /dev/null +++ b/examples/checklists/CMakeLists.txt @@ -0,0 +1,20 @@ +include_directories( + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### checklists (executable) + +tde_add_executable( checklists + + SOURCES + main.cpp + checklists.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( checklists ) diff --git a/examples/cursor/CMakeLists.txt b/examples/cursor/CMakeLists.txt new file mode 100644 index 00000000..2c46d941 --- /dev/null +++ b/examples/cursor/CMakeLists.txt @@ -0,0 +1,19 @@ +include_directories( + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### cursor (executable) + +tde_add_executable( cursor + + SOURCES + cursor.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( cursor ) diff --git a/examples/customlayout/CMakeLists.txt b/examples/customlayout/CMakeLists.txt new file mode 100644 index 00000000..acff454e --- /dev/null +++ b/examples/customlayout/CMakeLists.txt @@ -0,0 +1,22 @@ +include_directories( + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### customlayout (executable) + +tde_add_executable( customlayout + + SOURCES + border.cpp + card.cpp + flow.cpp + main.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( customlayout ) diff --git a/examples/dclock/CMakeLists.txt b/examples/dclock/CMakeLists.txt new file mode 100644 index 00000000..a0fb0f32 --- /dev/null +++ b/examples/dclock/CMakeLists.txt @@ -0,0 +1,20 @@ +include_directories( + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### dclock (executable) + +tde_add_executable( dclock + + SOURCES + dclock.cpp + main.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( dclock ) diff --git a/examples/demo/CMakeLists.txt b/examples/demo/CMakeLists.txt new file mode 100644 index 00000000..8fedb63a --- /dev/null +++ b/examples/demo/CMakeLists.txt @@ -0,0 +1,48 @@ +include_directories( + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### demo (executable) + +tde_add_executable( demo + + SOURCES + frame.cpp + qthumbwheel.cpp + display.cpp + textdrawing/textedit.cpp + textdrawing/helpwindow.cpp + dnd/dnd.cpp + dnd/styledbutton.cpp + dnd/iconview.cpp + dnd/listview.cpp + i18n/i18n.cpp + ../aclock/aclock.cpp + main.cpp + dnd/dndbase.ui + graph.cpp + qasteroids/toplevel.cpp + qasteroids/view.cpp + qasteroids/ledmeter.cpp + opengl/glworkspace.cpp + opengl/glcontrolwidget.cpp + opengl/gltexobj.cpp + opengl/glbox.cpp + opengl/glgear.cpp + opengl/gllandscape.cpp + opengl/fbm.c + opengl/glinfo_x11.cpp + opengl/printpreview.ui + opengl/gllandscapeviewer.ui + sql/connect.ui + sql/sqlex.ui + widgets/widgetsbase.ui + LINK + tqt-mt-shared +) + +tqt_automoc( demo ) diff --git a/include/ntqconfig.h.cmake b/include/ntqconfig.h.cmake new file mode 100644 index 00000000..39a2fb8f --- /dev/null +++ b/include/ntqconfig.h.cmake @@ -0,0 +1,23 @@ +#pragma once + +/* License information */ +#define TQT_PRODUCT_LICENSEE "Free" +#define QT_PRODUCT_LICENSE "qt-free" + +/* Build key */ +#define TQT_BUILD_KEY "@_HOST_SYSTEM_PROCESSOR@ @_HOST_SYSTEM_NAME@ @_COMPILER_NAME@ @TQT_CONFIG@" + +/* Machine byte-order */ +#define Q_BIG_ENDIAN 4321 +#define Q_LITTLE_ENDIAN 1234 +#define Q_BYTE_ORDER @_ENDIAN@ + +/* Compile time features */ +#cmakedefine QT_LARGEFILE_SUPPORT 64 +#define TQT_POINTER_SIZE @_SIZEOF_VOID_P@ + +/* immodule extensions support */ +#cmakedefine TQT_NO_IM_EXTENSIONS 1 + +/* STL support */ +#cmakedefine TQT_NO_STL 1 diff --git a/include/ntqmodules.h.cmake b/include/ntqmodules.h.cmake new file mode 100644 index 00000000..b227570a --- /dev/null +++ b/include/ntqmodules.h.cmake @@ -0,0 +1,17 @@ +#pragma once + +/* These modules are present in this configuration of TQt */ + +#cmakedefine TQT_MODULE_STYLES 1 +#cmakedefine TQT_MODULE_TOOLS 1 +#cmakedefine TQT_MODULE_KERNEL 1 +#cmakedefine TQT_MODULE_WIDGETS 1 +#cmakedefine TQT_MODULE_DIALOGS 1 +#cmakedefine TQT_MODULE_WORKSPACE 1 +#cmakedefine TQT_MODULE_INPUTMETHOD 1 +#cmakedefine TQT_MODULE_NETWORK 1 +#cmakedefine TQT_MODULE_CANVAS 1 +#cmakedefine TQT_MODULE_TABLE 1 +#cmakedefine TQT_MODULE_XML 1 +#cmakedefine TQT_MODULE_OPENGL 1 +#cmakedefine TQT_MODULE_SQL 1 diff --git a/qmake/CMakeLists.txt b/qmake/CMakeLists.txt new file mode 100644 index 00000000..c4ebd483 --- /dev/null +++ b/qmake/CMakeLists.txt @@ -0,0 +1,65 @@ +add_subdirectory( generators ) + +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_SOURCE_DIR}/qmake/generators + ${CMAKE_SOURCE_DIR}/qmake/generators/unix + ${CMAKE_SOURCE_DIR}/qmake/generators/win32 + ${CMAKE_SOURCE_DIR}/qmake/generators/mac + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + +remove_definitions( -DTQT_THREAD_SUPPORT ) + + +##### tqmake-kernel (static) + +set( target tqmake-kernel ) +set( _SRC_ ${CMAKE_SOURCE_DIR}/src/kernel/qurl.cpp ) + +tde_add_library( ${target} STATIC_PIC + + SOURCES + ${_SRC_} + + DEPENDENCIES + tqt-includes +) + + +##### tqmake (executable) + +set( target tqmake ) +set( _SRC_ project.cpp + property.cpp + meta.cpp + main.cpp + qtmd5.cpp + option.cpp +) + +tde_add_executable( ${target} + + SOURCES + ${_SRC_} + LINK + tqmake-kernel-static + generators-static + mac-generator-static + unix-generator-static + win32-generator-static + + DESTINATION ${BIN_INSTALL_DIR} + + DEPENDENCIES + tqt-includes +) +set_property( TARGET ${target} + APPEND PROPERTY COMPILE_DEFINITIONS + HAVE_QCONFIG_CPP +) diff --git a/qmake/generators/CMakeLists.txt b/qmake/generators/CMakeLists.txt new file mode 100644 index 00000000..62e86507 --- /dev/null +++ b/qmake/generators/CMakeLists.txt @@ -0,0 +1,36 @@ +add_subdirectory( mac ) +add_subdirectory( unix ) +add_subdirectory( win32 ) + +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_SOURCE_DIR}/qmake + ${CMAKE_SOURCE_DIR}/qmake/generators/unix + ${CMAKE_SOURCE_DIR}/qmake/generators/win32 + ${CMAKE_SOURCE_DIR}/qmake/generators/mac + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### generators (static) + +set( target generators ) +set( _SRC_ makefile.cpp projectgenerator.cpp) + +tde_add_library( ${target} STATIC_PIC + + SOURCES + ${_SRC_} + + DEPENDENCIES + mac-generator-static + unix-generator-static + win32-generator-static + + DEPENDENCIES + tqt-includes +) diff --git a/qmake/generators/mac/CMakeLists.txt b/qmake/generators/mac/CMakeLists.txt new file mode 100644 index 00000000..4441d5a4 --- /dev/null +++ b/qmake/generators/mac/CMakeLists.txt @@ -0,0 +1,26 @@ +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_SOURCE_DIR}/qmake + ${CMAKE_SOURCE_DIR}/qmake/generators + ${CMAKE_SOURCE_DIR}/qmake/generators/unix + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### mac-generator (static) + +set( target mac-generator ) +set( _SRC_ metrowerks_xml.cpp pbuilder_pbx.cpp ) + +tde_add_library( ${target} STATIC_PIC + + SOURCES + ${_SRC_} + + DEPENDENCIES + tqt-includes +) diff --git a/qmake/generators/mac/pbuilder_pbx.cpp b/qmake/generators/mac/pbuilder_pbx.cpp index 329b7996..c9698f0a 100644 --- a/qmake/generators/mac/pbuilder_pbx.cpp +++ b/qmake/generators/mac/pbuilder_pbx.cpp @@ -36,6 +36,10 @@ ** **********************************************************************/ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + #include "pbuilder_pbx.h" #include "option.h" #include "meta.h" diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp index f31c7e08..fe5584a8 100644 --- a/qmake/generators/makefile.cpp +++ b/qmake/generators/makefile.cpp @@ -35,6 +35,9 @@ ** herein. ** **********************************************************************/ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif #include "makefile.h" #include "option.h" diff --git a/qmake/generators/unix/CMakeLists.txt b/qmake/generators/unix/CMakeLists.txt new file mode 100644 index 00000000..9f35f35d --- /dev/null +++ b/qmake/generators/unix/CMakeLists.txt @@ -0,0 +1,29 @@ +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_SOURCE_DIR}/qmake + ${CMAKE_SOURCE_DIR}/qmake/generators + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### unix-generator (static) + +set( target unix-generator ) +set( _SRC_ unixmake.cpp unixmake2.cpp ) + +tde_add_library( ${target} STATIC_PIC + + SOURCES + ${_SRC_} + + DEPENDENCIES + tqt-includes +) +set_property( TARGET ${target}-static + APPEND PROPERTY COMPILE_DEFINITIONS + TQT_NO_STL +) diff --git a/qmake/generators/win32/CMakeLists.txt b/qmake/generators/win32/CMakeLists.txt new file mode 100644 index 00000000..fdb01071 --- /dev/null +++ b/qmake/generators/win32/CMakeLists.txt @@ -0,0 +1,92 @@ +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_SOURCE_DIR}/qmake + ${CMAKE_SOURCE_DIR}/qmake/generators + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + +remove_definitions( -DTQT_THREAD_SUPPORT ) + + +##### tqmake-tools (static) + +set( target tqmake-tools ) +set( _SRC_ ${CMAKE_SOURCE_DIR}/src/tools/qstring.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qtextstream.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qiodevice.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qglobal.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qgdict.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qcstring.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qdatastream.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qgarray.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qbuffer.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qglist.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qptrcollection.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qfile.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qfile_unix.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qregexp.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qgvector.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qgcache.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qbitarray.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qdir.cpp + ${CMAKE_SOURCE_DIR}/src/tools/quuid.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qfileinfo_unix.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qdir_unix.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qfileinfo.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qdatetime.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qstringlist.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qmap.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qsettings.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qlocale.cpp + ${CMAKE_BINARY_DIR}/src/tools/qconfig.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qunicodetables.cpp +) + +tde_add_library( tqmake-tools STATIC_PIC + + SOURCES + ${_SRC_} + LINK_PRIVATE + ${_UUID_LIBRARIES} + + DEPENDENCIES + tqt-includes +) +set_property( TARGET ${target}-static + APPEND PROPERTY COMPILE_DEFINITIONS + TQT_NO_TEXTCODEC TQT_NO_UNICODETABLES TQT_NO_COMPONENT TQT_NO_STL TQT_NO_COMPRESS +) + + +##### win32-generator (static) + +set( target win32-generator ) +set( _SRC_ msvc_nmake.cpp + borland_bmake.cpp + winmakefile.cpp + msvc_objectmodel.cpp + mingw_make.cpp + msvc_dsp.cpp + msvc_vcproj.cpp +) + +tde_add_library( ${target} STATIC_PIC + + SOURCES + ${_SRC_} + LINK + ${_UUID_LIBRARIES} + tqmake-tools-static + + DEPENDENCIES + tqt-includes +) + +#mingw_make.cpp +#msvc_dsp.cpp +#msvc_vcproj.cpp diff --git a/qmake/project.cpp b/qmake/project.cpp index de57507e..fc297e72 100644 --- a/qmake/project.cpp +++ b/qmake/project.cpp @@ -35,6 +35,9 @@ ** herein. ** **********************************************************************/ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif #include "project.h" #include "property.h" diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt new file mode 100644 index 00000000..40a42f63 --- /dev/null +++ b/src/CMakeLists.txt @@ -0,0 +1,98 @@ + +# prepare includes + +file( GLOB_RECURSE _includes RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.h ) +list( SORT _includes ) + +unset( _private_includes ) +foreach( _include IN LISTS _includes ) + + # skip 3rdparty, attic, moc, sql drivers and obsolete includes + if( "${_include}" MATCHES "^(3rdparty/|attic/|moc/|sql/drivers/|kernel/(qt_pch|qwindow))" ) + list( REMOVE_ITEM _includes "${_include}" ) + endif() + + # split private includes + if( "${_include}" MATCHES "_p.h$" ) + list( REMOVE_ITEM _includes "${_include}" ) + list( APPEND _private_includes "${_include}" ) + endif() + +endforeach( _include ) + +if( BUILD_LIB ) + unset( _prepare_includes ) +else() + set( _prepare_includes "ONLY_SYMLINK" ) +endif() + +tqt_install_includes( ${_includes} ${_prepare_includes} ) +tqt_install_includes( ${_private_includes} DESTINATION "private" ${_prepare_includes} ) + + +if( BUILD_LIB ) + +# subdirectories + +set( tqtlib_embed "" ) + +add_subdirectory( tools ) +add_subdirectory( kernel ) +add_subdirectory( codecs ) +#add_subdirectory( moc ) + +tde_conditional_add_subdirectory( WITH_MODULE_STYLES styles ) +tde_conditional_add_subdirectory( WITH_MODULE_CANVAS canvas ) +tde_conditional_add_subdirectory( WITH_MODULE_DIALOGS dialogs ) +tde_conditional_add_subdirectory( WITH_MODULE_INPUTMETHOD inputmethod ) +tde_conditional_add_subdirectory( WITH_MODULE_TABLE table ) +tde_conditional_add_subdirectory( WITH_MODULE_WIDGETS widgets ) +tde_conditional_add_subdirectory( WITH_MODULE_WORKSPACE workspace ) +tde_conditional_add_subdirectory( WITH_MODULE_XML xml ) +tde_conditional_add_subdirectory( WITH_MODULE_NETWORK network ) +tde_conditional_add_subdirectory( WITH_MODULE_OPENGL opengl ) +tde_conditional_add_subdirectory( WITH_MODULE_SQL sql ) + + +##### tqt3 library + +configure_file( ${TDE_CMAKE_TEMPLATES}/tde_dummy_cpp.cmake dummy.cpp COPYONLY ) + +tde_add_library( tqt-mt SHARED + + SOURCES + dummy.cpp + EMBED + ${tqtlib_embed} + LINK + ${CMAKE_THREAD_LIBS_INIT} + + VERSION 3.5.0 + + DESTINATION ${LIB_INSTALL_DIR} +) + + +##### other data + +string( REGEX REPLACE "^${CMAKE_INSTALL_PREFIX}" "\${prefix}" PC_EXEC_PREFIX ${EXEC_INSTALL_PREFIX} ) +string( REGEX REPLACE "^${CMAKE_INSTALL_PREFIX}" "\${prefix}" QT_INSTALL_HEADERS ${INCLUDE_INSTALL_DIR} ) +string( REGEX REPLACE "^${CMAKE_INSTALL_PREFIX}" "\${prefix}" QT_INSTALL_LIBS ${LIB_INSTALL_DIR} ) + +configure_file( ${PROJECT_NAME}.pc.cmake ${PROJECT_NAME}.pc @ONLY ) + +install( + FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc + DESTINATION ${PKGCONFIG_INSTALL_DIR} +) + +install( + FILES + ${CMAKE_BINARY_DIR}/include/ntqconfig.h + ${CMAKE_BINARY_DIR}/include/ntqmodules.h + + DESTINATION + ${QT_INSTALL_HEADERS} +) + +endif() diff --git a/src/canvas/CMakeLists.txt b/src/canvas/CMakeLists.txt new file mode 100644 index 00000000..b130c95e --- /dev/null +++ b/src/canvas/CMakeLists.txt @@ -0,0 +1,29 @@ +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### canvas (static) + +set( target canvas ) +set( _SRC_ qcanvas.cpp ) + + +tde_add_library( ${target} STATIC_PIC + + SOURCES + ${_SRC_} + + DEPENDENCIES + tqt-includes +) + +tqt_automoc( ${target}-static ) + +list( APPEND tqtlib_embed ${target}-static ) +set( tqtlib_embed ${tqtlib_embed} PARENT_SCOPE ) diff --git a/src/codecs/CMakeLists.txt b/src/codecs/CMakeLists.txt new file mode 100644 index 00000000..b200b316 --- /dev/null +++ b/src/codecs/CMakeLists.txt @@ -0,0 +1,50 @@ +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### codecs (static) + +set( target codecs ) +set( _SRC_ qbig5codec.cpp + qeucjpcodec.cpp + qeuckrcodec.cpp + qisciicodec.cpp + qgb18030codec.cpp + qjiscodec.cpp + qjpunicode.cpp + qrtlcodec.cpp + qsjiscodec.cpp + qtextcodec.cpp + qtsciicodec.cpp + qutfcodec.cpp + qtextcodecfactory.cpp + qtextcodecplugin.cpp + qfontcncodec.cpp + qfonthkcodec.cpp + qfontjpcodec.cpp + qfontkrcodec.cpp + qfontlaocodec.cpp + qfonttwcodec.cpp +) + + +tde_add_library( ${target} STATIC_PIC + + SOURCES + ${_SRC_} + + DEPENDENCIES + tqt-includes +) + +tqt_automoc( ${target}-static ) + +list( APPEND tqtlib_embed ${target}-static ) +set( tqtlib_embed ${tqtlib_embed} PARENT_SCOPE ) diff --git a/src/dialogs/CMakeLists.txt b/src/dialogs/CMakeLists.txt new file mode 100644 index 00000000..0e85ffa3 --- /dev/null +++ b/src/dialogs/CMakeLists.txt @@ -0,0 +1,49 @@ +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${TIRPC_INCLUDE_DIRS} + ${FREETYPE_INCLUDE_DIRS} + ${CUPS_INCLUDE_DIR} +) + +link_directories() + + +##### dialogs (static) + +set( target dialogs ) +set( _SRC_ qprintdialog.cpp + qcolordialog.cpp + qdialog.cpp + qerrormessage.cpp + qfiledialog.cpp + qfontdialog.cpp + qmessagebox.cpp + qprogressdialog.cpp + qtabdialog.cpp + qwizard.cpp + qinputdialog.cpp +) + + +tde_add_library( ${target} STATIC_PIC + + SOURCES + ${_SRC_} + + DEPENDENCIES + tqt-includes +) + +tqt_automoc( ${target}-static ) + +list( APPEND tqtlib_embed ${target}-static ) +set( tqtlib_embed ${tqtlib_embed} PARENT_SCOPE ) + +set_property( TARGET ${target}-static + APPEND PROPERTY COMPILE_DEFINITIONS + ${NO_CUPS} +) diff --git a/src/inputmethod/CMakeLists.txt b/src/inputmethod/CMakeLists.txt new file mode 100644 index 00000000..27ef7713 --- /dev/null +++ b/src/inputmethod/CMakeLists.txt @@ -0,0 +1,31 @@ +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### inputmethod (static) + +set( target inputmethod ) +set( _SRC_ qinputcontextfactory.cpp + qinputcontextplugin.cpp +) + + +tde_add_library( ${target} STATIC_PIC + + SOURCES + ${_SRC_} + + DEPENDENCIES + tqt-includes +) + +tqt_automoc( ${target}-static ) + +list( APPEND tqtlib_embed ${target}-static ) +set( tqtlib_embed ${tqtlib_embed} PARENT_SCOPE ) diff --git a/src/kernel/CMakeLists.txt b/src/kernel/CMakeLists.txt new file mode 100644 index 00000000..4a1d6408 --- /dev/null +++ b/src/kernel/CMakeLists.txt @@ -0,0 +1,187 @@ +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${FREETYPE_INCLUDE_DIRS} + ${CMAKE_SOURCE_DIR}/src/3rdparty/opentype + ${NAS_INCLUDE_DIRS} + ${GLIB2_INCLUDE_DIRS} + ${X11_X11_INCLUDE_PATH} + ${X11_Xutil_INCLUDE_PATH} + ${X11_Xft_INCLUDE_PATH} + ${X11_Xshape_INCLUDE_PATH} + ${X11_Xinput_INCLUDE_PATH} + ${X11_Xinerama_INCLUDE_PATH} + ${X11_Xrandr_INCLUDE_PATH} + ${X11_Xrender_INCLUDE_PATH} + ${X11_XSync_INCLUDE_PATH} + ${X11_Xkblib_INCLUDE_PATH} + ${X11_SM_INCLUDE_PATH} + ${X11_Xcursor_INCLUDE_PATH} + ${LIB_MNG_INCLUDE_DIRS} + ${JPEG_INCLUDE_DIR} + ${PNG_INCLUDE_DIRS} + ${ZLIB_INCLUDE_DIRS} +) + +link_directories() + + +##### kernel (static) + +set( target kernel ) +set( _SRC_ qtaddons_x11.cpp + tqttdeintegration_x11.cpp + qapplication_x11.cpp + qclipboard_x11.cpp + qcolor_x11.cpp + qcursor_x11.cpp + qdnd_x11.cpp + qdesktopwidget_x11.cpp + qfont_x11.cpp + qinputcontext.cpp + qinputcontext_x11.cpp + qmotifdnd_x11.cpp + qpixmap_x11.cpp + qpaintdevice_x11.cpp + qpainter_x11.cpp + qregion_x11.cpp + qsound_x11.cpp + qwidget_x11.cpp + qwidgetcreate_x11.cpp + qfontengine_x11.cpp + qprinter_unix.cpp + qpsprinter.cpp + qprocess_unix.cpp + qthread_unix.cpp + qabstractlayout.cpp + qucomextra.cpp + qaccel.cpp + qapplication.cpp + qasyncimageio.cpp + qasyncio.cpp + qbitmap.cpp + qclipboard.cpp + qcolor.cpp + qcolor_p.cpp + qconnection.cpp + qcursor.cpp + qdragobject.cpp + qdrawutil.cpp + qdropsite.cpp + qevent.cpp + qeventloop.cpp + qfocusdata.cpp + qfont.cpp + qfontdatabase.cpp + qguardedptr.cpp + qiconset.cpp + qimage.cpp + qimageformatplugin.cpp + qkeysequence.cpp + qlayout.cpp + qlayoutengine.cpp + qtranslator.cpp + qmetaobject.cpp + qmime.cpp + qmovie.cpp + qnetworkprotocol.cpp + qobject.cpp + qobjectcleanuphandler.cpp + qpainter.cpp + qpalette.cpp + qpaintdevicemetrics.cpp + qpicture.cpp + qpixmap.cpp + qpixmapcache.cpp + qpointarray.cpp + qpoint.cpp + qpolygonscanner.cpp + qprinter.cpp + qprocess.cpp + qrect.cpp + qregion.cpp + qsignal.cpp + qsignalmapper.cpp + qsize.cpp + qsizegrip.cpp + qstyle.cpp + qsocketnotifier.cpp + qsound.cpp + qstylesheet.cpp + qthread.cpp + qtimer.cpp + qurl.cpp + qlocalfs.cpp + qurloperator.cpp + qurlinfo.cpp + qwidget.cpp + qwmatrix.cpp + qvariant.cpp + qrichtext.cpp + qinternal.cpp + qrichtext_p.cpp + qgplugin.cpp + qsimplerichtext.cpp + qscriptengine.cpp + qtextlayout.cpp + qtextengine.cpp + qmngio.cpp + qjpegio.cpp + qpngio.cpp + qaccessible.cpp +) +if( WITH_GLIBMAINLOOP ) + list( APPEND _SRC_ qeventloop_x11_glib.cpp qeventloop_unix_glib.cpp ) + else() + list( APPEND _SRC_ qeventloop_x11.cpp qeventloop_unix.cpp ) +endif() + +if( WITH_XFT ) + list( APPEND _SRC_ ../3rdparty/opentype/ftxopentype.c ) +endif() + + +tde_add_library( ${target} STATIC_PIC + + SOURCES + ${_SRC_} + LINK + ${LIBICE_LIBRARIES} + ${NAS_LIBRARIES} + ${X11_X11_LIB} + ${X11_Xft_LIB} + ${X11_Xext_LIB} + ${X11_Xinput_LIB} + ${X11_Xinerama_LIB} + ${X11_Xrandr_LIB} + ${X11_Xrender_LIB} + ${X11_SM_LIB} + ${X11_Xcursor_LIB} + ${LIB_MNG_LIBRARIES} + ${JPEG_LIBRARIES} + ${PNG_LIBRARIES} + ${ZLIB_LIBRARIES} + ${LIBFONTCONFIG_LIBRARIES} + ${GLIB2_LIBRARIES} + + DEPENDENCIES + tqt-includes +) + +tqt_automoc( ${target}-static ) + +list( APPEND tqtlib_embed ${target}-static ) +set( tqtlib_embed ${tqtlib_embed} PARENT_SCOPE ) + +set_property( TARGET ${target}-static + APPEND PROPERTY COMPILE_DEFINITIONS + ${NO_SOUND} ${NAS_SUPPORT} ${USE_GLIBMAINLOOP} + ${NO_XFTFREETYPE} ${USE_XFT2_HEADER} ${NO_SHAPE} ${TABLET_SUPPORT} + ${NO_XINERAMA} ${NO_XRANDR} ${NO_XRENDER} ${NO_XSYNC} + ${NO_XKB} ${NO_SM} ${NO_XCURSOR} ${NO_IMAGEIO_MNG} + ${NO_IMAGEIO_JPEG} ${NO_IMAGEIO_PNG} ${BUILTIN_GIF_READER} + ${QT_ACCESSIBILITY_SUPPORT} +) diff --git a/src/kernel/ntqgif.h b/src/kernel/ntqgif.h index f5fee77b..5ef852ed 100644 --- a/src/kernel/ntqgif.h +++ b/src/kernel/ntqgif.h @@ -52,6 +52,10 @@ #include "ntqglobal.h" #endif // QT_H +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + #ifndef QT_BUILTIN_GIF_READER #define QT_BUILTIN_GIF_READER 0 #endif diff --git a/src/kernel/qapplication_x11.cpp b/src/kernel/qapplication_x11.cpp index 2cda2b8b..432d8f3e 100644 --- a/src/kernel/qapplication_x11.cpp +++ b/src/kernel/qapplication_x11.cpp @@ -6049,9 +6049,9 @@ bool TQETWidget::translateConfigEvent( const XEvent *event ) ; repaint( !testWFlags(WResizeNoErase) || transbg ); } - +#ifndef TQT_NO_XSYNC incrementSyncCounter(); - +#endif return TRUE; } diff --git a/src/moc/CMakeLists.txt b/src/moc/CMakeLists.txt new file mode 100644 index 00000000..fc649d84 --- /dev/null +++ b/src/moc/CMakeLists.txt @@ -0,0 +1,98 @@ +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + +remove_definitions( -DTQT_THREAD_SUPPORT ) + + +##### tmoc-tools (static) + +set( target tmoc-tools ) +set( _SRC_ ${CMAKE_SOURCE_DIR}/src/tools/qbuffer.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qptrcollection.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qcstring.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qdatastream.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qdatetime.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qfile.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qdir.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qfileinfo.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qgarray.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qgdict.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qglist.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qglobal.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qgvector.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qiodevice.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qregexp.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qstring.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qlocale.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qunicodetables.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qstringlist.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qtextstream.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qbitarray.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qmap.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qgcache.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qfile_unix.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qdir_unix.cpp + ${CMAKE_SOURCE_DIR}/src/tools/qfileinfo_unix.cpp +) + +tde_add_library( ${target} STATIC_PIC + + SOURCES + ${_SRC_} + + DEPENDENCIES + tqt-includes +) +set_property( TARGET ${target}-static + APPEND PROPERTY COMPILE_DEFINITIONS + QT_MOC TQT_NO_CODECS QT_LITE_UNICODE TQT_NO_COMPONENT TQT_NO_STL TQT_NO_COMPRESS +) + + +##### tmoc-codecs (static) + +set( target tmoc-codecs ) +set( _SRC_ ${CMAKE_SOURCE_DIR}/src/codecs/qtextcodec.cpp + ${CMAKE_SOURCE_DIR}/src/codecs/qutfcodec.cpp +) + +tde_add_library( ${target} STATIC_PIC + + SOURCES + ${_SRC_} + + DEPENDENCIES + tqt-includes +) +set_property( TARGET ${target}-static + APPEND PROPERTY COMPILE_DEFINITIONS + QT_MOC TQT_NO_CODECS QT_LITE_UNICODE TQT_NO_COMPONENT TQT_NO_STL TQT_NO_COMPRESS +) + + +##### tmoc (executable) + +set( target tmoc ) +set( _SRC_ moc_yacc.cpp ) + +tde_add_executable( ${target} + + SOURCES + ${_SRC_} + LINK + tmoc-tools-static + tmoc-codecs-static + + DEPENDENCIES + tmoc-tools-static + tmoc-codecs-static + + DESTINATION ${BIN_INSTALL_DIR} +) diff --git a/src/network/CMakeLists.txt b/src/network/CMakeLists.txt new file mode 100644 index 00000000..b56019d4 --- /dev/null +++ b/src/network/CMakeLists.txt @@ -0,0 +1,44 @@ +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_SOURCE_DIR}/src/tools +) + +link_directories() + + +##### network (static) + +set( target network ) +set( _SRC_ qdns.cpp + qftp.cpp + qhostaddress.cpp + qhttp.cpp + qnetwork.cpp + qserversocket.cpp + qsocket.cpp + qsocketdevice.cpp + qsocketdevice_unix.cpp +) + +tde_add_library( ${target} STATIC_PIC + + SOURCES + ${_SRC_} + + DEPENDENCIES + tqt-includes +) + +tqt_automoc( ${target}-static ) + +list( APPEND tqtlib_embed ${target}-static ) +set( tqtlib_embed ${tqtlib_embed} PARENT_SCOPE ) + +set_property( TARGET ${target}-static + APPEND PROPERTY COMPILE_DEFINITIONS + ${NO_IPV6} +) diff --git a/src/opengl/CMakeLists.txt b/src/opengl/CMakeLists.txt new file mode 100644 index 00000000..1ab02176 --- /dev/null +++ b/src/opengl/CMakeLists.txt @@ -0,0 +1,48 @@ +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${OPENGL_INCLUDE_DIR} + ${X11_X11_INCLUDE_PATH} + ${X11_Xutil_INCLUDE_PATH} + ${FREETYPE_INCLUDE_DIRS} + ${CMAKE_SOURCE_DIR}/src/3rdparty/opentype +) + +link_directories() + + +##### opengl (static) + +set( target opengl ) +set( _SRC_ qgl.cpp + qgl_x11.cpp + qglcolormap.cpp +) + +tde_add_library( ${target} STATIC_PIC + + SOURCES + ${_SRC_} + + LINK + ${OPENGL_gl_LIBRARY} + ${OPENGL_glu_LIBRARY} + ${X11_Xmu_LIB} + ${FREETYPE_LIBRARIES} + + DEPENDENCIES + tqt-includes +) + +tqt_automoc( ${target}-static ) + +list( APPEND tqtlib_embed ${target}-static ) +set( tqtlib_embed ${tqtlib_embed} PARENT_SCOPE ) + +set_property( TARGET ${target}-static + APPEND PROPERTY COMPILE_DEFINITIONS + ${DLOPEN_OPENGL} ${NO_XFTFREETYPE} ${XFT2} +) diff --git a/src/sql/CMakeLists.txt b/src/sql/CMakeLists.txt new file mode 100644 index 00000000..1f42df9c --- /dev/null +++ b/src/sql/CMakeLists.txt @@ -0,0 +1,100 @@ +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_SOURCE_DIR}/src/sql/drivers/cache + ${PostgreSQL_INCLUDE_DIRS} + ${MYSQL_INCLUDE_DIRS} + ${ODBC_INCLUDE_DIRS} + ${FBCLIENT_INCLUDE_DIRS} + ${SQLITE3_INCLUDE_DIRS} +) + +link_directories() + + +##### sql (static) + +set( target sql ) +set( _SRC_ qsqlquery.cpp + qsqldatabase.cpp + qsqlfield.cpp + qsqlrecord.cpp + qsqlform.cpp + qsqlcursor.cpp + qeditorfactory.cpp + qsqleditorfactory.cpp + qsqldriver.cpp + qsqlextension_p.cpp + qsqldriverplugin.cpp + qsqlerror.cpp + qsqlresult.cpp + qsqlindex.cpp + qsqlpropertymap.cpp + qsqlmanager_p.cpp + qdatatable.cpp + qdataview.cpp + qdatabrowser.cpp + qsqlselectcursor.cpp + ./drivers/cache/qsqlcachedresult.cpp +) + +set( _sql_drivers "" ) +set( _sql_libraries "" ) + +if( WITH_SQL_DRIVER_PSQL ) + list( APPEND _SRC_ drivers/psql/qsql_psql.cpp ) + list( APPEND _sql_drivers "QT_SQL_POSTGRES" ) + list( APPEND _sql_libraries ${PostgreSQL_LIBRARIES} ) +endif() +if ( WITH_SQL_DRIVER_MYSQL ) + list( APPEND _SRC_ drivers/mysql/qsql_mysql.cpp ) + list( APPEND _sql_drivers "QT_SQL_MYSQL" ) + list( APPEND _sql_libraries ${MYSQL_LIBRARIES} ) +endif() +if( WITH_SQL_DRIVER_ODBC ) + list( APPEND _SRC_ drivers/odbc/qsql_odbc.cpp ) + list( APPEND _sql_drivers "QT_SQL_ODBC" ) + list( APPEND _sql_libraries ${ODBC_LIBRARIES} ) +endif() +if( WITH_SQL_DRIVER_IBASE ) + list( APPEND _SRC_ drivers/ibase/qsql_ibase.cpp ) + list( APPEND _sql_drivers "QT_SQL_IBASE" ) + list( APPEND _sql_libraries ${FBCLIENT_LIBRARIES} ) +endif() +if( WITH_SQL_DRIVER_SQLITE2 ) + list( APPEND _SRC_ drivers/sqlite/qsql_sqlite.cpp ) + list( APPEND _sql_drivers "QT_SQL_SQLITE" ) + list( APPEND _sql_libraries ${SQLITE_LIBRARIES} ) +endif() +if( WITH_SQL_DRIVER_SQLITE3 ) + list( APPEND _SRC_ drivers/sqlite3/qsql_sqlite3.cpp ) + list( APPEND _sql_drivers "QT_SQL_SQLITE3" ) + list( APPEND _sql_libraries ${SQLITE3_LIBRARIES} ) +endif() + + +tde_add_library( ${target} STATIC_PIC + + SOURCES + ${_SRC_} + LINK + ${_sql_libraries} + + DEPENDENCIES + tqt-includes +) + +tqt_automoc( ${target}-static ) + +list( APPEND tqtlib_embed ${target}-static ) +set( tqtlib_embed ${tqtlib_embed} PARENT_SCOPE ) + +set_property( TARGET ${target}-static + APPEND PROPERTY COMPILE_DEFINITIONS + ${NO_XCURSOR} TQT_NO_MESSAGEBOX + ${_sql_drivers} +) +set_property( SOURCE qsql_psql.h APPEND PROPERTY COMPILE_DEFINITIONS QT_PLUGIN ) diff --git a/src/styles/CMakeLists.txt b/src/styles/CMakeLists.txt new file mode 100644 index 00000000..bee32d5a --- /dev/null +++ b/src/styles/CMakeLists.txt @@ -0,0 +1,80 @@ +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_SOURCE_DIR}/src/kernel +) + +link_directories() + + +##### styles (static) + +set( target styles ) +set( _SRC_ qcdestyle.cpp + qcommonstyle.cpp + qcompactstyle.cpp + qinterlacestyle.cpp + qmotifplusstyle.cpp + qmotifstyle.cpp + qplatinumstyle.cpp + qsgistyle.cpp + qstylefactory.cpp + qstyleplugin.cpp + qwindowsstyle.cpp +) + +set( _disabled_styles "" ) +list( APPEND _disabled_styles + TQT_NO_STYLE_WINDOWSXP + TQT_NO_STYLE_AQUA + TQT_NO_STYLE_POCKETPC + TQT_NO_STYLE_MAC +) + +if( WITH_STYLE_WINDOWS ) + if( NOT WITH_STYLE_INTERLACE ) + list( APPEND _disabled_styles TQT_NO_STYLE_INTERLACE ) + endif() + if( NOT WITH_STYLE_PLATINIUM ) + list( APPEND _disabled_styles TQT_NO_STYLE_PLATINUM ) + endif() + else() + tde_message_fatal( "Windows style is required for this build" ) +endif( WITH_STYLE_WINDOWS ) + +if( WITH_STYLE_MOTIF ) + if( NOT WITH_STYLE_SGI ) + list( APPEND _disabled_styles TQT_NO_STYLE_SGI ) + endif() + if( NOT WITH_STYLE_MOTIFPLUS) + list( APPEND _disabled_styles TQT_NO_STYLE_MOTIFPLUS ) + endif() + if( NOT WITH_STYLE_CDE ) + list( APPEND _disabled_styles TQT_NO_STYLE_CDE ) + endif() + else() + tde_message_fatal( "Motif style is required for this build" ) +endif( WITH_STYLE_MOTIF ) + + +tde_add_library( ${target} STATIC_PIC + + SOURCES + ${_SRC_} + + DEPENDENCIES + tqt-includes +) + +tqt_automoc( ${target}-static ) + +list( APPEND tqtlib_embed ${target}-static ) +set( tqtlib_embed ${tqtlib_embed} PARENT_SCOPE ) + +set_property( + TARGET ${target}-static + APPEND PROPERTY COMPILE_DEFINITIONS ${_disabled_styles} +) diff --git a/src/table/CMakeLists.txt b/src/table/CMakeLists.txt new file mode 100644 index 00000000..4bb6a334 --- /dev/null +++ b/src/table/CMakeLists.txt @@ -0,0 +1,30 @@ +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### table (static) + +set( target table ) +set( _SRC_ qtable.cpp +) + + +tde_add_library( ${target} STATIC_PIC + + SOURCES + ${_SRC_} + + DEPENDENCIES + tqt-includes +) + +tqt_automoc( ${target}-static ) + +list( APPEND tqtlib_embed ${target}-static ) +set( tqtlib_embed ${tqtlib_embed} PARENT_SCOPE ) diff --git a/src/tools/CMakeLists.txt b/src/tools/CMakeLists.txt new file mode 100644 index 00000000..7cb02c11 --- /dev/null +++ b/src/tools/CMakeLists.txt @@ -0,0 +1,75 @@ +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include + ${ZLIB_INCLUDE_DIRS} +) + +link_directories() + + +##### tools (static) + +set( target tools ) +set( _SRC_ qdir_unix.cpp + qfile_unix.cpp + qfileinfo_unix.cpp + qmutex_unix.cpp + qthreadstorage_unix.cpp + qwaitcondition_unix.cpp + qlibrary_unix.cpp + qbitarray.cpp + qbuffer.cpp + qcomponentfactory.cpp + qcomlibrary.cpp + qcstring.cpp + qdatastream.cpp + qdatetime.cpp + qdeepcopy.cpp + qdir.cpp + qfile.cpp + qfileinfo.cpp + qgarray.cpp + qgcache.cpp + qgdict.cpp + qglist.cpp + qglobal.cpp + qgpluginmanager.cpp + qgvector.cpp + qiodevice.cpp + qlibrary.cpp + qlocale.cpp + qmap.cpp + qmutexpool.cpp + qptrcollection.cpp + qregexp.cpp + qstring.cpp + qsemaphore.cpp + qsettings.cpp + qstringlist.cpp + qtextstream.cpp + qunicodetables.cpp + qucom.cpp + quuid.cpp + ${CMAKE_BINARY_DIR}/src/tools/qconfig.cpp +) + +tde_add_library( ${target} STATIC_PIC + + SOURCES + ${_SRC_} + LINK + ${_UUID_LIBRARIES} + ${CMAKE_DL_LIBS} + + DEPENDENCIES + tqt-includes +) + + +tqt_automoc( ${target}-static ) + +list( APPEND tqtlib_embed ${target}-static ) +set( tqtlib_embed ${tqtlib_embed} PARENT_SCOPE ) diff --git a/src/tools/qconfig.cpp.cmake b/src/tools/qconfig.cpp.cmake new file mode 100644 index 00000000..170254fb --- /dev/null +++ b/src/tools/qconfig.cpp.cmake @@ -0,0 +1,27 @@ +/* Install paths from configure */ +#include "ntqglobal.h" + +// might use nameless namespace as storage class here instead of static keyword specifier + +static const char QT_INSTALL_PREFIX[] = "qt_nstpath=@QT_INSTALL_PREFIX@"; +static const char QT_INSTALL_BINS[] = "qt_binpath=@QT_INSTALL_BINS@"; +static const char QT_INSTALL_DOCS[] = "qt_docpath=@QT_INSTALL_DOCS@"; +static const char QT_INSTALL_HEADERS[] = "qt_hdrpath=@QT_INSTALL_HEADERS@"; +static const char QT_INSTALL_LIBS[] = "qt_libpath=@QT_INSTALL_LIBS@"; +static const char QT_INSTALL_PLUGINS[] = "qt_plgpath=@QT_INSTALL_PLUGINS@"; +static const char QT_INSTALL_DATA[] = "qt_datpath=@QT_INSTALL_DATA@"; +static const char QT_INSTALL_TRANSLATIONS[] = "qt_trnpath=@QT_INSTALL_TRANSLATIONS@"; +static const char QT_INSTALL_SYSCONF[] = "qt_cnfpath=@QT_INSTALL_SYSCONF@"; +static const char QT_INSTALL_SHARE[] = "qt_shapath=@QT_INSTALL_SHARE@"; + +/* strlen( "qt_xxxpath=" ) == 11 */ +const char *tqInstallPath() { return QT_INSTALL_PREFIX + 11; } +const char *tqInstallPathDocs() { return QT_INSTALL_DOCS + 11; } +const char *tqInstallPathHeaders() { return QT_INSTALL_HEADERS + 11; } +const char *tqInstallPathLibs() { return QT_INSTALL_LIBS + 11; } +const char *tqInstallPathBins() { return QT_INSTALL_BINS + 11; } +const char *tqInstallPathPlugins() { return QT_INSTALL_PLUGINS + 11; } +const char *tqInstallPathData() { return QT_INSTALL_DATA + 11; } +const char *tqInstallPathTranslations() { return QT_INSTALL_TRANSLATIONS + 11; } +const char *tqInstallPathSysconf() { return QT_INSTALL_SYSCONF + 11; } +const char *tqInstallPathShare() { return QT_INSTALL_SHARE + 11; } diff --git a/src/tools/qcstring.cpp b/src/tools/qcstring.cpp index 83e351a2..67a83197 100644 --- a/src/tools/qcstring.cpp +++ b/src/tools/qcstring.cpp @@ -39,6 +39,10 @@ ** **********************************************************************/ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + #include "ntqstring.h" #include "ntqregexp.h" #include "ntqdatastream.h" @@ -52,7 +56,10 @@ #include #include #include -#ifndef TQT_NO_COMPRESS + +#ifdef HAVE_ZLIB_H +#include +#else #include "../3rdparty/zlib/zlib.h" #endif diff --git a/src/tools/qstring.cpp b/src/tools/qstring.cpp index 26e9b61c..536951b8 100644 --- a/src/tools/qstring.cpp +++ b/src/tools/qstring.cpp @@ -38,6 +38,9 @@ ** herein. ** **********************************************************************/ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif // Don't define it while compiling this module, or USERS of TQt will // not be able to link. diff --git a/src/tqt3.pc.cmake b/src/tqt3.pc.cmake new file mode 100644 index 00000000..9c94d1a3 --- /dev/null +++ b/src/tqt3.pc.cmake @@ -0,0 +1,12 @@ +prefix=@CMAKE_INSTALL_PREFIX@ +exec_prefix=@PC_EXEC_PREFIX@ +libdir=@QT_INSTALL_LIBS@ +includedir=@QT_INSTALL_HEADERS@ +pluginsdir=@QT_INSTALL_PLUGINS@ + +Name: @PROJECT_NAME@ +Description: @PROJECT_NAME@ is a multiplatform C++ GUI application framework. +Version: 3.5 + +Libs: -L${libdir} -ltqt-mt +Cflags: -I${includedir} diff --git a/src/widgets/CMakeLists.txt b/src/widgets/CMakeLists.txt new file mode 100644 index 00000000..f78efe72 --- /dev/null +++ b/src/widgets/CMakeLists.txt @@ -0,0 +1,91 @@ +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### widgets (static) + +set( target widgets ) +set( _SRC_ qbuttongroup.cpp + qbutton.cpp + qdialogbuttons.cpp + qcheckbox.cpp + qcombobox.cpp + qwidgetresizehandler.cpp + qdial.cpp + qdockarea.cpp + qdockwindow.cpp + qframe.cpp + qgrid.cpp + qgridview.cpp + qgroupbox.cpp + qhbuttongroup.cpp + qheader.cpp + qhgroupbox.cpp + qhbox.cpp + qiconview.cpp + qlabel.cpp + qlcdnumber.cpp + qlineedit.cpp + qlistbox.cpp + qlistview.cpp + qmainwindow.cpp + qmenubar.cpp + qmenudata.cpp + qmultilineedit.cpp + qpopupmenu.cpp + qprogressbar.cpp + qpushbutton.cpp + qradiobutton.cpp + qrangecontrol.cpp + qscrollbar.cpp + qscrollview.cpp + qslider.cpp + qsplashscreen.cpp + qspinbox.cpp + qspinwidget.cpp + qsplitter.cpp + qstatusbar.cpp + qsyntaxhighlighter.cpp + qtabbar.cpp + qtabwidget.cpp + qtitlebar.cpp + qtoolbar.cpp + qtoolbox.cpp + qtoolbutton.cpp + qtooltip.cpp + qvalidator.cpp + qvbox.cpp + qvbuttongroup.cpp + qvgroupbox.cpp + qwhatsthis.cpp + qwidgetstack.cpp + qaction.cpp + qdatetimeedit.cpp + qeffects.cpp + qtextview.cpp + qtextbrowser.cpp + qtextedit.cpp + qwidgetplugin.cpp +) + + +tde_add_library( ${target} STATIC_PIC + + SOURCES + ${_SRC_} + + DEPENDENCIES + tqt-includes +) + +tqt_automoc( ${target}-static ) + +list( APPEND tqtlib_embed ${target}-static ) +set( tqtlib_embed ${tqtlib_embed} PARENT_SCOPE ) diff --git a/src/workspace/CMakeLists.txt b/src/workspace/CMakeLists.txt new file mode 100644 index 00000000..4228fd45 --- /dev/null +++ b/src/workspace/CMakeLists.txt @@ -0,0 +1,30 @@ +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### workspace (static) + +set( target workspace ) +set( _SRC_ qworkspace.cpp +) + + +tde_add_library( ${target} STATIC_PIC + + SOURCES + ${_SRC_} + + DEPENDENCIES + tqt-includes +) + +tqt_automoc( ${target}-static ) + +list( APPEND tqtlib_embed ${target}-static ) +set( tqtlib_embed ${tqtlib_embed} PARENT_SCOPE ) diff --git a/src/xml/CMakeLists.txt b/src/xml/CMakeLists.txt new file mode 100644 index 00000000..afdcbd79 --- /dev/null +++ b/src/xml/CMakeLists.txt @@ -0,0 +1,32 @@ +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### xml (static) + +set( target xml ) +set( _SRC_ qxml.cpp + qdom.cpp + qsvgdevice.cpp +) + + +tde_add_library( ${target} STATIC_PIC + + SOURCES + ${_SRC_} + + DEPENDENCIES + tqt-includes +) + +tqt_automoc( ${target}-static ) + +list( APPEND tqtlib_embed ${target}-static ) +set( tqtlib_embed ${tqtlib_embed} PARENT_SCOPE ) diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt new file mode 100644 index 00000000..ce663e93 --- /dev/null +++ b/tools/CMakeLists.txt @@ -0,0 +1,3 @@ +# subdirectories + +tde_auto_add_subdirectories() diff --git a/tools/assistant/CMakeLists.txt b/tools/assistant/CMakeLists.txt new file mode 100644 index 00000000..8ce054e2 --- /dev/null +++ b/tools/assistant/CMakeLists.txt @@ -0,0 +1,101 @@ + +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include + ${ZLIB_INCLUDE_DIRS} +) + +link_directories() + + +##### subdirectories + +tde_auto_add_subdirectories() + + +##### tqassistant (executable) + +set( target tqassistant ) + +tde_add_executable( ${target} + SOURCES + main.cpp + helpwindow.cpp + topicchooserimpl.cpp + docuparser.cpp + helpdialogimpl.cpp + settingsdialogimpl.cpp + index.cpp + profile.cpp + config.cpp + + mainwindow.ui + topicchooser.ui + finddialog.ui + helpdialog.ui + settingsdialog.ui + tabbedbrowser.ui + + embed_image_collection.cpp + + LINK + tqt-mt-shared + tqassistantclient-shared + + DESTINATION + ${BIN_INSTALL_DIR} + + DEPENDENCIES + tquic +) + +set_property( + TARGET ${target} + APPEND PROPERTY COMPILE_DEFINITIONS + QT_INTERNAL_NETWORK + QT_INTERNAL_XML +) + +tqt_automoc( ${target} ) + + +##### embed images + +file( + GLOB ${target}_IMAGES + RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/images/*.png +) +list( SORT ${target}_IMAGES ) +add_custom_command( OUTPUT embed_image_collection.cpp + COMMAND ${UIC_EXECUTABLE} -embed ${target} ${${target}_IMAGES} + -o ${CMAKE_CURRENT_BINARY_DIR}/embed_image_collection.cpp + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + DEPENDS tquic + COMMENT "Embed images for ${target}" +) +add_custom_target( ${target}-embed-images + COMMENT "Generate embed images for ${target}" + DEPENDS ${CURRENT_CMAKE_BINARY_DIR}/embed_image_collection.cpp +) + + +##### other data + +tde_create_translated_desktop( + SOURCE ${target}.desktop + DESTINATION ${QT_INSTALL_SHARE}/applications +) + +if( BUILD_TRANSLATIONS ) + tqt_create_translation() +endif() + +install( + FILES images/appicon.png + DESTINATION ${QT_INSTALL_SHARE}/pixmaps + RENAME ${target}.png +) diff --git a/tools/assistant/lib/CMakeLists.txt b/tools/assistant/lib/CMakeLists.txt new file mode 100644 index 00000000..90746eb5 --- /dev/null +++ b/tools/assistant/lib/CMakeLists.txt @@ -0,0 +1,42 @@ + +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include + ${ZLIB_INCLUDE_DIRS} +) + +link_directories() + + +##### prepare includes + +tqt_install_includes( ntqassistantclient.h ) + + +##### tqassistantclient (shared) + +add_definitions( -DQT_INTERNAL_NETWORK ) + +tde_add_library( tqassistantclient SHARED + + SOURCES + qassistantclient.cpp + + LINK + tqt-mt-shared + + VERSION 1.0.0 + + DESTINATION ${LIB_INSTALL_DIR} +) + +set_property( + TARGET tqassistantclient-shared + APPEND PROPERTY COMPILE_DEFINITIONS + QT_INTERNAL_NETWORK +) + +tqt_automoc( tqassistantclient-shared ) diff --git a/tools/designer/CMakeLists.txt b/tools/designer/CMakeLists.txt new file mode 100644 index 00000000..ce663e93 --- /dev/null +++ b/tools/designer/CMakeLists.txt @@ -0,0 +1,3 @@ +# subdirectories + +tde_auto_add_subdirectories() diff --git a/tools/designer/app/CMakeLists.txt b/tools/designer/app/CMakeLists.txt new file mode 100644 index 00000000..119622e3 --- /dev/null +++ b/tools/designer/app/CMakeLists.txt @@ -0,0 +1,25 @@ + +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/../designer + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include + ${ZLIB_INCLUDE_DIRS} +) + +link_directories() + + +##### tqdesigner (executable) + +set( target tqdesigner ) + +tde_add_executable( ${target} + SOURCES main.cpp + LINK tqt-mt-shared tqassistantclient-shared tqui-shared tqtdesignercore-shared + DESTINATION ${BIN_INSTALL_DIR} +) + +tqt_automoc( ${target} ) diff --git a/tools/designer/designer/CMakeLists.txt b/tools/designer/designer/CMakeLists.txt new file mode 100644 index 00000000..0aa50233 --- /dev/null +++ b/tools/designer/designer/CMakeLists.txt @@ -0,0 +1,263 @@ + +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/../shared + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include + ${ZLIB_INCLUDE_DIRS} +) + +link_directories() + + +##### tqtdesignercore (shared) + +set( target tqtdesignercore ) + +set( ${target}_SOURCES + command.cpp + formwindow.cpp + defs.cpp + layout.cpp + mainwindow.cpp + mainwindowactions.cpp + metadatabase.cpp + pixmapchooser.cpp + propertyeditor.cpp + resource.cpp + sizehandle.cpp + orderindicator.cpp + widgetfactory.cpp + hierarchyview.cpp + listboxeditorimpl.cpp + newformimpl.cpp + workspace.cpp + listvieweditorimpl.cpp + customwidgeteditorimpl.cpp + paletteeditorimpl.cpp + styledbutton.cpp + iconvieweditorimpl.cpp + multilineeditorimpl.cpp + formsettingsimpl.cpp + asciivalidator.cpp + designerapp.cpp + designerappiface.cpp + actioneditorimpl.cpp + actionlistview.cpp + actiondnd.cpp + project.cpp + projectsettingsimpl.cpp + sourceeditor.cpp + outputwindow.cpp + ../shared/widgetdatabase.cpp + ../shared/parser.cpp + pixmapcollection.cpp + previewframe.cpp + previewwidgetimpl.cpp + paletteeditoradvancedimpl.cpp + sourcefile.cpp + wizardeditorimpl.cpp + qcompletionedit.cpp + timestamp.cpp + formfile.cpp + widgetaction.cpp + propertyobject.cpp + startdialogimpl.cpp + syntaxhighlighter_html.cpp + connectionitems.cpp + editfunctionsimpl.cpp + variabledialogimpl.cpp + listviewdnd.cpp + listboxdnd.cpp + listdnd.cpp + listboxrename.cpp + connectiontable.cpp + popupmenueditor.cpp + menubareditor.cpp + + listboxeditor.ui + editfunctions.ui + newform.ui + listvieweditor.ui + customwidgeteditor.ui + paletteeditor.ui + iconvieweditor.ui + preferences.ui + multilineeditor.ui + formsettings.ui + about.ui + pixmapfunction.ui + createtemplate.ui + actioneditor.ui + projectsettings.ui + finddialog.ui + replacedialog.ui + gotolinedialog.ui + pixmapcollectioneditor.ui + previewwidget.ui + paletteeditoradvanced.ui + wizardeditor.ui + listeditor.ui + startdialog.ui + richtextfontdialog.ui + connectiondialog.ui + variabledialog.ui + configtoolboxdialog.ui + + embed_image_collection.cpp +) + +set( ${target}_INCLUDES + command.h + defs.h + formwindow.h + layout.h + mainwindow.h + metadatabase.h + pixmapchooser.h + propertyeditor.h + resource.h + sizehandle.h + orderindicator.h + widgetfactory.h + hierarchyview.h + listboxeditorimpl.h + newformimpl.h + workspace.h + listvieweditorimpl.h + customwidgeteditorimpl.h + paletteeditorimpl.h + styledbutton.h + iconvieweditorimpl.h + multilineeditorimpl.h + formsettingsimpl.h + asciivalidator.h + ../interfaces/widgetinterface.h + ../interfaces/actioninterface.h + ../interfaces/filterinterface.h + ../interfaces/designerinterface.h + designerapp.h + designerappiface.h + actioneditorimpl.h + actionlistview.h + actiondnd.h + project.h + projectsettingsimpl.h + sourceeditor.h + outputwindow.h + ../shared/widgetdatabase.h + ../shared/parser.h + previewframe.h + previewwidgetimpl.h + paletteeditoradvancedimpl.h + pixmapcollection.h + sourcefile.h + wizardeditorimpl.h + qcompletionedit.h + timestamp.h + formfile.h + widgetaction.h + propertyobject.h + startdialogimpl.h + syntaxhighlighter_html.h + connectionitems.h + editfunctionsimpl.h + variabledialogimpl.h + listviewdnd.h + listboxdnd.h + listdnd.h + listboxrename.h + connectiontable.h + popupmenueditor.h + menubareditor.h +) + +if( WITH_MODULE_SQL ) + list( APPEND ${target}_SOURCES + database.cpp dbconnectionimpl.cpp dbconnectionsimpl.cpp + dbconnections.ui dbconnection.ui dbconnectioneditor.ui + ) + list( APPEND ${target}_INCLUDES + database.h dbconnectionimpl.h dbconnectionsimpl.h +) +endif() + +if( WITH_MODULE_TABLE ) + list( APPEND ${target}_SOURCES + tableeditorimpl.cpp + tableeditor.ui + ) + list( APPEND ${target}_INCLUDES tableeditorimpl.h ) +endif() + +tde_add_library( ${target} SHARED + SOURCES ${${target}_SOURCES} + LINK tqt-mt-shared tqassistantclient-shared tqui-shared + VERSION 1.0.0 + DESTINATION ${LIB_INSTALL_DIR} + DEPENDENCIES tquic +) + +set_property( + TARGET ${target}-shared + APPEND PROPERTY COMPILE_DEFINITIONS + DESIGNER + QT_INTERNAL_XML + QT_INTERNAL_WORKSPACE + QT_INTERNAL_TABLE +) + +tqt_automoc( ${target}-shared INCLUDES ${${target}_INCLUDES} ) + + +##### embed images + +file( + GLOB ${target}_IMAGES + RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/images/*.png +) +list( SORT ${target}_IMAGES ) +add_custom_command( OUTPUT embed_image_collection.cpp + COMMAND ${UIC_EXECUTABLE} + -embed ${target} ${${target}_IMAGES} + -o ${CMAKE_CURRENT_BINARY_DIR}/embed_image_collection.cpp + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + DEPENDS tquic + COMMENT "Embed images for ${target}" +) +add_custom_target( ${target}-embed-images + COMMENT "Generate embed images for ${target}" + DEPENDS ${CURRENT_CMAKE_BINARY_DIR}/embed_image_collection.cpp +) + + +##### other data + +tde_create_translated_desktop( + SOURCE tqdesigner.desktop + DESTINATION ${QT_INSTALL_SHARE}/applications +) + +install( + FILES images/appicon.png + DESTINATION ${QT_INSTALL_SHARE}/pixmaps + RENAME tqdesigner.png +) + +if( BUILD_TRANSLATIONS ) + tqt_create_translation() +endif() + +file( + GLOB templates + RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/../templates/* +) +list( SORT templates ) +install( + FILES ${templates} + DESTINATION ${QT_INSTALL_DATA}/templates +) diff --git a/tools/designer/editor/CMakeLists.txt b/tools/designer/editor/CMakeLists.txt new file mode 100644 index 00000000..9d4070d6 --- /dev/null +++ b/tools/designer/editor/CMakeLists.txt @@ -0,0 +1,41 @@ + +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include + ${ZLIB_INCLUDE_DIRS} +) + +link_directories() + + +##### tqteditor (shared) + +set( target tqteditor ) + +set( ${target}_SOURCES + editor.cpp + parenmatcher.cpp + completion.cpp + viewmanager.cpp + markerwidget.cpp + conf.cpp + browser.cpp + arghintwidget.cpp + cindent.cpp + yyindent.cpp + + preferences.ui +) + +tde_add_library( ${target} SHARED + SOURCES ${${target}_SOURCES} + LINK tqt-mt-shared + VERSION 1.0.0 + DESTINATION ${LIB_INSTALL_DIR} + DEPENDENCIES tquic +) + +tqt_automoc( ${target}-shared ) diff --git a/tools/designer/plugins/CMakeLists.txt b/tools/designer/plugins/CMakeLists.txt new file mode 100644 index 00000000..ce663e93 --- /dev/null +++ b/tools/designer/plugins/CMakeLists.txt @@ -0,0 +1,3 @@ +# subdirectories + +tde_auto_add_subdirectories() diff --git a/tools/designer/tools/CMakeLists.txt b/tools/designer/tools/CMakeLists.txt new file mode 100644 index 00000000..ce663e93 --- /dev/null +++ b/tools/designer/tools/CMakeLists.txt @@ -0,0 +1,3 @@ +# subdirectories + +tde_auto_add_subdirectories() diff --git a/tools/designer/tools/tqtconv2ui/CMakeLists.txt b/tools/designer/tools/tqtconv2ui/CMakeLists.txt new file mode 100644 index 00000000..a2d1e15a --- /dev/null +++ b/tools/designer/tools/tqtconv2ui/CMakeLists.txt @@ -0,0 +1,25 @@ + +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/../../interfaces + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include + ${ZLIB_INCLUDE_DIRS} +) + +link_directories() + + +##### tqtconv2ui (executable) + +set( target tqtconv2ui ) + +tde_add_executable( ${target} + SOURCES main.cpp + LINK tqt-mt-shared + DESTINATION ${BIN_INSTALL_DIR} +) + +tqt_automoc( ${target} ) diff --git a/tools/designer/tools/tqtcreatecw/CMakeLists.txt b/tools/designer/tools/tqtcreatecw/CMakeLists.txt new file mode 100644 index 00000000..14b2f297 --- /dev/null +++ b/tools/designer/tools/tqtcreatecw/CMakeLists.txt @@ -0,0 +1,24 @@ + +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include + ${ZLIB_INCLUDE_DIRS} +) + +link_directories() + + +##### tqtcreatecw (executable) + +set( target tqtcreatecw ) + +tde_add_executable( ${target} + SOURCES main.cpp + LINK tqt-mt-shared + DESTINATION ${BIN_INSTALL_DIR} +) + +tqt_automoc( ${target} ) diff --git a/tools/designer/uic/CMakeLists.txt b/tools/designer/uic/CMakeLists.txt new file mode 100644 index 00000000..c4580808 --- /dev/null +++ b/tools/designer/uic/CMakeLists.txt @@ -0,0 +1,41 @@ + +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/../shared + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include + ${ZLIB_INCLUDE_DIRS} +) + +link_directories() + + +##### tquic (executable) + +set( target tquic ) + +tde_add_executable( ${target} + SOURCES + main.cpp uic.cpp form.cpp object.cpp + subclassing.cpp embed.cpp + ../shared/widgetdatabase.cpp + ../shared/domtool.cpp + ../shared/parser.cpp + + LINK + tqt-mt-shared + + DESTINATION + ${BIN_INSTALL_DIR} +) + +set_property( + TARGET ${target} + APPEND PROPERTY COMPILE_DEFINITIONS + QT_INTERNAL_XML + UIC +) + +tqt_automoc( ${target} ) diff --git a/tools/designer/uilib/CMakeLists.txt b/tools/designer/uilib/CMakeLists.txt new file mode 100644 index 00000000..715c8525 --- /dev/null +++ b/tools/designer/uilib/CMakeLists.txt @@ -0,0 +1,54 @@ + +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/../shared + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include + ${ZLIB_INCLUDE_DIRS} +) + +link_directories() + + +##### prepare includes + +tqt_install_includes( ntqwidgetfactory.h ) + + +##### tqui (shared) + +set( target tqui ) + +set( ${target}_SOURCES + qwidgetfactory.cpp + ../shared/domtool.cpp + ../shared/uib.cpp +) + +set( ${target}_INCLUDES + ../shared/domtool.h + ../shared/uib.h +) + +if( WITH_MODULE_SQL ) + list( APPEND ${target}_SOURCES ../designer/database.cpp ) + list( APPEND ${target}_INCLUDES ../designer/database2.h ) +endif() + +tde_add_library( ${target} SHARED + SOURCES ${${target}_SOURCES} + LINK tqt-mt-shared + VERSION 1.0.0 + DESTINATION ${LIB_INSTALL_DIR} +) + +set_property( + TARGET ${target}-shared + APPEND PROPERTY COMPILE_DEFINITIONS + QT_INTERNAL_XML + RESOURCE +) + +tqt_automoc( ${target}-shared INCLUDES ${${target}_INCLUDES} ) diff --git a/tools/linguist/CMakeLists.txt b/tools/linguist/CMakeLists.txt new file mode 100644 index 00000000..ce663e93 --- /dev/null +++ b/tools/linguist/CMakeLists.txt @@ -0,0 +1,3 @@ +# subdirectories + +tde_auto_add_subdirectories() diff --git a/tools/linguist/linguist/CMakeLists.txt b/tools/linguist/linguist/CMakeLists.txt new file mode 100644 index 00000000..80bd6a2a --- /dev/null +++ b/tools/linguist/linguist/CMakeLists.txt @@ -0,0 +1,102 @@ + +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/../shared + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include + ${ZLIB_INCLUDE_DIRS} +) + +link_directories() + + +##### tqlinguist (executable) + +set( target tqlinguist ) + +set( ${target}_SOURCES + finddialog.cpp + main.cpp + msgedit.cpp + phrase.cpp + phrasebookbox.cpp + phraselv.cpp + printout.cpp + simtexth.cpp + trwindow.cpp + listviews.cpp + ../shared/metatranslator.cpp + + about.ui + statistics.ui + + embed_image_collection.cpp +) + +tde_add_executable( ${target} + SOURCES ${${target}_SOURCES} + LINK tqt-mt-shared tqassistantclient-shared + DESTINATION ${BIN_INSTALL_DIR} + DEPENDENCIES tquic +) + +set_property( + TARGET ${target} + APPEND PROPERTY COMPILE_DEFINITIONS + QT_INTERNAL_XML +) + +tqt_automoc( ${target} ) + + +##### embed images + +file( + GLOB ${target}_IMAGES + RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/images/*.png +) +list( SORT ${target}_IMAGES ) +add_custom_command( OUTPUT embed_image_collection.cpp + COMMAND ${UIC_EXECUTABLE} + -embed ${target} ${${target}_IMAGES} + -o ${CMAKE_CURRENT_BINARY_DIR}/embed_image_collection.cpp + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + DEPENDS tquic + COMMENT "Embed images for ${target}" +) +add_custom_target( ${target}-embed-images + COMMENT "Generate embed images for ${target}" + DEPENDS ${CURRENT_CMAKE_BINARY_DIR}/embed_image_collection.cpp +) + + +##### other data + +tde_create_translated_desktop( + SOURCE ${target}.desktop + DESTINATION ${QT_INSTALL_SHARE}/applications +) + +install( + FILES images/appicon.png + DESTINATION ${QT_INSTALL_SHARE}/pixmaps + RENAME ${target}.png +) + +if( BUILD_TRANSLATIONS ) + tqt_create_translation() +endif() + +file( + GLOB phrasebooks + RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/../phrasebooks/* +) +list( SORT phrasebooks ) +install( + FILES ${phrasebooks} + DESTINATION ${QT_INSTALL_DATA}/phrasebooks +) diff --git a/tools/linguist/lrelease/CMakeLists.txt b/tools/linguist/lrelease/CMakeLists.txt new file mode 100644 index 00000000..c7084f17 --- /dev/null +++ b/tools/linguist/lrelease/CMakeLists.txt @@ -0,0 +1,37 @@ + +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/../shared + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include + ${ZLIB_INCLUDE_DIRS} +) + +link_directories() + + +##### tqlrelease (executable) + +set( target tqlrelease ) + +tde_add_executable( ${target} + SOURCES + main.cpp + ../shared/metatranslator.cpp + ../shared/proparser.cpp + + LINK + tqt-mt-shared + + DESTINATION ${BIN_INSTALL_DIR} +) + +set_property( + TARGET ${target} + APPEND PROPERTY COMPILE_DEFINITIONS + QT_INTERNAL_XML +) + +tqt_automoc( ${target} ) diff --git a/tools/linguist/lupdate/CMakeLists.txt b/tools/linguist/lupdate/CMakeLists.txt new file mode 100644 index 00000000..cb3769f1 --- /dev/null +++ b/tools/linguist/lupdate/CMakeLists.txt @@ -0,0 +1,41 @@ + +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/../shared + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include + ${ZLIB_INCLUDE_DIRS} +) + +link_directories() + + +##### tqlupdate (executable) + +set( target tqlupdate ) + +tde_add_executable( ${target} + SOURCES + fetchtr.cpp + main.cpp + merge.cpp + numberh.cpp + sametexth.cpp + ../shared/metatranslator.cpp + ../shared/proparser.cpp + + LINK + tqt-mt-shared + + DESTINATION ${BIN_INSTALL_DIR} +) + +set_property( + TARGET ${target} + APPEND PROPERTY COMPILE_DEFINITIONS + QT_INTERNAL_XML +) + +tqt_automoc( ${target} ) diff --git a/tools/linguist/tqm2ts/CMakeLists.txt b/tools/linguist/tqm2ts/CMakeLists.txt new file mode 100644 index 00000000..ad4988b9 --- /dev/null +++ b/tools/linguist/tqm2ts/CMakeLists.txt @@ -0,0 +1,36 @@ + +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/../shared + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include + ${ZLIB_INCLUDE_DIRS} +) + +link_directories() + + +##### tqm2ts (executable) + +set( target tqm2ts ) + +tde_add_executable( ${target} + SOURCES + main.cpp + ../shared/metatranslator.cpp + + LINK + tqt-mt-shared + + DESTINATION ${BIN_INSTALL_DIR} +) + +set_property( + TARGET ${target} + APPEND PROPERTY COMPILE_DEFINITIONS + QT_INTERNAL_XML +) + +tqt_automoc( ${target} ) diff --git a/tools/linguist/tutorial/CMakeLists.txt b/tools/linguist/tutorial/CMakeLists.txt new file mode 100644 index 00000000..ce663e93 --- /dev/null +++ b/tools/linguist/tutorial/CMakeLists.txt @@ -0,0 +1,3 @@ +# subdirectories + +tde_auto_add_subdirectories() diff --git a/tools/linguist/tutorial/tt1/CMakeLists.txt b/tools/linguist/tutorial/tt1/CMakeLists.txt new file mode 100644 index 00000000..3f6c2fef --- /dev/null +++ b/tools/linguist/tutorial/tt1/CMakeLists.txt @@ -0,0 +1,26 @@ + +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include + ${ZLIB_INCLUDE_DIRS} +) + +link_directories() + + +##### tt1 (executable) + +set( target tt1 ) + +tde_add_executable( ${target} + SOURCES + main.cpp + + LINK + tqt-mt-shared +) + +tqt_automoc( ${target} ) diff --git a/tools/linguist/tutorial/tt2/CMakeLists.txt b/tools/linguist/tutorial/tt2/CMakeLists.txt new file mode 100644 index 00000000..c2373fd4 --- /dev/null +++ b/tools/linguist/tutorial/tt2/CMakeLists.txt @@ -0,0 +1,28 @@ + +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include + ${ZLIB_INCLUDE_DIRS} +) + +link_directories() + + +##### tt2 (executable) + +set( target tt2 ) + +tde_add_executable( ${target} + SOURCES + arrowpad.cpp + main.cpp + mainwindow.cpp + + LINK + tqt-mt-shared +) + +tqt_automoc( ${target} ) diff --git a/tools/linguist/tutorial/tt3/CMakeLists.txt b/tools/linguist/tutorial/tt3/CMakeLists.txt new file mode 100644 index 00000000..1d0eafeb --- /dev/null +++ b/tools/linguist/tutorial/tt3/CMakeLists.txt @@ -0,0 +1,28 @@ + +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_SOURCE_DIR}/mkspecs/linux-g++-64 + ${CMAKE_BINARY_DIR}/include + ${ZLIB_INCLUDE_DIRS} +) + +link_directories() + + +##### tt3 (executable) + +set( target tt3 ) + +tde_add_executable( ${target} + SOURCES + main.cpp + mainwindow.cpp + printpanel.cpp + + LINK + tqt-mt-shared +) + +tqt_automoc( ${target} ) diff --git a/translations/CMakeLists.txt b/translations/CMakeLists.txt new file mode 100644 index 00000000..6beaad12 --- /dev/null +++ b/translations/CMakeLists.txt @@ -0,0 +1,5 @@ +##### build and install translations + +if( BUILD_LIB ) + tqt_create_translation() +endif() diff --git a/tutorial/CMakeLists.txt b/tutorial/CMakeLists.txt new file mode 100644 index 00000000..c537dc09 --- /dev/null +++ b/tutorial/CMakeLists.txt @@ -0,0 +1,15 @@ +tde_conditional_add_subdirectory( BUILD_TUTORIAL_1 t1 ) +tde_conditional_add_subdirectory( BUILD_TUTORIAL_2 t2 ) +tde_conditional_add_subdirectory( BUILD_TUTORIAL_3 t3 ) +tde_conditional_add_subdirectory( BUILD_TUTORIAL_4 t4 ) +tde_conditional_add_subdirectory( BUILD_TUTORIAL_5 t5 ) +tde_conditional_add_subdirectory( BUILD_TUTORIAL_6 t6 ) +tde_conditional_add_subdirectory( BUILD_TUTORIAL_7 t7 ) +tde_conditional_add_subdirectory( BUILD_TUTORIAL_8 t8 ) +tde_conditional_add_subdirectory( BUILD_TUTORIAL_9 t9 ) +tde_conditional_add_subdirectory( BUILD_TUTORIAL_10 t10 ) +tde_conditional_add_subdirectory( BUILD_TUTORIAL_11 t11 ) +tde_conditional_add_subdirectory( BUILD_TUTORIAL_12 t12 ) +tde_conditional_add_subdirectory( BUILD_TUTORIAL_13 t13 ) +tde_conditional_add_subdirectory( BUILD_TUTORIAL_14 t14 ) +tde_conditional_add_subdirectory( BUILD_TUTORIAL_15 t15 ) diff --git a/tutorial/t1/CMakeLists.txt b/tutorial/t1/CMakeLists.txt new file mode 100644 index 00000000..0f4e4aef --- /dev/null +++ b/tutorial/t1/CMakeLists.txt @@ -0,0 +1,18 @@ +include_directories( + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### t1 (executable) + +tde_add_executable( t1 + + SOURCES + main.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( t1 ) diff --git a/tutorial/t10/CMakeLists.txt b/tutorial/t10/CMakeLists.txt new file mode 100644 index 00000000..82d7a0ff --- /dev/null +++ b/tutorial/t10/CMakeLists.txt @@ -0,0 +1,20 @@ +include_directories( + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### t10 (executable) + +tde_add_executable( t10 + + SOURCES + main.cpp + cannon.cpp + lcdrange.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( t10 ) diff --git a/tutorial/t11/CMakeLists.txt b/tutorial/t11/CMakeLists.txt new file mode 100644 index 00000000..a34a9362 --- /dev/null +++ b/tutorial/t11/CMakeLists.txt @@ -0,0 +1,20 @@ +include_directories( + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### t11 (executable) + +tde_add_executable( t11 + + SOURCES + main.cpp + cannon.cpp + lcdrange.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( t11 ) diff --git a/tutorial/t12/CMakeLists.txt b/tutorial/t12/CMakeLists.txt new file mode 100644 index 00000000..2fa7e9f1 --- /dev/null +++ b/tutorial/t12/CMakeLists.txt @@ -0,0 +1,20 @@ +include_directories( + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### t12 (executable) + +tde_add_executable( t12 + + SOURCES + main.cpp + cannon.cpp + lcdrange.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( t12 ) diff --git a/tutorial/t13/CMakeLists.txt b/tutorial/t13/CMakeLists.txt new file mode 100644 index 00000000..10bb1cdc --- /dev/null +++ b/tutorial/t13/CMakeLists.txt @@ -0,0 +1,21 @@ +include_directories( + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### t13 (executable) + +tde_add_executable( t13 + + SOURCES + main.cpp + cannon.cpp + gamebrd.cpp + lcdrange.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( t13 ) diff --git a/tutorial/t14/CMakeLists.txt b/tutorial/t14/CMakeLists.txt new file mode 100644 index 00000000..490a77bc --- /dev/null +++ b/tutorial/t14/CMakeLists.txt @@ -0,0 +1,21 @@ +include_directories( + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### t14 (executable) + +tde_add_executable( t14 + + SOURCES + main.cpp + cannon.cpp + gamebrd.cpp + lcdrange.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( t14 ) diff --git a/tutorial/t15/CMakeLists.txt b/tutorial/t15/CMakeLists.txt new file mode 100644 index 00000000..61ae47a6 --- /dev/null +++ b/tutorial/t15/CMakeLists.txt @@ -0,0 +1,18 @@ +include_directories( + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### t15 (executable) + +tde_add_executable( t15 + + SOURCES + main.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( t15 ) diff --git a/tutorial/t2/CMakeLists.txt b/tutorial/t2/CMakeLists.txt new file mode 100644 index 00000000..d574a8da --- /dev/null +++ b/tutorial/t2/CMakeLists.txt @@ -0,0 +1,18 @@ +include_directories( + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### t2 (executable) + +tde_add_executable( t2 + + SOURCES + main.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( t2 ) diff --git a/tutorial/t3/CMakeLists.txt b/tutorial/t3/CMakeLists.txt new file mode 100644 index 00000000..efcd8cb3 --- /dev/null +++ b/tutorial/t3/CMakeLists.txt @@ -0,0 +1,18 @@ +include_directories( + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### t3 (executable) + +tde_add_executable( t3 + + SOURCES + main.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( t3 ) diff --git a/tutorial/t4/CMakeLists.txt b/tutorial/t4/CMakeLists.txt new file mode 100644 index 00000000..f1f5367b --- /dev/null +++ b/tutorial/t4/CMakeLists.txt @@ -0,0 +1,18 @@ +include_directories( + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### t4 (executable) + +tde_add_executable( t4 + + SOURCES + main.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( t4 ) diff --git a/tutorial/t5/CMakeLists.txt b/tutorial/t5/CMakeLists.txt new file mode 100644 index 00000000..bfd9efde --- /dev/null +++ b/tutorial/t5/CMakeLists.txt @@ -0,0 +1,18 @@ +include_directories( + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### t5 (executable) + +tde_add_executable( t5 + + SOURCES + main.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( t5 ) diff --git a/tutorial/t6/CMakeLists.txt b/tutorial/t6/CMakeLists.txt new file mode 100644 index 00000000..41d68952 --- /dev/null +++ b/tutorial/t6/CMakeLists.txt @@ -0,0 +1,18 @@ +include_directories( + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### t6 (executable) + +tde_add_executable( t6 + + SOURCES + main.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( t6 ) diff --git a/tutorial/t7/CMakeLists.txt b/tutorial/t7/CMakeLists.txt new file mode 100644 index 00000000..7f44673b --- /dev/null +++ b/tutorial/t7/CMakeLists.txt @@ -0,0 +1,19 @@ +include_directories( + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### t7 (executable) + +tde_add_executable( t7 + + SOURCES + main.cpp + lcdrange.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( t7 ) diff --git a/tutorial/t8/CMakeLists.txt b/tutorial/t8/CMakeLists.txt new file mode 100644 index 00000000..bcc3a5e8 --- /dev/null +++ b/tutorial/t8/CMakeLists.txt @@ -0,0 +1,20 @@ +include_directories( + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### t8 (executable) + +tde_add_executable( t8 + + SOURCES + main.cpp + cannon.cpp + lcdrange.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( t8 ) diff --git a/tutorial/t9/CMakeLists.txt b/tutorial/t9/CMakeLists.txt new file mode 100644 index 00000000..d13fb27a --- /dev/null +++ b/tutorial/t9/CMakeLists.txt @@ -0,0 +1,20 @@ +include_directories( + ${CMAKE_BINARY_DIR}/include +) + +link_directories() + + +##### t9 (executable) + +tde_add_executable( t9 + + SOURCES + main.cpp + cannon.cpp + lcdrange.cpp + LINK + tqt-mt-shared +) + +tqt_automoc( t9 )