diff options
| author | gregory guy <gregory-tde@laposte.net> | 2020-11-20 16:35:29 +0100 | 
|---|---|---|
| committer | Slávek Banko <slavek.banko@axis.cz> | 2020-12-02 19:51:30 +0100 | 
| commit | 5bf9a46ed843025016c7b7be43a1ca8754d60b79 (patch) | |
| tree | 45b7243b7a03a2425da3c0117b858bbd31264a29 | |
| parent | afd39a42465117e8926ad7a858dc65c9bf654fa0 (diff) | |
| download | tdegames-5bf9a46ed843025016c7b7be43a1ca8754d60b79.tar.gz tdegames-5bf9a46ed843025016c7b7be43a1ca8754d60b79.zip | |
Some cleanup and cosmetics.
Signed-off-by: gregory guy <gregory-tde@laposte.net>
(cherry picked from commit 0683f09c4a902a13b826a06ef95377b6352801f8)
| -rw-r--r-- | CMakeLists.txt | 89 | ||||
| -rw-r--r-- | ConfigureChecks.cmake | 78 | ||||
| -rw-r--r-- | q15/CMakeLists.txt | 58 | ||||
| -rw-r--r-- | q15/ConfigureChecks.cmake | 47 | ||||
| -rw-r--r-- | q15/Makefile.bsd | 19 | ||||
| -rwxr-xr-x | q15/cmake/generate_apidox | 17 | ||||
| -rwxr-xr-x | q15/cmake/install_apidox | 12 | ||||
| -rw-r--r-- | q15/cmake/modules/FindTDE.cmake | 104 | ||||
| -rw-r--r-- | q15/cmake/modules/FindTQt.cmake | 107 | ||||
| -rw-r--r-- | q15/cmake/modules/FindTQtQUI.cmake | 45 | ||||
| -rw-r--r-- | q15/cmake/modules/TDEL10n.cmake | 1151 | ||||
| -rw-r--r-- | q15/cmake/modules/TDEMacros.cmake | 2172 | ||||
| -rw-r--r-- | q15/cmake/modules/TDESetupPaths.cmake | 68 | ||||
| -rw-r--r-- | q15/cmake/modules/tde_uic.cmake | 67 | ||||
| -rw-r--r-- | q15/cmake/modules/template_dummy_cpp.cmake | 5 | ||||
| -rw-r--r-- | q15/cmake/modules/template_export_library.cmake | 7 | ||||
| -rw-r--r-- | q15/cmake/modules/template_libtool_file.cmake | 35 | ||||
| -rw-r--r-- | q15/cmake/modules/template_tdeinit_executable.cmake | 2 | ||||
| -rw-r--r-- | q15/cmake/modules/template_tdeinit_module.cmake | 3 | ||||
| -rw-r--r-- | q15/q15.pro | 43 | ||||
| -rw-r--r-- | q15/qt.FreeBSD.mk | 24 | ||||
| -rw-r--r-- | q15/src/CMakeLists.txt | 47 | 
22 files changed, 109 insertions, 4091 deletions
| diff --git a/CMakeLists.txt b/CMakeLists.txt index fd0c19c5..3631385f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,24 +1,25 @@ -################################################# -# -#  (C) 2016 Alexander Golubev -#  fatzer2 (AT) gmail.com -# -#  Improvements and feedback are welcome -# -#  This file is released under GPL >= 2 -# -################################################# +########################################### +#                                         # +#  (C) 2016 Alexander Golubev             # +#  fatzer2 (AT) gmail.com                 # +#                                         # +#  Improvements and feedback are welcome  # +#                                         # +#  This file is released under GPL >= 2   # +#                                         # +########################################### +  cmake_minimum_required( VERSION 2.8 ) -##### general package setup ##################### +##### general package setup  project( tdegames )  set( VERSION R14.0.10 ) -##### include essential cmake modules ########### +##### include essential cmake modules  include( FindPkgConfig )  include( CheckIncludeFile ) @@ -27,34 +28,36 @@ include( CheckSymbolExists )  include( CheckCXXSourceCompiles ) -##### include our cmake modules ################# +##### include our cmake modules  set( CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules" )  include( TDEMacros ) -##### setup install paths ####################### +##### setup install paths  include( TDESetupPaths )  tde_setup_paths( ) -##### optional stuff ############################ +##### optional stuff  option( WITH_ALL_OPTIONS "Enable all optional support" OFF ) -option( WITH_ARTS        "Enable aRts support" ${WITH_ALL_OPTIONS} ) - - -##### options comments ########################## +option( WITH_ARTS        "Enable aRts support"         ${WITH_ALL_OPTIONS} ) -# WITH_ARTS        affects    kbounce -#                  if disabled the game will have no sound -# NOTE: ARTS is unconditionally required to build kolf and kasteroids +######################## options comments ############################# +#                                                                     # +#  WITH_ARTS affects kbounce if disabled the game will have no sound  # +#                                                                     # +#  ARTS is required to build kolf and kasteroids                      # +#                                                                     # +####################################################################### -##### user requested modules #################### -option( BUILD_ALL "Build all" OFF ) +##### user requested modules  +option( BUILD_ALL          "Build all"           OFF ) +option( BUILD_LIBTDEGAMES  "Build libtdegames"   ${BUILD_ALL} )  option( BUILD_ATLANTIK     "Build atlantik"      ${BUILD_ALL} )  option( BUILD_DOC          "Build documentation" ${BUILD_ALL} )  option( BUILD_KASTEROIDS   "Build kasteroids"    ${BUILD_ALL} ) @@ -86,21 +89,19 @@ option( BUILD_KSOKOBAN     "Build ksokoban"      ${BUILD_ALL} )  option( BUILD_KSPACEDUEL   "Build kspaceduel"    ${BUILD_ALL} )  option( BUILD_KTRON        "Build ktron"         ${BUILD_ALL} )  option( BUILD_KTUBERLING   "Build ktuberling"    ${BUILD_ALL} ) -option( BUILD_LIBTDEGAMES  "Build libtdegames"   ${BUILD_ALL} )  option( BUILD_LSKAT        "Build lskat"         ${BUILD_ALL} )  option( BUILD_TWIN4        "Build twin4"         ${BUILD_ALL} ) +option( BUILD_Q15          "Build q15"           ${BUILD_ALL} ) -##### configure checks ########################## +##### configure checks  include( ConfigureChecks.cmake ) -###### global compiler settings ################# +###### global compiler settings -add_definitions( -  -DHAVE_CONFIG_H -) +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" ) @@ -110,19 +111,23 @@ if( WITH_TEST )    enable_testing()  endif( WITH_TEST ) -##### add apidox targets ############ -add_custom_target(apidox -  COMMAND "./generate_apidox" "${CMAKE_SOURCE_DIR}" "${CMAKE_BINARY_DIR}" "${HTML_INSTALL_DIR}" "/usr/share/tqt3/doc/html" -  WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}/cmake/") +##### add apidox targets -add_custom_target(install-apidox -  COMMAND "./install_apidox" "${CMAKE_SOURCE_DIR}" "${CMAKE_BINARY_DIR}" "${HTML_INSTALL_DIR}" "${CMAKE_INSTALL_PREFIX}" -  WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}/cmake/") +add_custom_target( apidox +    COMMAND "./generate_apidox" "${CMAKE_SOURCE_DIR}" "${CMAKE_BINARY_DIR}" "${HTML_INSTALL_DIR}" "/usr/share/tqt3/doc/html" +    WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}/cmake/" +) + +add_custom_target( install-apidox +    COMMAND "./install_apidox" "${CMAKE_SOURCE_DIR}" "${CMAKE_BINARY_DIR}" "${HTML_INSTALL_DIR}" "${CMAKE_INSTALL_PREFIX}" +    WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}/cmake/" +) -##### tdegames directories ##################### +##### tdegames directories +tde_conditional_add_subdirectory( BUILD_LIBTDEGAMES  libtdegames  )  tde_conditional_add_subdirectory( BUILD_ATLANTIK     atlantik     )  tde_conditional_add_subdirectory( BUILD_DOC          doc          )  tde_conditional_add_subdirectory( BUILD_KASTEROIDS   kasteroids   ) @@ -154,15 +159,15 @@ tde_conditional_add_subdirectory( BUILD_KSOKOBAN     ksokoban     )  tde_conditional_add_subdirectory( BUILD_KSPACEDUEL   kspaceduel   )  tde_conditional_add_subdirectory( BUILD_KTRON        ktron        )  tde_conditional_add_subdirectory( BUILD_KTUBERLING   ktuberling   ) -tde_conditional_add_subdirectory( BUILD_LIBTDEGAMES  libtdegames  )  tde_conditional_add_subdirectory( BUILD_LSKAT        lskat        )  tde_conditional_add_subdirectory( BUILD_TWIN4        twin4        ) +tde_conditional_add_subdirectory( BUILD_Q15          q15          )  if( BUILD_KSIRTET OR BUILD_KFOULEGGS OR BUILD_KLICKETY ) -  add_subdirectory( libksirtet ) -endif( ) +    add_subdirectory( libksirtet ) +endif() -##### write configure files ##################### +##### write configure files  configure_file( config.h.cmake config.h @ONLY ) diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake index 8f49d951..765e7393 100644 --- a/ConfigureChecks.cmake +++ b/ConfigureChecks.cmake @@ -1,15 +1,17 @@ -################################################# -# -#  (C) 2016 Alexander Golubev -#  fatzer2 (AT) gmail.com -# -#  Improvements and feedback are welcome -# -#  This file is released under GPL >= 2 -# -################################################# +########################################### +#                                         # +#  (C) 2016 Alexander Golubev             # +#  fatzer2 (AT) gmail.com                 # +#                                         # +#  Improvements and feedback are welcome  # +#                                         # +#  This file is released under GPL >= 2   # +#                                         # +###########################################  # required stuff +find_package( TQt ) +find_package( TDE )  tde_setup_architecture_flags( ) @@ -18,53 +20,55 @@ test_big_endian(WORDS_BIGENDIAN)  tde_setup_largefiles( ) -find_package( TQt ) -find_package( TDE ) - -##### check for gcc visibility support ######### +##### check for gcc visibility support  if( WITH_GCC_VISIBILITY )    tde_setup_gcc_visibility( ) -endif( ) - - -# arts -if( WITH_ARTS ) -  pkg_search_module( ARTS arts ) -  if( ARTS_FOUND ) -    set( HAVE_ARTS 1 ) -  else( ) -    tde_message_fatal( "aRts is requested, but was not found on your system" ) -  endif( ) -else( WITH_ARTS ) -  if (BUILD_KASTEROIDS OR BUILD_KOLF) -    tde_message_fatal( "aRts support is disabled, but it is required to build kasteroids and kolf" ) -  endif( ) -endif( WITH_ARTS ) +endif( WITH_GCC_VISIBILITY ) -##### Other dependencies ######################## +#### check for headers  check_include_file( "stropts.h"    HAVE_STROPTS_H    )  check_include_file( "sys/filio.h"  HAVE_SYS_FILIO_H  )  check_include_file( "sys/select.h" HAVE_SYS_SELECT_H )  check_include_file( "sysent.h"     HAVE_SYSENT_H     ) -check_symbol_exists( usleep "unistd.h"  HAVE_USLEEP ) +check_symbol_exists( usleep  "unistd.h"  HAVE_USLEEP )  check_symbol_exists( strlcpy "string.h"  HAVE_USLEEP )  # NOTE: Borrowed from tdelibs  # FIXME I'm not sure if test TIME_WITH_SYS_TIME are correct +  check_include_file( "sys/time.h" HAVE_SYS_TIME_H ) -check_include_file( "time.h" HAVE_TIME_H ) +check_include_file( "time.h"     HAVE_TIME_H     ) +  if( HAVE_SYS_TIME_H AND HAVE_TIME_H ) -  set( TIME_WITH_SYS_TIME 1 ) -endif( HAVE_SYS_TIME_H AND HAVE_TIME_H ) +    set( TIME_WITH_SYS_TIME 1 ) +endif() + + +# check for arts + +if( WITH_ARTS ) +    pkg_search_module( ARTS arts ) + +    if( ARTS_FOUND ) +        set( HAVE_ARTS 1 ) +     else() +        tde_message_fatal( "aRts is requested, but was not found on your system" ) +    endif() + else( WITH_ARTS ) +       if (BUILD_KASTEROIDS OR BUILD_KOLF) +          tde_message_fatal( "aRts support is disabled, but it is required to build kasteroids and kolf" ) +       endif() +endif( WITH_ARTS ) + +##### Import libtdegames +##### All these games require libtdegames -##### Import libtdegames ######################## -# all games require libtdegames to be imported  if( BUILD_ATLANTIK     OR      BUILD_KASTEROIDS   OR      BUILD_KATOMIC      OR diff --git a/q15/CMakeLists.txt b/q15/CMakeLists.txt index 364a3c77..0b719487 100644 --- a/q15/CMakeLists.txt +++ b/q15/CMakeLists.txt @@ -1,60 +1,2 @@ -################################################# -# -#  (C) 2010-2011 Serghei Amelian -#  serghei (DOT) amelian (AT) gmail.com -# -#  Improvements and feedback are welcome -# -#  This file is released under GPL >= 2 -# -################################################# - -project( q15 ) - -set( TQT_MAJOR_VERSION 14 ) -set( TQT_MINOR_VERSION 0 ) -set( TQT_MICRO_VERSION 0 ) -set( TQT_VERSION "${TQT_MAJOR_VERSION}.${TQT_MINOR_VERSION}.${TQT_MICRO_VERSION}" ) - - -##### cmake setup ############################### - -cmake_minimum_required( VERSION 2.8 ) - -include( CheckCXXSourceCompiles ) -include( GNUInstallDirs OPTIONAL ) - - -##### include our cmake modules ################# - -set( CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules" ) -include( TDEMacros ) -include( FindPkgConfig ) - - -##### install paths setup ####################### - -tde_setup_install_path( EXEC_INSTALL_PREFIX   "${CMAKE_INSTALL_PREFIX}" ) -tde_setup_install_path( BIN_INSTALL_DIR       "${EXEC_INSTALL_PREFIX}/bin"  ) - - -##### optional stuff ############################ - -option( WITH_ALL_OPTIONS "Enable all optional support" OFF ) - - -##### user requested modules #################### - -option( BUILD_ALL "Build all" OFF ) - - -##### configure checks ########################## - -include( ConfigureChecks.cmake ) - - -set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${TQT_CXX_FLAGS}" ) - -##### q15 sources ######################  add_subdirectory( src ) diff --git a/q15/ConfigureChecks.cmake b/q15/ConfigureChecks.cmake deleted file mode 100644 index d061bf44..00000000 --- a/q15/ConfigureChecks.cmake +++ /dev/null @@ -1,47 +0,0 @@ -################################################# -# -#  (C) 2011 Timothy Pearson -#  kb9vqf (AT) pearsoncomputing.net -# -#  Improvements and feedback are welcome -# -#  This file is released under GPL >= 2 -# -################################################# - - -# required stuff - -#tde_setup_architecture_flags( ) - -#include(TestBigEndian) -#test_big_endian(WORDS_BIGENDIAN) - -#tde_setup_largefiles( ) - -find_package( TQt ) -#find_package( TDE ) - - -##### check for gcc visibility support ######### - -#if( WITH_GCC_VISIBILITY ) -#  tde_setup_gcc_visibility( ) -#endif( ) - - -#if( BUILD_TRANSLATIONS AND NOT DEFINED MSGFMT_EXECUTABLE ) -#  find_program( MSGFMT_EXECUTABLE msgfmt ) -#  if( NOT MSGFMT_EXECUTABLE ) -#    tde_message_fatal( "msgfmt program is required, but was not found on your system" ) -#  endif( ) -#endif( ) - -#check_type_size( "int" SIZEOF_INT BUILTIN_TYPES_ONLY ) -#check_type_size( "long" SIZEOF_LONG BUILTIN_TYPES_ONLY ) - -#check_include_file( stdint.h HAVE_STDINT_H ) -#check_include_file( systems.h HAVE_SYSTEMS_H ) -#check_include_file( linux/inotify.h HAVE_INOTIFY ) - -#check_function_exists( statvfs HAVE_STATVFS ) diff --git a/q15/Makefile.bsd b/q15/Makefile.bsd deleted file mode 100644 index e443a968..00000000 --- a/q15/Makefile.bsd +++ /dev/null @@ -1,19 +0,0 @@ -# $Id: Makefile.FreeBSD,v 0.1 2004/08/21 12:11:49 denis Exp $ - -PROG= q15 -BINDIR= /bin -NOMAN= noman -SRCS= main.cpp mainwindow.cpp gameboard.cpp -MOCS= mainwindow.h gameboard.h -CXXFLAGS+= -W -Wall -Werror -I${X11BASE}/include -LDADD+= -L${X11BASE}/lib - - -run: all -	${PROG} - -gdb: all -	gdb ${PROG} - -.include "qt.FreeBSD.mk" -.include <bsd.prog.mk> diff --git a/q15/cmake/generate_apidox b/q15/cmake/generate_apidox deleted file mode 100755 index 3a4e79cf..00000000 --- a/q15/cmake/generate_apidox +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash - -top_srcdir=${1} -top_builddir=${2} -kde_libs_htmldir=${3} -export TQTDOCDIR=${4} - -if [[ ! -d "${top_srcdir}/doc/common/" ]]; then -	export DOXDATA=${kde_libs_htmldir}/en/common -fi - -abs_top_srcdir=$(cd ${top_srcdir} && pwd) - -rm -rf ${top_builddir}/${kde_libs_htmldir}/en -mkdir -p ${top_builddir}/${kde_libs_htmldir}/en -cd ${top_builddir}/${kde_libs_htmldir}/en -${abs_top_srcdir}/admin/doxygen.sh --modulename --installdir=${top_builddir}/${kde_libs_htmldir}/en ${abs_top_srcdir} diff --git a/q15/cmake/install_apidox b/q15/cmake/install_apidox deleted file mode 100755 index b757f797..00000000 --- a/q15/cmake/install_apidox +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash - -top_srcdir=${1} -top_builddir=${2} -kde_libs_htmldir=${3} -installdir=${DESTDIR} - -abs_top_srcdir=$(cd ${top_srcdir} && pwd) - -cd ${top_builddir} -mkdir -p ${installdir}/${kde_libs_htmldir}/en -cp -Rp ${top_builddir}/${kde_libs_htmldir}/en ${installdir}/${kde_libs_htmldir}/ diff --git a/q15/cmake/modules/FindTDE.cmake b/q15/cmake/modules/FindTDE.cmake deleted file mode 100644 index 01e6f462..00000000 --- a/q15/cmake/modules/FindTDE.cmake +++ /dev/null @@ -1,104 +0,0 @@ -################################################# -# -#  (C) 2010-2011 Serghei Amelian -#  serghei (DOT) amelian (AT) gmail.com -# -#  Improvements and feedback are welcome -# -#  This file is released under GPL >= 2 -# -################################################# - -if( NOT TDE_FOUND ) - -  message( STATUS "checking for 'TDE'") - -  pkg_search_module( TDE tqt ) - -  if( NOT TDE_FOUND ) -    tde_message_fatal( "Unable to find tdelibs!\n Try adding the directory in which the tdelibs.pc file is located\nto the PKG_CONFIG_PATH variable." ) -  endif( ) - -  # if the path is not already defined by user, -  # find tde-config executable -  if( NOT DEFINED KDECONFIG_EXECUTABLE ) -    find_program( KDECONFIG_EXECUTABLE -      NAMES tde-config -      HINTS "${TDE_PREFIX}/bin" ${BIN_INSTALL_DIR} ) -    if( NOT KDECONFIG_EXECUTABLE ) -      tde_message_fatal( "tde-config are NOT found." ) -    endif( NOT KDECONFIG_EXECUTABLE ) -  endif( NOT DEFINED KDECONFIG_EXECUTABLE ) - -  set( ENV{LD_LIBRARY_PATH} "${TDE_LIBDIR}:$ENV{LD_LIBRARY_PATH}" ) -  # check for installed trinity version -  tde_execute_process( -    COMMAND ${KDECONFIG_EXECUTABLE} --version -    OUTPUT_VARIABLE _version -    RESULT_VARIABLE _result -    OUTPUT_STRIP_TRAILING_WHITESPACE -    MESSAGE "Unable to run tde-config!\n TDELIBS are correctly installed?\n Path to tde-config are corect?" ) - -  # parse tde-config output, to extract TDE version -  string( REGEX MATCH "TDE: R([0-9\\.]+).*" __dummy "${_version}" ) -  set( TDE_VERSION "${CMAKE_MATCH_1}" ) - -  # ask tde-config for few paths -  macro( __internal_get_path __type __var ) -    tde_execute_process( -      COMMAND ${KDECONFIG_EXECUTABLE} --expandvars --install ${__type} -      OUTPUT_VARIABLE ${__var} -      CACHE INTERNAL "TDE ${__type} path" FORCE -      OUTPUT_STRIP_TRAILING_WHITESPACE ) -  endmacro( __internal_get_path ) - -  __internal_get_path( include TDE_INCLUDE_DIR ) -  __internal_get_path( lib TDE_LIB_DIR ) -  __internal_get_path( exe TDE_BIN_DIR ) -  __internal_get_path( data TDE_DATA_DIR ) -  __internal_get_path( config TDE_CONFIG_DIR ) -  __internal_get_path( html TDE_HTML_DIR ) -  __internal_get_path( cmake TDE_CMAKE_DIR ) -  __internal_get_path( tqtplugins TDE_TQTPLUGINS_DIR ) - -  # find kde tools -  macro( __internal_find_program __prog __var ) -    find_program( ${__var} -      NAMES ${__prog} -      HINTS "${TDE_PREFIX}/bin" ${BIN_INSTALL_DIR} -      OUTPUT_STRIP_TRAILING_WHITESPACE ) -    if( NOT ${__var} ) -      tde_message_fatal( "${__prog} is NOT found.\n TDELIBS are correctly installed?" ) -    endif( NOT ${__var} ) -    set( ${__var} ${${__var}} CACHE INTERNAL "${__prog} executable" FORCE ) -  endmacro( __internal_find_program ) - -  __internal_find_program( dcopidl KDE3_DCOPIDL_EXECUTABLE ) -  __internal_find_program( dcopidlng KDE3_DCOPIDLNG_EXECUTABLE ) -  __internal_find_program( dcopidl2cpp KDE3_DCOPIDL2CPP_EXECUTABLE ) -  __internal_find_program( meinproc KDE3_MEINPROC_EXECUTABLE ) -  __internal_find_program( tdeconfig_compiler KDE3_KCFGC_EXECUTABLE ) -  __internal_find_program( maketdewidgets KDE3_MAKETDEWIDGETS_EXECUTABLE ) -  # Don't use __internal_find_program due to it's not mandatory -  find_program( TDELFEDITOR_EXECUTABLE NAMES tdelfeditor -    HINTS "${TDE_PREFIX}/bin" ${BIN_INSTALL_DIR} OUTPUT_STRIP_TRAILING_WHITESPACE ) - -  # dcopidlng is a bash script which using tde-config; -  # if PATH to tde-config is not set, dcopidlng will fail; -  # for this reason we set KDECONFIG environment variable before running dcopidlng -  set( KDE3_DCOPIDLNG_EXECUTABLE env KDECONFIG=${KDECONFIG_EXECUTABLE} ${KDE3_DCOPIDLNG_EXECUTABLE} -    CACHE INTERNAL "dcopidlng executable" FORCE ) - -  # look for SCM data if present -  if( EXISTS "${CMAKE_SOURCE_DIR}/.tdescmmodule" ) -    file( STRINGS "${CMAKE_SOURCE_DIR}/.tdescmmodule" TDE_SCM_MODULE_NAME ) -  endif( EXISTS "${CMAKE_SOURCE_DIR}/.tdescmmodule" ) -  if( EXISTS "${CMAKE_SOURCE_DIR}/.tdescmrevision" ) -    file( STRINGS "${CMAKE_SOURCE_DIR}/.tdescmrevision" TDE_SCM_MODULE_REVISION ) -  endif( EXISTS "${CMAKE_SOURCE_DIR}/.tdescmrevision" ) - -  message( STATUS "  found 'TDE', version ${TDE_VERSION}" ) - -endif( NOT TDE_FOUND ) - -include( "${TDE_CMAKE_DIR}/tdelibs.cmake" ) diff --git a/q15/cmake/modules/FindTQt.cmake b/q15/cmake/modules/FindTQt.cmake deleted file mode 100644 index 6194bb26..00000000 --- a/q15/cmake/modules/FindTQt.cmake +++ /dev/null @@ -1,107 +0,0 @@ -################################################# -# -#  (C) 2010-2011 Serghei Amelian -#  serghei (DOT) amelian (AT) gmail.com -# -#  Improvements and feedback are welcome -# -#  This file is released under GPL >= 2 -# -################################################# - -macro( tqt_message ) -  message( STATUS "${ARGN}" ) -endmacro( ) - -pkg_search_module( TQT tqt ) - -if( NOT TQT_FOUND ) -  tde_message_fatal( "Unable to find tqt!\n Try adding the directory in which the tqt.pc file is located\nto the PKG_CONFIG_PATH variable." ) -endif( ) - -mark_as_advanced( -    TMOC_EXECUTABLE -    MOC_EXECUTABLE -    UIC_EXECUTABLE -) - -# tmoc_executable -tde_execute_process( -  COMMAND pkg-config tqt --variable=tmoc_executable -  OUTPUT_VARIABLE TMOC_EXECUTABLE -  CACHE FILEPATH "TQt tmoc executable path" -  OUTPUT_STRIP_TRAILING_WHITESPACE ) - -if( NOT EXISTS ${TMOC_EXECUTABLE} ) -  tde_message_fatal( "tmoc is not found!\n tqt is correctly installed?" ) -endif( ) - -tqt_message( "  tmoc path: ${TMOC_EXECUTABLE}" ) - - -# moc_executable -tde_execute_process( -  COMMAND pkg-config tqt --variable=moc_executable -  OUTPUT_VARIABLE MOC_EXECUTABLE -  CACHE FILEPATH "TQt moc executable path" -  OUTPUT_STRIP_TRAILING_WHITESPACE ) - -if( NOT EXISTS ${MOC_EXECUTABLE} ) -  tde_message_fatal( "Path to moc is not set.\n tqt is correctly installed?" ) -endif( ) - -tqt_message( "  moc path: ${MOC_EXECUTABLE}" ) - - -# uic_executable -tde_execute_process( -  COMMAND pkg-config tqt --variable=uic_executable -  OUTPUT_VARIABLE UIC_EXECUTABLE -  CACHE FILEPATH "TQt uic executable path" -  OUTPUT_STRIP_TRAILING_WHITESPACE ) - -if( NOT EXISTS ${UIC_EXECUTABLE} ) -  tde_message_fatal( "uic not found!\n tqt is correctly installed?" ) -endif( ) - -tqt_message( "  uic path: ${UIC_EXECUTABLE}" ) - - -# tqt-replace script -set( TQT_REPLACE_SCRIPT "${TQT_PREFIX}/bin/tqt-replace" ) - -if( NOT EXISTS ${TQT_REPLACE_SCRIPT} ) -  tde_message_fatal( "tqt-replace not found!\n Check tqt installation." ) -endif( ) - -tqt_message( "  tqt-replace path: ${TQT_REPLACE_SCRIPT}" ) - - -# check if tqt is usable -tde_save( CMAKE_REQUIRED_INCLUDES CMAKE_REQUIRED_LIBRARIES ) -set( CMAKE_REQUIRED_INCLUDES ${TQT_INCLUDE_DIRS} ) -foreach( _dirs ${TQT_LIBRARY_DIRS} ) -  list( APPEND CMAKE_REQUIRED_LIBRARIES "-L${_dirs}" ) -endforeach() -list( APPEND CMAKE_REQUIRED_LIBRARIES ${TQT_LIBRARIES} ) - -check_cxx_source_compiles(" -    #include <tqapplication.h> -    int main(int argc, char **argv) { TQApplication app(argc, argv); return 0; } " -  HAVE_USABLE_TQT ) - -if( NOT HAVE_USABLE_TQT ) -  tde_message_fatal( "Unable to build a simple tqt test." ) -endif( ) - -tde_restore( CMAKE_REQUIRED_INCLUDES CMAKE_REQUIRED_LIBRARIES ) - - -# TQT_CXX_FLAGS -foreach( _flag ${TQT_CFLAGS} ${TQT_CFLAGS_OTHER} ) -  set( TQT_CXX_FLAGS "${TQT_CXX_FLAGS} ${_flag}" ) -endforeach() - -# Set compiler flags according to build type -set( CMAKE_CXX_FLAGS_RELWITHDEBINFO "-DNDEBUG" ) -set( CMAKE_C_FLAGS_RELWITHDEBINFO   "-DNDEBUG" ) diff --git a/q15/cmake/modules/FindTQtQUI.cmake b/q15/cmake/modules/FindTQtQUI.cmake deleted file mode 100644 index 32dd245e..00000000 --- a/q15/cmake/modules/FindTQtQUI.cmake +++ /dev/null @@ -1,45 +0,0 @@ -################################################# -# -#  (C) 2010-2011 Serghei Amelian -#  serghei (DOT) amelian (AT) gmail.com -# -#  Improvements and feedback are welcome -# -#  This file is released under GPL >= 2 -# -################################################# - -macro( tqtqui_message ) -  message( STATUS "${ARGN}" ) -endmacro( ) - -pkg_search_module( TQTQUI tqtqui ) - -if( NOT TQTQUI_FOUND ) -  tde_message_fatal( "Unable to find tqtqui!\n Try adding the directory in which the tqtqui.pc file is located\nto the PKG_CONFIG_PATH variable." ) -endif( ) - -# check if tqtqui is usable -tde_save( CMAKE_REQUIRED_INCLUDES CMAKE_REQUIRED_LIBRARIES ) -set( CMAKE_REQUIRED_INCLUDES ${TQTQUI_INCLUDE_DIRS} ) -foreach( _dirs ${TQTQUI_LIBRARY_DIRS} ) -  list( APPEND CMAKE_REQUIRED_LIBRARIES "-L${_dirs}" ) -endforeach() -list( APPEND CMAKE_REQUIRED_LIBRARIES ${TQTQUI_LIBRARIES} ) - -check_cxx_source_compiles(" -    #include <tqapplication.h> -    int main(int argc, char **argv) { TQApplication app(argc, argv); return 0; } " -  HAVE_USABLE_TQTQUI ) - -if( NOT HAVE_USABLE_TQTQUI ) -  tde_message_fatal( "Unable to build a simple tqtqui test." ) -endif( ) - -tde_restore( CMAKE_REQUIRED_INCLUDES CMAKE_REQUIRED_LIBRARIES ) - - -# TQTQUI_CXX_FLAGS -foreach( _flag ${TQTQUI_CFLAGS_OTHER} ) -  set( TQTQUI_CXX_FLAGS "${TQTQUI_CXX_FLAGS} ${_flag}" ) -endforeach() diff --git a/q15/cmake/modules/TDEL10n.cmake b/q15/cmake/modules/TDEL10n.cmake deleted file mode 100644 index 62aad3a3..00000000 --- a/q15/cmake/modules/TDEL10n.cmake +++ /dev/null @@ -1,1151 +0,0 @@ -################################################# -# -#  (C) 2018-2019 Slávek Banko -#  slavek (DOT) banko (AT) axis.cz -# -#  Improvements and feedback are welcome -# -#  This file is released under GPL >= 2 -# -################################################# - - -##### include essential TDE macros ############## - -set( MASTER_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}" ) -include( TDEMacros ) - - -##### verify required programs ################## - -if( NOT DEFINED TDE_PREFIX AND IS_DIRECTORY /opt/trinity ) -  set( TDE_PREFIX "/opt/trinity" ) -else( ) -  set( TDE_PREFIX "/usr" ) -endif( ) - -if( NOT DEFINED KDE_XGETTEXT_EXECUTABLE ) -  find_program( KDE_XGETTEXT_EXECUTABLE -    NAMES kde-xgettext -    HINTS "${TDE_PREFIX}/bin" -  ) -  if( "${KDE_XGETTEXT_EXECUTABLE}" STREQUAL "KDE_XGETTEXT_EXECUTABLE-NOTFOUND" ) -    tde_message_fatal( "kde-xgettext is required but not found" ) -  endif( ) -endif( ) - -if( NOT DEFINED XGETTEXT_EXECUTABLE ) -  find_program( XGETTEXT_EXECUTABLE -    NAMES xgettext -    HINTS "${TDE_PREFIX}/bin" -  ) -  if( "${XGETTEXT_EXECUTABLE}" STREQUAL "XGETTEXT_EXECUTABLE-NOTFOUND" ) -    tde_message_fatal( "xgettext is required but not found" ) -  endif( ) -  execute_process( -    COMMAND ${XGETTEXT_EXECUTABLE} --version -    OUTPUT_VARIABLE _xgettext_version -    ERROR_VARIABLE _xgettext_version -  ) -  string( REGEX REPLACE "^xgettext[^\n]* ([^ ]*)\n.*" "\\1" _xgettext_version ${_xgettext_version} ) -  if( "${_xgettext_version}" VERSION_LESS "0.19" ) -    tde_message_fatal( "xgettext version >= 0.19 is required but found only ${_xgettext_version}" ) -  endif( ) -endif( ) - -if( NOT DEFINED MSGUNIQ_EXECUTABLE ) -  find_program( MSGUNIQ_EXECUTABLE -    NAMES msguniq -    HINTS "${TDE_PREFIX}/bin" -  ) -  if( "${MSGUNIQ_EXECUTABLE}" STREQUAL "MSGUNIQ_EXECUTABLE-NOTFOUND" ) -    tde_message_fatal( "msguniq is required but not found" ) -  endif( ) -endif( ) - -if( NOT DEFINED MSGCAT_EXECUTABLE ) -  find_program( MSGCAT_EXECUTABLE -    NAMES msgcat -    HINTS "${TDE_PREFIX}/bin" -  ) -  if( "${MSGCAT_EXECUTABLE}" STREQUAL "MSGCAT_EXECUTABLE-NOTFOUND" ) -    tde_message_fatal( "msgcat is required but not found" ) -  endif( ) -endif( ) - -if( NOT DEFINED PO4A_GETTEXTIZE_EXECUTABLE ) -  find_program( PO4A_GETTEXTIZE_EXECUTABLE -    NAMES po4a-gettextize -    HINTS "${TDE_PREFIX}/bin" -  ) -  if( "${PO4A_GETTEXTIZE_EXECUTABLE}" STREQUAL "PO4A_GETTEXTIZE_EXECUTABLE-NOTFOUND" ) -    tde_message_fatal( "po4a-gettextize is required but not found" ) -  endif( ) -  execute_process( -    COMMAND ${PO4A_GETTEXTIZE_EXECUTABLE} --version -    OUTPUT_VARIABLE _po4a_version -    ERROR_VARIABLE _po4a_version -  ) -  string( REGEX REPLACE "^po4a-gettextize[^\n]* ([^ ]*)\n.*" "\\1" _po4a_version ${_po4a_version} ) -  if( "${_po4a_version}" VERSION_LESS "0.45" ) -    tde_message_fatal( "po4a version >= 0.45 is required but found only ${_po4_version}" ) -  endif( ) -endif( ) - -if( NOT DEFINED TDE_COMMON_TEXTS_POT ) -  get_filename_component( TDE_SOURCE_BASE "${CMAKE_CURRENT_SOURCE_DIR}" ABSOLUTE ) -  while( (NOT EXISTS "${TDE_SOURCE_BASE}/tdelibs" -          OR NOT IS_DIRECTORY "${TDE_SOURCE_BASE}/tdelibs" ) -         AND NOT "${TDE_SOURCE_BASE}" STREQUAL "/" ) -    get_filename_component( TDE_SOURCE_BASE "${TDE_SOURCE_BASE}" PATH ) -  endwhile( ) -  find_file( TDE_COMMON_TEXTS_POT -    NAMES tde.pot -    HINTS "${TDE_SOURCE_BASE}/tdelibs" "${TDE_PREFIX}/include" "${TDE_PREFIX}/include/tde" -  ) -  if( "${TDE_COMMON_TEXTS_POT}" STREQUAL "TDE_COMMON_TEXTS_POT-NOTFOUND" ) -    tde_message_fatal( "translation template with common texts not found" ) -  endif( ) -endif( ) - - -################################################# -##### -##### tde_l10n_add_subdirectory -##### -##### The function simulates the add_subdirectory() behavior, but -##### the CMakeL10n.txt file is used instead of CMakeLists.txt. -##### - -function( tde_l10n_add_subdirectory _dir ) -  set( CMAKE_CURRENT_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/${_dir}" ) -  set( CMAKE_CURRENT_BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}/${_dir}" ) -  include( ${CMAKE_CURRENT_SOURCE_DIR}/CMakeL10n.txt ) -endfunction( ) - - -################################################# -##### -##### tde_l10n_auto_add_subdirectories -##### -##### The function is equivalent to tde_auto_add_subdirectories, but -##### the CMakeL10n.txt file is used instead of CMakeLists.txt. -##### - -function( tde_l10n_auto_add_subdirectories ) -  file( GLOB _dirs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/*" ) -  foreach( _dir ${_dirs} ) -    if( IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/${_dir} -        AND NOT ${_dir} STREQUAL ".svn" -        AND EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${_dir}/CMakeL10n.txt ) -      tde_l10n_add_subdirectory( ${_dir} ) -    endif( ) -  endforeach( ) -endfunction( ) - - -################################################# -##### -##### tde_l10n_create_template -##### -##### Macro is used to generate a translation template - POT file. -##### -##### Syntax: -#####   tde_l10n_create_template( -#####     [CATALOG] file_name -#####     [SOURCES source_spec [source_spec]] -#####     [COMMENT tag] -#####     [EXCLUDES regex [regex]] -#####     [KEYWORDS keyword [keyword]] -#####     [ATTRIBUTES attrib_spec [attrib_spec]] -#####     [X-POT common_texts.pot] -#####     [DESTINATION directory] -#####   ) -##### -##### Where: -#####   CATALOG determines the target file name (without pot suffix). -#####   SOURCES can be specified by several options: -#####     a) Do not specify anything -#####      - all usual source files will be automatically searched. -#####     b) Enter the directory name - for example, '.' or 'src' -#####      - all the usual source files in the specified directory -#####        and subdirectories will be searched. -#####     c) Enter the mask - for example '*.cpp' -#####      - all files with the specified mask will be searched. -#####     d) Specify the name of the individual file. -#####     The methods from b) to d) can be combined. -#####   EXCLUDES determines which files are to be excluded from processing -#####   COMMENT determines additional comment to extract by xgettext. -#####   KEYWORDS determines additional keywords for xgettext. -#####     Use "-" if is needed to disable default keywords. -#####   ATTRIBUTES determines files and specification for extractattr: -#####     source_spec:element,attribute[,context][[:element,attribute[,context]]...] -#####   X-POT entries from common_texts.pot are not extracted -#####     By default, "tde.pot" is searched for and used. -#####     Use "-" to skip this. -#####   DESTINATION determines directory to save translation template. -#####     The destination directory is determined as follows: -#####     a) Directory is specified as an argument. -#####     b) The variable POT_SOURCE_DIR is set. -#####     c) There is a 'translations' directory. -#####     d) There is a 'po' directory. -##### -##### Note: -#####    Editing the _files list inside foreach( ${_files} ) below in the -#####    code is safe, because in CMake foreach parameters are evaluated -#####    before the loop starts. Therefore, the changes in the list inside -#####    the loop do not have an unwanted impact on the loop processing. -##### - -macro( tde_l10n_create_template ) - -  unset( _catalog ) -  unset( _sources ) -  unset( _excludes ) -  unset( _files ) -  unset( _desktops ) -  unset( _pots ) -  unset( _dest ) -  unset( _keywords_add ) -  unset( _comment ) -  unset( _attributes ) -  unset( _exclude_pot ) -  unset( _pot ) -  unset( _directive ) -  set( _var _catalog ) -  set( _keywords_c_default "i18n" "i18n:1,2" "tr2i18n" "tr2i18n:1,2" "I18N_NOOP" "I18N_NOOP2" ) -  set( _keywords_desktop_default "Description" "ExtraNames" "X-TDE-Submenu" ) - -  foreach( _arg ${ARGN} ) - -    # found directive "CATALOG" -    if( "+${_arg}" STREQUAL "+CATALOG" ) -      unset( _catalog ) -      set( _var _catalog ) -      set( _directive 1 ) -    endif( ) - -    # found directive "SOURCES" -    if( "+${_arg}" STREQUAL "+SOURCES" ) -      unset( _sources ) -      set( _var _sources ) -      set( _directive 1 ) -    endif( ) - -    # found directive "EXCLUDES" -    if( "+${_arg}" STREQUAL "+EXCLUDES" ) -      unset( _excludes ) -      set( _var _excludes ) -      set( _directive 1 ) -    endif( ) - -    # found directive "DESTINATION" -    if( "+${_arg}" STREQUAL "+DESTINATION" ) -      unset( _dest ) -      set( _var _dest ) -      set( _directive 1 ) -    endif( ) - -    # found directive "COMMENT" -    if( "+${_arg}" STREQUAL "+COMMENT" ) -      unset( _comment ) -      set( _var _comment ) -      set( _directive 1 ) -    endif( ) - -    # found directive "KEYWORDS" -    if( "+${_arg}" STREQUAL "+KEYWORDS" ) -      unset( _keywords_add ) -      set( _var _keywords_add ) -      set( _directive 1 ) -    endif( ) - -    # found directive "ATTRIBUTES" -    if( "+${_arg}" STREQUAL "+ATTRIBUTES" ) -      unset( _attributes ) -      set( _var _attributes ) -      set( _directive 1 ) -    endif( ) - -    # found directive "X-POT" -    if( "+${_arg}" STREQUAL "+X-POT" ) -      unset( _exclude_pot ) -      set( _var _exclude_pot ) -      set( _directive 1 ) -    endif( ) - -    # collect data -    if( _directive ) -      unset( _directive ) -    elseif( _var ) -      list( APPEND ${_var} ${_arg} ) -    endif( ) - -  endforeach( ) - -  # verify catalog -  if( NOT _catalog ) -    tde_message_fatal( "the name of the translation catalog is not defined" ) -  endif( ) - -  # determine the destination directory -  if( NOT _dest ) -    if( POT_SOURCE_DIR ) -      set( _dest ${POT_SOURCE_DIR} ) -    elseif( EXISTS "${MASTER_SOURCE_DIR}/translations" ) -      set( _dest "${MASTER_SOURCE_DIR}/translations/" ) -    elseif( EXISTS "${MASTER_SOURCE_DIR}/po" ) -      set( _dest "${MASTER_SOURCE_DIR}/po/" ) -    else( ) -      tde_message_fatal( "cannot determine destination directory" ) -    endif( ) -  endif( ) -  if( ${_dest} MATCHES "[^/]$" ) -    set( _dest "${_dest}/" ) -  endif( ) -  if( ${_dest} MATCHES "^[^/]" ) -    set( _dest "${CMAKE_CURRENT_SOURCE_DIR}/${_dest}" ) -  endif( ) - -  get_filename_component( _potFilename "${_dest}${_catalog}.pot" ABSOLUTE ) -  file( RELATIVE_PATH _potFilename ${CMAKE_SOURCE_DIR} ${_potFilename} ) -  message( STATUS "Create translation template ${_potFilename}" ) - -  # verify sources -  if( NOT _sources AND NOT _attributes ) -    # add current directory -    list( APPEND _sources "." ) -  endif( ) -  foreach( _src ${_sources} ) - -    # add all source files from directory -    if( IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/${_src} ) -      if( ${_src} STREQUAL "." ) -        set( _dir "${CMAKE_CURRENT_SOURCE_DIR}" ) -      else( ) -        set( _dir "${CMAKE_CURRENT_SOURCE_DIR}/${_src}" ) -      endif( ) -      file( GLOB_RECURSE _add_files -            RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} -            ${_dir}/*.c -            ${_dir}/*.cc -            ${_dir}/*.cpp -            ${_dir}/*.h -            ${_dir}/*.kcfg -            ${_dir}/*.rc -            ${_dir}/*.ui -      ) -      list( SORT _add_files ) -      list( APPEND _files ${_add_files} ) - -    # add files by the specified mask -    elseif( ${_src} MATCHES "(\\*|\\?)" ) -      file( GLOB_RECURSE _add_files -            RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} -            ${CMAKE_CURRENT_SOURCE_DIR}/${_src} -      ) -      list( SORT _add_files ) -      list( APPEND _files ${_add_files} ) - -    # add a individual file -    elseif( EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${_src} ) -      list( APPEND _files ${_src} ) -    endif( ) - -  endforeach( ) - -  # filter files by excludes -  if( _excludes ) -    foreach( _src ${_files} ) -      foreach( _exclude ${_excludes} ) -        if( ${_src} MATCHES ${_exclude} ) -          list( REMOVE_ITEM _files ${_src} ) -        endif( ) -      endforeach( ) -    endforeach( ) -  endif( ) -  if( NOT _files AND NOT _attributes ) -    tde_message_fatal( "no source files found" ) -  endif( ) - -  # prepare x-pot -  if( NOT _exclude_pot ) -    set( _exclude_pot "${TDE_COMMON_TEXTS_POT}" ) -  endif( ) -  if( "${_exclude_pot}" STREQUAL "-" ) -    unset( _exclude_pot ) -  else( ) -    if( ${_exclude_pot} MATCHES "^[^/]" ) -      set( _exclude_pot "${CMAKE_CURRENT_SOURCE_DIR}/${_exclude_pot}" ) -    endif( ) -    set( _exclude_pot "-x${_exclude_pot}" ) -  endif( ) - -  # prepare comment -  if( NOT "${_comment}" STREQUAL "" ) -    if( "${_comment}" STREQUAL "-" OR "${_comment}" STREQUAL "all" ) -      set( _comment "-c" ) -    else( ) -      set( _comment "-c${_comment}" ) -    endif( ) -  endif( ) - -  # prepare keywords -  unset( _keywords_c ) -  unset( _keywords_desktop ) -  foreach( _keyword ${_keywords_c_default} ${_keywords_add} ) -    if( "${_keyword}" STREQUAL "-" ) -      unset( _keywords_c ) -      unset( _keyword ) -    endif( ) -    list( APPEND _keywords_c "-k${_keyword}" ) -  endforeach( ) -  foreach( _keyword ${_keywords_desktop_default} ${_keywords_add} ) -    if( "${_keyword}" STREQUAL "-" ) -      unset( _keywords_desktop ) -      unset( _keyword ) -    endif( ) -    list( APPEND _keywords_desktop "-k${_keyword}" ) -  endforeach( ) - -  # prepare resource files *.kcfg, *.rc and *.ui -  foreach( _src ${_files} ) -    if( ${_src} MATCHES "\\.(kcfg|rc|ui)(\\.cmake)?$" ) -      set( _src_index 0 ) -      set( _src_l10n "${_src}.tde_l10n" ) -      list( FIND _files "${_src_l10n}" _src_file_index ) -      while( "${_src_file_index}" GREATER -1 ) -        set( _src_l10n "${_src}.tde_l10n${_src_index}" ) -        list( FIND _files "${_src_l10n}" _src_file_index ) -        math( EXPR _src_index "${_src_index}+1" ) -      endwhile( ) -      tde_l10n_prepare_xml( SOURCE ${_src} TARGET ${_src_l10n} ) -      list( REMOVE_ITEM _files ${_src} ) -      list( APPEND _files "${_src_l10n}" ) -    endif( ) -  endforeach( ) - -  # prepare attributes -  if( _attributes ) -    foreach( _attrib ${_attributes} ) -      if( ${_attrib} MATCHES "^([^:]+):(.+)$" ) -        string( REGEX REPLACE "^([^:]+):(.+)$" "\\1" _attrib_glob ${_attrib} ) -        string( REGEX REPLACE "^([^:]+):(.+)$" "\\2" _attrib_spec ${_attrib} ) -        file( GLOB_RECURSE _attrib_files -              RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} -              ${CMAKE_CURRENT_SOURCE_DIR}/${_attrib_glob} -        ) -        if( _excludes ) -          foreach( _src ${_attrib_files} ) -            foreach( _exclude ${_excludes} ) -              if( ${_src} MATCHES ${_exclude} ) -                list( REMOVE_ITEM _attrib_files ${_src} ) -              endif( ) -            endforeach( ) -          endforeach( ) -        endif( ) -        if( _attrib_files ) -          list( SORT _attrib_files ) -          string( REGEX MATCHALL "[^:]+" _attrib_spec "${_attrib_spec}" ) -          foreach( _src ${_attrib_files} ) -            set( _src_index 0 ) -            set( _src_l10n "${_src}.tde_l10n" ) -            list( FIND _files "${_src_l10n}" _src_file_index ) -            while( "${_src_file_index}" GREATER -1 ) -              set( _src_l10n "${_src}.tde_l10n${_src_index}" ) -              list( FIND _files "${_src_l10n}" _src_file_index ) -              math( EXPR _src_index "${_src_index}+1" ) -            endwhile( ) -            tde_l10n_prepare_xmlattr( -              SOURCE ${_src} -              TARGET ${_src_l10n} -              ATTRIBUTES ${_attrib_spec} -            ) -            list( APPEND _files "${_src_l10n}" ) -          endforeach( ) -        endif( ) -      endif( ) -    endforeach( ) -  endif( ) - -  # prepare tips -  foreach( _src ${_files} ) -    if( ${_src} MATCHES "(^|/)tips$" ) -      tde_l10n_preparetips( ${_src} ) -      list( REMOVE_ITEM _files ${_src} ) -      list( APPEND _files "${_src}.tde_l10n" ) -    endif( ) -  endforeach( ) - -  # prepare documentation -  foreach( _src ${_files} ) -    if( ${_src} MATCHES "\\.(ad|adoc|docbook|[1-8])(\\.cmake)?$" ) -      if( ${_src} MATCHES "\\.(ad|adoc)(\\.cmake)?$" ) -        set( _doc_format "asciidoc" ) -      elseif( ${_src} MATCHES "\\.(docbook)(\\.cmake)?$"  ) -        set( _doc_format "docbook" ) -      elseif( ${_src} MATCHES "\\.([1-8])(\\.cmake)?$"  ) -        set( _doc_format "man" ) -      else( ) -        set( _doc_format "text" ) -      endif( ) -      execute_process( -        COMMAND ${PO4A_GETTEXTIZE_EXECUTABLE} -          -f ${_doc_format} -m ${_src} -        WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} -        OUTPUT_VARIABLE _potDoc -      ) -      if( _potDoc ) -        string( REPLACE "Content-Type: text/plain; charset=CHARSET" "Content-Type: text/plain; charset=UTF-8" _potDoc "${_potDoc}" ) -        string( REPLACE "Content-Transfer-Encoding: ENCODING" "Content-Transfer-Encoding: 8bit" _potDoc "${_potDoc}" ) -        file( WRITE ${CMAKE_CURRENT_SOURCE_DIR}/${_src}.tde_l10n "${_potDoc}" ) -        list( APPEND _pots ${_src}.tde_l10n ) -      endif( ) -      list( REMOVE_ITEM _files ${_src} ) -    endif( ) -  endforeach( ) - -  # pick desktop files *.desktop and *.protocol -  foreach( _src ${_files} ) -    if( ${_src} MATCHES "\\.(desktop|protocol)(\\.cmake)?$" ) -      list( APPEND _desktops ${_src} ) -      list( REMOVE_ITEM _files ${_src} ) -    endif( ) -  endforeach( ) - -  # pick pot files *.pot -  foreach( _src ${_files} ) -    if( ${_src} MATCHES "\\.pot(\\.cmake)?(\\.tde_l10n)?$" ) -      list( APPEND _pots ${_src} ) -      list( REMOVE_ITEM _files ${_src} ) -    endif( ) -  endforeach( ) - -  # add common translator info -  if( _files ) -    list( FIND _excludes "_translatorinfo" _translatorinfo_index ) -    if( "${_translatorinfo_index}" LESS 0 ) -      set( _translatorinfo -        "i18n(\"NAME OF TRANSLATORS\", \"Your names\")\n" -        "i18n(\"EMAIL OF TRANSLATORS\", \"Your emails\")\n" -      ) -      file( WRITE ${CMAKE_CURRENT_SOURCE_DIR}/_translatorinfo.tde_l10n ${_translatorinfo} ) -      list( INSERT _files 0 "_translatorinfo.tde_l10n" ) -    endif( ) -  endif( ) - -  # create translation template -  if( _files ) -    execute_process( -      COMMAND ${KDE_XGETTEXT_EXECUTABLE} --foreign-user -C -        ${_comment} ${_keywords_c} ${_exclude_pot} -o - ${_files} -      WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} -      OUTPUT_VARIABLE _pot -    ) - -    # set charset and encoding headers -    if( _pot ) -      string( REPLACE "Content-Type: text/plain; charset=CHARSET" "Content-Type: text/plain; charset=UTF-8" _pot "${_pot}" ) -      string( REPLACE "Content-Transfer-Encoding: ENCODING" "Content-Transfer-Encoding: 8bit" _pot "${_pot}" ) -    endif( ) -  endif( ) - -  # process desktop files -  if( _desktops ) -    # create translation template for desktop files -    if( _pot ) -      set( _withPotHeader "--omit-header" ) -    else( ) -      set( _withPotHeader "--foreign-user" ) -    endif( ) -    execute_process( -      COMMAND ${XGETTEXT_EXECUTABLE} ${_withPotHeader} -L Desktop -        ${_keywords_desktop} -o - ${_desktops} -      WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} -      OUTPUT_VARIABLE _potDesktop -    ) - -    # merge translation templates -    if( _potDesktop ) -      if( _pot ) -        file( WRITE ${CMAKE_CURRENT_SOURCE_DIR}/extracted-pot.tmp "${_pot}" ) -        file( APPEND ${CMAKE_CURRENT_SOURCE_DIR}/extracted-pot.tmp "${_potDesktop}" ) -        execute_process( -          COMMAND ${MSGUNIQ_EXECUTABLE} --use-first -          INPUT_FILE ${CMAKE_CURRENT_SOURCE_DIR}/extracted-pot.tmp -          WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} -          OUTPUT_VARIABLE _pot -        ) -        file( REMOVE ${CMAKE_CURRENT_SOURCE_DIR}/extracted-pot.tmp ) -      else( ) -        set( _pot "${_potDesktop}" ) - -        # set charset and encoding headers -        string( REPLACE "Content-Type: text/plain; charset=CHARSET" "Content-Type: text/plain; charset=UTF-8" _pot "${_pot}" ) -        string( REPLACE "Content-Transfer-Encoding: ENCODING" "Content-Transfer-Encoding: 8bit" _pot "${_pot}" ) -      endif( ) -    endif( ) -  endif( ) - -  # merge additional pot files -  if( _pots ) -    file( WRITE ${CMAKE_CURRENT_SOURCE_DIR}/extracted-pot.tmp "${_pot}" ) -    execute_process( -      COMMAND ${MSGCAT_EXECUTABLE} --use-first extracted-pot.tmp ${_pots} -      WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} -      OUTPUT_VARIABLE _pot -    ) -    file( REMOVE ${CMAKE_CURRENT_SOURCE_DIR}/extracted-pot.tmp ) - -    # set charset and encoding headers -    string( REPLACE "Content-Type: text/plain; charset=CHARSET" "Content-Type: text/plain; charset=UTF-8" _pot "${_pot}" ) -    string( REPLACE "Content-Transfer-Encoding: ENCODING" "Content-Transfer-Encoding: 8bit" _pot "${_pot}" ) -  endif( ) - -  # finalize translation template -  if( _pot ) - -    # update references for resources to original files and line numbers -    list( FIND _files "extracted-rc.tde_l10n" _extractedRC_index ) -    if( "${_extractedRC_index}" GREATER -1 -        AND EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/extracted-rc.tde_l10n ) -      file( READ "${CMAKE_CURRENT_SOURCE_DIR}/extracted-rc.tde_l10n" _extractedRC ) -      string( REGEX REPLACE "[^\n]" "" _extractedRC_len "${_extractedRC}" ) -      string( LENGTH "+${_extractedRC_len}" _extractedRC_len ) -      set( _rcPos 0 ) -      while( _rcPos LESS ${_extractedRC_len} ) -        string( REGEX REPLACE "^([^\n]*)\n(.*)" "\\1" _rcLine "${_extractedRC}" ) -        string( REGEX REPLACE "^([^\n]*)\n(.*)" "\\2" _extractedRC "${_extractedRC}" ) -        math( EXPR _rcPos "${_rcPos}+1" ) -        if( "${_rcLine}" MATCHES "^//i18n: file .* line [0-9]*$" ) -          string( REGEX REPLACE "^//i18n: file (.*) line ([0-9]*)$" "\\1:\\2" _rcOrig ${_rcLine} ) -        endif( ) -        if( "${_rcLine}" MATCHES "^i18n\\(" AND _rcOrig ) -          string( REGEX REPLACE "(^|\n)(#:.*) extracted-rc.tde_l10n:${_rcPos}( |\n)" "\\1\\2 ${_rcOrig}\\3" _pot "${_pot}" ) -          unset( _rcOrig ) -        endif( ) -      endwhile( ) -    endif( ) - -    # update references for modified source files (".tde_l10n" extension) -    string( REGEX REPLACE "\\.tde_l10n[0-9]*(:[0-9]+)" "\\1" _pot "${_pot}" ) - -    # save translation template -    if( EXISTS "${_dest}${_catalog}.pot" ) -      file( READ "${_dest}${_catalog}.pot" _potOrig ) -    else( ) -      unset( _potOrig ) -    endif( ) -    if( _potOrig ) -      string( REGEX REPLACE "\n\"POT-Creation-Date: [^\"]*\"\n" "" _potOrig "${_potOrig}" ) -      string( REGEX REPLACE "\n\"POT-Creation-Date: [^\"]*\"\n" "" _potNew "${_pot}" ) -    endif( ) -    if( NOT _potOrig OR NOT "${_potNew}" STREQUAL "${_potOrig}" ) -      file( WRITE "${_dest}${_catalog}.pot" "${_pot}" ) -    endif( ) - -  endif( _pot ) - -  # cleanup -  foreach( _file ${_files} ${_desktops} ${_pots} ) -    if( "${_file}" MATCHES "\\.tde_l10n[0-9]*$" ) -      file( REMOVE ${CMAKE_CURRENT_SOURCE_DIR}/${_file} ) -    endif( ) -  endforeach( ) - -endmacro( ) - - -################################################# -##### -##### tde_l10n_preparetips -##### -##### Macro is used to prepare tips file for xgettext -##### - -macro( tde_l10n_preparetips _tips ) - -  tde_l10n_prepare_xml( -    SOURCE ${_tips} -    TAGS html -    C_FORMAT -    PRESERVE entities line-wrap spaces-leading spaces-trailing spaces-multi -  ) - -endmacro( ) - - -################################################# -##### -##### tde_l10n_prepare_xml -##### -##### The function is used to prepare XML file for xgettext. -##### The default settings are identical to extractrc. -##### - -function( tde_l10n_prepare_xml ) - -  unset( _source ) -  unset( _target ) -  unset( _context ) -  set( _skip_properties "database|associations|populationText" ) -  set( _tags "[tT][eE][xX][tT]|title|string|whatsthis|tooltip|label" ) -  set( _preserve "line-wrap" "lines-leading" "lines-multi" "spaces-leading" "spaces-trailing" "spaces-multi" ) -  set( _no_c_format 1 ) -  unset( _directive ) -  set( _var _source ) - -  foreach( _arg ${ARGN} ) - -    # found directive "SOURCE" -    if( "+${_arg}" STREQUAL "+SOURCE" ) -      unset( _source ) -      set( _var _source ) -      set( _directive 1 ) -    endif( ) - -    # found directive "TARGET" -    if( "+${_arg}" STREQUAL "+TARGET" ) -      unset( _target ) -      set( _var _target ) -      set( _directive 1 ) -    endif( ) - -    # found directive "CONTEXT" -    if( "+${_arg}" STREQUAL "+CONTEXT" ) -      unset( _context ) -      set( _var _context ) -      set( _directive 1 ) -    endif( ) - -    # found directive "SKIP-PROPERTIES" -    if( "+${_arg}" STREQUAL "+SKIP-PROPERTIES" ) -      unset( _skip_properties ) -      set( _var _skip_properties ) -      set( _directive 1 ) -    endif( ) - -    # found directive "TAGS" -    if( "+${_arg}" STREQUAL "+TAGS" ) -      unset( _tags ) -      set( _var _tags ) -      set( _directive 1 ) -    endif( ) - -    # found directive "PRESERVE" -    if( "+${_arg}" STREQUAL "+PRESERVE" ) -      unset( _preserve ) -      set( _var _preserve ) -      set( _directive 1 ) -    endif( ) - -    # found directive "C_FORMAT" -    if( "+${_arg}" STREQUAL "+C_FORMAT" ) -      unset( _no_c_format ) -      set( _directive 1 ) -    endif( ) - -    # found directive "NO_C_FORMAT" -    if( "+${_arg}" STREQUAL "+NO_C_FORMAT" ) -      set( _no_c_format 1 ) -      set( _directive 1 ) -    endif( ) - -    # collect data -    if( _directive ) -      unset( _directive ) -    elseif( _var ) -      list( APPEND ${_var} ${_arg} ) -    endif( ) - -  endforeach( ) - -  # verify source -  if( NOT _source ) -    tde_message_fatal( "no source XML file" ) -  endif( ) -  if( NOT IS_ABSOLUTE "${_source}" ) -    set( _source "${CMAKE_CURRENT_SOURCE_DIR}/${_source}" ) -  endif( ) -  if( NOT _target ) -    set( _target "${_source}.tde_l10n" ) -  endif( ) -  if( NOT IS_ABSOLUTE "${_target}" ) -    set( _target "${CMAKE_CURRENT_SOURCE_DIR}/${_target}" ) -  endif( ) - -  # prepare tags to regexp -  string( REPLACE ";" "|" _tags "${_tags}" ) -  if( "${_skip_properties}" STREQUAL "-" ) -    unset( _skip_properties ) -  endif( ) -  if( DEFINED _skip_properties ) -    string( REPLACE ";" "|" _skip_properties "${_skip_properties}" ) -    set( _tags "property|${_tags}" ) -  endif( ) - -  # read file -  file( READ ${_source} _xml_data ) -  string( REGEX REPLACE "[^\n]" "" _xml_len ${_xml_data} ) -  string( LENGTH "+${_xml_len}" _xml_len ) - -  # process lines -  set( _xml_pos 0 ) -  unset( _xml_l10n ) -  unset( _xml_inside ) -  unset( _xml_tag_empty ) -  unset( _xml_skipped_prop ) -  while( _xml_pos LESS ${_xml_len} ) -    # pick line -    string( REGEX REPLACE "^([^\n]*)\n(.*)" "\\1" _xml_line "${_xml_data}" ) -    string( REGEX REPLACE "^([^\n]*)\n(.*)" "\\2" _xml_data "${_xml_data}" ) -    math( EXPR _xml_pos "${_xml_pos}+1" ) -    set( _xml_newline 1 ) - -    # process tags on line -    while( _xml_newline OR NOT "${_xml_line}" STREQUAL "" ) -      unset( _xml_newline ) -      unset( _xml_line_prefix ) -      unset( _xml_line_suffix ) -      unset( _xml_line_rest ) -      if( NOT _xml_inside ) -        if( _xml_skipped_prop AND "${_xml_line}" MATCHES "</property>" ) -          unset( _xml_skipped_prop ) -          string( REGEX MATCH "</property>(.*)" _xml_line "${_xml_line}" ) -          string( REGEX REPLACE "^</property>(.*)" "\\1" _xml_line "${_xml_line}" ) -        endif( ) -        if( NOT _xml_skipped_prop AND "${_xml_line}" MATCHES "<(${_tags})([ \t][^>]*)*>" ) -          string( REGEX MATCH "<(${_tags})([ \t][^>]*)*>(.*)" _xml_line "${_xml_line}" ) -          string( REGEX MATCH "^<(${_tags})([ \t][^>]*)*>" _xml_attr "${_xml_line}" ) -          string( REGEX REPLACE "^<(${_tags})([ \t][^>]*)*>(.*)" "\\3" _xml_line "${_xml_line}" ) -          if( "${_xml_attr}" MATCHES "^<property([ \t][^>]*)*>" AND DEFINED _skip_properties ) -            if( "${_xml_attr}" MATCHES "[ \t]name=\"(${_skip_properties})\"" ) -              set( _xml_skipped_prop 1 ) -            endif( ) -            set( _xml_line_rest "${_xml_line}" ) -            set( _xml_line "" ) -          else( ) -            set( _xml_inside 1 ) -            set( _xml_context "${_context}" ) -            if( "${_xml_attr}" MATCHES "[ \t]context=\"([^\"]*)\"" ) -              string( REGEX REPLACE ".* context=\"([^\"]*)\".*" "\\1" _xml_context "${_xml_attr}" ) -            endif( ) -            set( _xml_line_prefix "i18n(" ) -            if( _no_c_format ) -              set( _xml_line_prefix "${_xml_line_prefix}/* xgettext: no-c-format */" ) -            endif( ) -            if( _xml_context ) -              set( _xml_line_prefix "${_xml_line_prefix}\"${_xml_context}\", " ) -            endif( ) -            set( _xml_tag_empty 1 ) -          endif( ) -        else( ) -          set( _xml_line "" ) -        endif( ) -      endif( ) - -      if( _xml_inside ) -        if( "${_xml_line}" MATCHES "</(${_tags})>" ) -          unset( _xml_inside ) -          string( REGEX REPLACE "</(${_tags})>(.*)" "\\2" _xml_line_rest "${_xml_line}" ) -          string( REGEX REPLACE "</(${_tags})>(.*)" "" _xml_line "${_xml_line}" ) -          set( _xml_line_suffix ");" ) -        endif( ) - -        string( REGEX REPLACE "\\\\" "\\\\\\\\" _xml_line "${_xml_line}" ) -        string( REGEX REPLACE "\\\"" "\\\\\"" _xml_line "${_xml_line}" ) -        string( REGEX REPLACE "\t" "\\\\t" _xml_line "${_xml_line}" ) -        if( NOT ";${_preserve};" MATCHES ";entities;" ) -          string( REGEX REPLACE "<" "<" _xml_line "${_xml_line}" ) -          string( REGEX REPLACE ">" ">" _xml_line "${_xml_line}" ) -          string( REGEX REPLACE "&" "&" _xml_line "${_xml_line}" ) -        endif( ) -        if( NOT ";${_preserve};" MATCHES ";spaces-leading;" ) -          string( REGEX REPLACE "^ +" "" _xml_line "${_xml_line}" ) -        endif( ) -        if( NOT ";${_preserve};" MATCHES ";spaces-trailing;" ) -          string( REGEX REPLACE " +$" "" _xml_line "${_xml_line}" ) -        endif( ) -        if( NOT ";${_preserve};" MATCHES ";spaces-multi;" ) -          string( REGEX REPLACE "  +" " " _xml_line "${_xml_line}" ) -        endif( ) - -        if( _xml_inside ) -          if( ";${_preserve};" MATCHES ";line-wrap;" ) -            if( NOT "${_xml_line}" STREQUAL "" -                OR ( ";${_preserve};" MATCHES ";lines-leading;" AND _xml_tag_empty ) -                OR ( ";${_preserve};" MATCHES ";lines-multi;" AND NOT _xml_tag_empty ) ) -              set( _xml_line "${_xml_line}\\n" ) -            endif( ) -          elseif( NOT "${_xml_line}" STREQUAL "" AND NOT _xml_tag_empty ) -            set( _xml_line " ${_xml_line}" ) -          endif( ) -        endif( ) -        if( NOT "${_xml_line}" STREQUAL "" ) -          unset( _xml_tag_empty ) -        endif( ) -      endif( ) - -      # drop empty tag on single line -      if( _xml_line_prefix AND _xml_line_suffix AND _xml_tag_empty ) -        # skip empty string for translation - -      # add current tag to output -      else( ) -        set( _xml_l10n "${_xml_l10n}${_xml_line_prefix}" ) -        if( NOT "${_xml_line}" STREQUAL "" OR ( _xml_line_suffix AND _xml_tag_empty ) ) -          set( _xml_l10n "${_xml_l10n}\"${_xml_line}\"" ) -        endif( ) -        set( _xml_l10n "${_xml_l10n}${_xml_line_suffix}" ) -      endif( ) - -      # take the rest of the line for processing -      set( _xml_line "${_xml_line_rest}" ) -    endwhile( ) -    set( _xml_l10n "${_xml_l10n}\n" ) -  endwhile( ) - -  # write file -  file( WRITE ${_target} "${_xml_l10n}" ) - -endfunction( ) - - -################################################# -##### -##### tde_l10n_prepare_xmlattr -##### -##### The function is used to prepare attributes in XML file -##### for xgettext, comparable to extractattr. -##### - -function( tde_l10n_prepare_xmlattr ) - -  unset( _source ) -  unset( _target ) -  unset( _context ) -  unset( _attribs ) -  unset( _directive ) -  set( _preserve "line-wrap" "lines-leading" "spaces-leading" "spaces-trailing" "spaces-multi" ) -  set( _var _source ) - -  foreach( _arg ${ARGN} ) - -    # found directive "SOURCE" -    if( "+${_arg}" STREQUAL "+SOURCE" ) -      unset( _source ) -      set( _var _source ) -      set( _directive 1 ) -    endif( ) - -    # found directive "TARGET" -    if( "+${_arg}" STREQUAL "+TARGET" ) -      unset( _target ) -      set( _var _target ) -      set( _directive 1 ) -    endif( ) - -    # found directive "CONTEXT" -    if( "+${_arg}" STREQUAL "+CONTEXT" ) -      unset( _context ) -      set( _var _context ) -      set( _directive 1 ) -    endif( ) - -    # found directive "ATTRIBUTES" -    if( "+${_arg}" STREQUAL "+ATTRIBUTES" ) -      unset( _attribs ) -      set( _var _attribs ) -      set( _directive 1 ) -    endif( ) - -    # found directive "PRESERVE" -    if( "+${_arg}" STREQUAL "+PRESERVE" ) -      unset( _preserve ) -      set( _var _preserve ) -      set( _directive 1 ) -    endif( ) - -    # collect data -    if( _directive ) -      unset( _directive ) -    elseif( _var ) -      list( APPEND ${_var} ${_arg} ) -    endif( ) - -  endforeach( ) - -  # verify source -  if( NOT _source ) -    tde_message_fatal( "no source XML file" ) -  endif( ) -  if( NOT IS_ABSOLUTE "${_source}" ) -    set( _source "${CMAKE_CURRENT_SOURCE_DIR}/${_source}" ) -  endif( ) -  if( NOT _target ) -    set( _target "${_source}.tde_l10n" ) -  endif( ) -  if( NOT IS_ABSOLUTE "${_target}" ) -    set( _target "${CMAKE_CURRENT_SOURCE_DIR}/${_target}" ) -  endif( ) - -  # prepare tags to regexp -  if( NOT _attribs ) -    tde_message_fatal( "no attributes specified" ) -  endif( ) -  unset( _tags ) -  foreach( _attrib ${_attribs} ) -    string( REGEX REPLACE "^([^,]+),.*" "\\1" _tag "${_attrib}" ) -    list( APPEND _tags "${_tag}" ) -  endforeach( ) -  list( REMOVE_DUPLICATES _tags ) -  string( REPLACE ";" "|" _tags "${_tags}" ) - -  # read file -  file( READ ${_source} _xml_data ) -  string( REGEX REPLACE "[^\n]" "" _xml_len ${_xml_data} ) -  string( LENGTH "+${_xml_len}" _xml_len ) - -  # process lines -  set( _xml_pos 0 ) -  unset( _xml_l10n ) -  unset( _xml_inside_tag ) -  unset( _xml_inside_attrib ) -  unset( _xml_attrib_empty ) -  while( _xml_pos LESS ${_xml_len} ) -    # pick line -    string( REGEX REPLACE "^([^\n]*)\n(.*)" "\\1" _xml_line "${_xml_data}" ) -    string( REGEX REPLACE "^([^\n]*)\n(.*)" "\\2" _xml_data "${_xml_data}" ) -    math( EXPR _xml_pos "${_xml_pos}+1" ) -    set( _xml_newline 1 ) - -    # process tags on line -    while( _xml_newline OR NOT "${_xml_line}" STREQUAL "" ) -      unset( _xml_line_rest ) -      if( NOT _xml_inside_tag ) -        if( "${_xml_line}" MATCHES "<(${_tags})([ \t\n][^>]*|$)" ) -          set( _xml_inside_tag 1 ) -          string( REGEX MATCH "<(${_tags})([ \t\n][^>]*|$)(.*)" _xml_line "${_xml_line}" ) -          string( REGEX REPLACE "^<(${_tags})[ \t\n]*.*" "\\1" _xml_tag "${_xml_line}" ) -          string( REGEX REPLACE "^<(${_tags})[ \t\n]*" "" _xml_line "${_xml_line}" ) -          unset( _tag_attribs ) -          foreach( _attrib ${_attribs} ) -            if( "${_attrib}" MATCHES "^${_xml_tag}," ) -              string( REGEX REPLACE "^([^,]+),([^,]+),?(.*)" "\\2" _attrib "${_attrib}" ) -              list( APPEND _tag_attribs "${_attrib}" ) -            endif( ) -          endforeach( ) -          string( REPLACE ";" "|" _tag_attribs "${_tag_attribs}" ) -          unset( _xml_inside_attrib ) -        else( ) -          set( _xml_line "" ) -        endif( ) -      endif( ) - -      if( _xml_inside_tag ) -        if( "${_xml_line}" MATCHES "^(([ \t]*[^>=]+=\"[^\"]*\")*)[ \t]*/?>" ) -          unset( _xml_inside_tag ) -          string( REGEX REPLACE "^(([ \t]*[^>=]+=\"[^\"]*\")*)[ \t]*/?>(.*)" "\\3" _xml_line_rest "${_xml_line}" ) -          string( REGEX REPLACE "^(([ \t]*[^>=]+=\"[^\"]*\")*)[ \t]*/?>(.*)" "\\1" _xml_line "${_xml_line}" ) -        endif( ) - -        # process attribs on line -        set( _xml_attrib_line "${_xml_line}" ) -        while( _xml_newline OR NOT "${_xml_attrib_line}" STREQUAL "" ) -          unset( _xml_newline ) -          unset( _xml_line_prefix ) -          unset( _xml_line_suffix ) -          unset( _xml_attrib_line_rest ) - -          if( NOT _xml_inside_attrib ) -            if( "${_xml_attrib_line}" MATCHES "(^|[ \t]+)(${_tag_attribs})=\"" ) -              set( _xml_inside_attrib 1 ) -              string( REGEX MATCH "(^|[ \t]+)(${_tag_attribs})=\"(.*)" _xml_attrib_line "${_xml_attrib_line}" ) -              string( REGEX REPLACE "^[ \t]*(${_tag_attribs})=\".*" "\\1" _xml_attrib "${_xml_attrib_line}" ) -              string( REGEX REPLACE "^[ \t]*(${_tag_attribs})=\"" "" _xml_attrib_line "${_xml_attrib_line}" ) -              set( _xml_context "${_context}" ) -              foreach( _attrib ${_attribs} ) -                if( "${_attrib}" MATCHES "^${_xml_tag},${_xml_attrib}," ) -                  string( REGEX REPLACE "^([^,]+),([^,]+),?(.*)" "\\3" _xml_context "${_attrib}" ) -                endif( ) -              endforeach( ) -              set( _xml_line_prefix "i18n(" ) -              if( _xml_context ) -                set( _xml_line_prefix "${_xml_line_prefix}\"${_xml_context}\", " ) -              endif( ) -              set( _xml_attrib_empty 1 ) -            else( ) -              set( _xml_attrib_line "" ) -            endif( ) -          endif( ) - -          if( _xml_inside_attrib ) -            if( "${_xml_attrib_line}" MATCHES "\"" ) -              unset( _xml_inside_attrib ) -              string( REGEX REPLACE "\"(.*)" "\\1" _xml_attrib_line_rest "${_xml_attrib_line}" ) -              string( REGEX REPLACE "\"(.*)" "" _xml_attrib_line "${_xml_attrib_line}" ) -              set( _xml_line_suffix ");" ) -            endif( ) - -            string( REGEX REPLACE "\\\\" "\\\\\\\\" _xml_attrib_line "${_xml_attrib_line}" ) -            string( REGEX REPLACE "\\\"" "\\\\\"" _xml_attrib_line "${_xml_attrib_line}" ) -            string( REGEX REPLACE "\t" "\\\\t" _xml_attrib_line "${_xml_attrib_line}" ) -            if( NOT ";${_preserve};" MATCHES ";entities;" ) -              string( REGEX REPLACE "<" "<" _xml_attrib_line "${_xml_attrib_line}" ) -              string( REGEX REPLACE ">" ">" _xml_attrib_line "${_xml_attrib_line}" ) -              string( REGEX REPLACE "&" "&" _xml_attrib_line "${_xml_attrib_line}" ) -            endif( ) -            if( NOT ";${_preserve};" MATCHES ";spaces-leading;" ) -              string( REGEX REPLACE "^ +" "" _xml_attrib_line "${_xml_attrib_line}" ) -            endif( ) -            if( NOT ";${_preserve};" MATCHES ";spaces-trailing;" ) -              string( REGEX REPLACE " +$" "" _xml_attrib_line "${_xml_attrib_line}" ) -            endif( ) -            if( NOT ";${_preserve};" MATCHES ";spaces-multi;" ) -              string( REGEX REPLACE "  +" " " _xml_attrib_line "${_xml_attrib_line}" ) -            endif( ) - -            if( NOT "${_xml_inside_attrib}" STREQUAL "" ) -              if( ";${_preserve};" MATCHES ";line-wrap;" ) -                if( ";${_preserve};" MATCHES ";lines-leading;" -                    OR NOT "${_xml_attrib_line}" STREQUAL "" OR NOT _xml_attrib_empty ) -                  set( _xml_attrib_line "${_xml_attrib_line}\\n" ) -                endif( ) -              elseif( NOT "${_xml_attrib_line}" STREQUAL "" AND NOT _xml_attrib_empty ) -                set( _xml_attrib_line " ${_xml_attrib_line}" ) -              endif( ) -            endif( ) -            if( NOT "${_xml_attrib_line}" STREQUAL "" ) -              unset( _xml_attrib_empty ) -            endif( ) -          endif( ) - -          # drop empty attrib on single line -          if( _xml_line_prefix AND _xml_line_suffix AND _xml_attrib_empty ) -            # skip empty translation - -          # add current attrib to output -          else( ) -            set( _xml_l10n "${_xml_l10n}${_xml_line_prefix}" ) -            if( NOT "${_xml_attrib_line}" STREQUAL "" OR ( _xml_line_suffix AND _xml_attrib_empty ) ) -              set( _xml_l10n "${_xml_l10n}\"${_xml_attrib_line}\"" ) -            endif( ) -            set( _xml_l10n "${_xml_l10n}${_xml_line_suffix}" ) -          endif( ) - -          # take the rest of the line for processing -          set( _xml_attrib_line "${_xml_attrib_line_rest}" ) -        endwhile( ) -      endif( ) - -      # take the rest of the line for processing -      unset( _xml_newline ) -      set( _xml_line "${_xml_line_rest}" ) -    endwhile( ) -    set( _xml_l10n "${_xml_l10n}\n" ) -  endwhile( ) - -  # write file -  file( WRITE ${_target} "${_xml_l10n}" ) - -endfunction( ) diff --git a/q15/cmake/modules/TDEMacros.cmake b/q15/cmake/modules/TDEMacros.cmake deleted file mode 100644 index 13fa54a0..00000000 --- a/q15/cmake/modules/TDEMacros.cmake +++ /dev/null @@ -1,2172 +0,0 @@ -################################################# -# -#  (C) 2010-2012 Serghei Amelian -#  serghei (DOT) amelian (AT) gmail.com -# -#  (C) 2011-2012 Timothy Pearson -#  kb9vqf (AT) pearsoncomputing.net -# -#  Improvements and feedback are welcome -# -#  This file is released under GPL >= 2 -# -################################################# - -include( KDE3Macros ) # we will need this module for a while -include( CheckCXXCompilerFlag ) - - -################################################# -##### -##### tde_message_fatal - -macro( tde_message_fatal ) -  message( FATAL_ERROR -    "#################################################\n" -    " ${ARGV}\n" -    "#################################################" ) -endmacro( tde_message_fatal ) - - -################################################# -##### -##### tde_get_arg( <ARG_NAME> <COUNT> <RETURN> <REST> <ARGS...> ) -##### ARG_NAME(string): name of an argument to find in ARGS -##### COUNT(number): argument dimension, a number of items returned in RETURN -##### RETURN(list ref): items returned for argument as they found in ARGS -##### REST(list ref): rest of items except argument name and items returned in RETURN -##### ARGS(list): source list of arguments - -macro( tde_get_arg ARG_NAME COUNT RETURN REST ) -  unset( ${RETURN} ) -  unset( ${REST} ) -  list( APPEND ${REST} ${ARGN} ) -  list( FIND ${REST} ${ARG_NAME} _arg_idx) -  if( NOT ${_arg_idx} EQUAL -1 ) -    list( REMOVE_AT ${REST} ${_arg_idx} ) -    set( _i 0 ) -    while( ${_i} LESS ${COUNT} ) -      list( GET ${REST} ${_arg_idx} _arg ) -      list( REMOVE_AT ${REST} ${_arg_idx} ) -      list( APPEND ${RETURN} ${_arg} ) -      math( EXPR _i "${_i} + 1" ) -    endwhile() -  endif() -endmacro( tde_get_arg ) - - -################################################ -##### -##### tde_execute_process( <ARGS...> [MESSAGE <MSG>] ) -##### MSG: fatal error message (standard message will be written if not supplied) -##### ARGS: execute_process arguments - -macro( tde_execute_process ) -  tde_get_arg( MESSAGE 1 _message _rest_args ${ARGV} ) -  tde_get_arg( RESULT_VARIABLE 1 _result_variable _tmp ${_rest_args} ) -  tde_get_arg( COMMAND 1 _command _tmp ${_rest_args} ) -  tde_get_arg( OUTPUT_VARIABLE 1 _output_variable _tmp ${_rest_args} ) -  tde_get_arg( CACHE 3 _cache _rest_args2 ${_rest_args} ) - -  # handle optional FORCE parameter -  if( DEFINED _cache ) -    list( GET _cache 2 _tmp ) -    if( _tmp STREQUAL FORCE ) -      set( _rest_args ${_rest_args2} ) -    else() -      tde_get_arg( CACHE 2 _cache _rest_args ${_rest_args} ) -    endif() -  endif() - -  if( NOT DEFINED _result_variable ) -    list( APPEND _rest_args RESULT_VARIABLE _exec_result ) -    set( _result_variable _exec_result ) -  endif() - -  execute_process( ${_rest_args} ) - -  if( DEFINED _output_variable AND DEFINED _cache ) -    set( ${_output_variable} ${${_output_variable}} CACHE ${_cache} ) -  endif() - -  if( ${_result_variable} ) -    if( DEFINED _message ) -      tde_message_fatal( ${_message} ) -    else() -      if( ${${_result_variable}} MATCHES "^[0-9]+$" ) -        set( ${_result_variable} "status ${${_result_variable}} returned!" ) -      endif() -      tde_message_fatal( "Error executing '${_command}': ${${_result_variable}}" ) -    endif() -  endif() -endmacro( tde_execute_process ) - - -if( DEFINED MASTER_SOURCE_DIR ) -  return( ) -endif( ) -########### slave part ends here ############### - - -################################################ -##### -##### tde_install_icons( <icons...> THEME <svgicons> DESTINATION <destdir> ) -##### default theme: hicolor -##### default destination: ${SHARE_INSTALL_DIR}/icons - -macro( tde_install_icons ) -  tde_get_arg( DESTINATION 1 _dest _args ${ARGV} ) -  tde_get_arg( THEME 1 _req_theme _icons ${_args} ) - -  #defaults -  if( NOT _icons ) -    set( _icons "*" ) -  endif( NOT _icons ) -  if( NOT _dest ) -    set( _dest "${ICON_INSTALL_DIR}" ) -  endif( NOT _dest ) - -  foreach( _icon ${_icons} ) -    unset( _theme ) # clearing - -    file(GLOB _icon_files *-${_icon}.png *-${_icon}.mng _icon_files *-${_icon}.svg* ) -    foreach( _icon_file ${_icon_files} ) -      # FIXME need a review -      string( REGEX MATCH "^.*/([a-zA-Z][a-zA-Z])([0-9a-zA-Z]+)\\-([a-z]+)\\-([^/]+)$" _dummy  "${_icon_file}" ) -      set( _type  "${CMAKE_MATCH_1}" ) -      set( _size  "${CMAKE_MATCH_2}" ) -      set( _group "${CMAKE_MATCH_3}" ) -      set( _name  "${CMAKE_MATCH_4}" ) - -      # we must ignore invalid icon names -      if( _type AND _size AND _group AND _name ) - -        # autodetect theme -        if( NOT _req_theme ) -          unset( _theme ) -          if( "${_type}" STREQUAL "cr" ) -            set( _theme crystalsvg ) -          elseif( "${_type}" STREQUAL "lo" ) -            set( _theme locolor ) -          endif( "${_type}" STREQUAL "cr" ) -          # defaulting -          if( NOT _theme ) -            set( _theme hicolor ) -          endif( NOT _theme ) -        else( NOT _req_theme ) -          set( _theme ${_req_theme} ) -        endif( NOT _req_theme ) - -        # fix "group" name -        if( "${_group}" STREQUAL "mime" ) -          set( _group  "mimetypes" ) -        endif( "${_group}" STREQUAL "mime" ) -        if( "${_group}" STREQUAL "filesys" ) -          set( _group  "places" ) -        endif( "${_group}" STREQUAL "filesys" ) -        if( "${_group}" STREQUAL "category" ) -          set( _group  "categories" ) -        endif( "${_group}" STREQUAL "category" ) -        if( "${_group}" STREQUAL "device" ) -          set( _group  "devices" ) -        endif( "${_group}" STREQUAL "device" ) -        if( "${_group}" STREQUAL "app" ) -          set( _group  "apps" ) -        endif( "${_group}" STREQUAL "app" ) -        if( "${_group}" STREQUAL "action" ) -          set( _group  "actions" ) -        endif( "${_group}" STREQUAL "action" ) - -        if( "${_size}" STREQUAL "sc" ) -          install( FILES ${_icon_file} DESTINATION ${_dest}/${_theme}/scalable/${_group}/ RENAME ${_name} ) -        else( "${_size}" STREQUAL "sc" ) -          install( FILES ${_icon_file} DESTINATION ${_dest}/${_theme}/${_size}x${_size}/${_group}/ RENAME ${_name} ) -        endif( "${_size}" STREQUAL "sc" ) - -      endif( _type AND _size AND _group AND _name ) - -    endforeach( _icon_file ) -  endforeach( _icon ) - -endmacro( tde_install_icons ) - - -################################################# -##### -##### tde_add_lut( <source> <result> [depends] ) -##### default depends: source - -macro( tde_add_lut _src _lut _dep ) -  set( create_hash_table ${CMAKE_SOURCE_DIR}/kjs/create_hash_table ) -  if( NOT _dep ) -    set( _dep ${_src} ) -  endif( NOT _dep ) -  add_custom_command( OUTPUT ${_lut} -    COMMAND perl ARGS ${create_hash_table} ${CMAKE_CURRENT_SOURCE_DIR}/${_src} -i > ${_lut} -    DEPENDS ${_src} ) -  set_source_files_properties( ${_dep} PROPERTIES OBJECT_DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${_lut} ) -  unset( _dep ) -endmacro( tde_add_lut ) - - -################################################# -##### -##### tde_add_luts( <sources...> ) - -macro( tde_add_luts ) -  foreach( _src ${ARGV} ) -    get_filename_component( _lut ${_src} NAME_WE ) -    set( _lut "${_lut}.lut.h" ) -    tde_add_lut( ${_src} ${_lut} ${_src} ) -  endforeach( _src ) -endmacro( tde_add_luts ) - - -################################################# -##### -##### tde_file_to_cpp( <source> <destination> <variable> ) - -macro( tde_file_to_cpp _src _dst _var ) -  if( IS_ABSOLUTE ${_dst} ) -    set( dst ${_dst} ) -  else( ) -    set( dst "${CMAKE_CURRENT_BINARY_DIR}/${_dst}" ) -  endif( ) -  file( READ ${_src} text ) -  string( REGEX REPLACE "\n" "\\\\n\"\n\"" text "${text}" ) -  set( text "/* Generated by CMake */\n\nconst char *${_var} = \n\n\"${text}\";\n" ) -  string( REGEX REPLACE "\n\"\";\n$" ";\n" text "${text}" ) -  file( WRITE ${dst} "${text}" ) -endmacro( ) - - -################################################# -##### -##### tde_get_library_filename( <var> <target> ) - -function( tde_get_library_filename _filename _target ) -  get_target_property( _type ${_target} TYPE ) -  if( "${_type}" MATCHES "_LIBRARY" ) -    get_target_property( _output_prefix ${_target} PREFIX ) -    if( "${_output_prefix}" STREQUAL "_output_prefix-NOTFOUND" ) -      if( "${_type}" MATCHES "STATIC_" ) -        set( _output_prefix "${CMAKE_STATIC_LIBRARY_PREFIX}" ) -      elseif( "${_type}" MATCHES "SHARED_" ) -        set( _output_prefix "${CMAKE_SHARED_LIBRARY_PREFIX}" ) -      elseif( "${_type}" MATCHES "MODULE_" ) -        set( _output_prefix "${CMAKE_SHARED_MODULE_PREFIX}" ) -      else( ) -        set( _output_prefix "" ) -      endif( ) -    endif( ) -    get_target_property( _output_suffix ${_target} SUFFIX ) -    if( "${_output_suffix}" STREQUAL "_output_suffix-NOTFOUND" ) -      if( "${_type}" MATCHES "STATIC_" ) -        set( _output_suffix "${CMAKE_STATIC_LIBRARY_SUFFIX}" ) -      elseif( "${_type}" MATCHES "SHARED_" ) -        set( _output_suffix "${CMAKE_SHARED_LIBRARY_SUFFIX}" ) -      elseif( "${_type}" MATCHES "MODULE_" ) -        set( _output_suffix "${CMAKE_SHARED_MODULE_SUFFIX}" ) -      else( ) -        set( _output_suffix "" ) -      endif( ) -    endif( ) -    get_target_property( _output ${_target} OUTPUT_NAME ) -    set( ${_filename} "${_output_prefix}${_output}${_output_suffix}" PARENT_SCOPE ) -  else( ) -    set( ${_filename} "" PARENT_SCOPE ) -  endif( ) -endfunction( ) - - -################################################# -##### -##### tde_install_la_file( <target> <destination> ) - -macro( tde_install_la_file _target _destination ) - -  tde_get_library_filename( _soname ${_target} ) -  get_target_property( _target_release ${_target} RELEASE ) -  if( _target_release ) -    string( REPLACE "-${_target_release}" "" _soname_base "${_soname}" ) -  else( ) -    set( _soname_base ${_soname} ) -  endif( ) -  string( REGEX REPLACE "\\.so(\\.[0-9]+)*$" "" _laname "${_soname_base}" ) -  set( _laname ${CMAKE_CURRENT_BINARY_DIR}/${_laname}.la ) - -  file( WRITE ${_laname} -"# ${_laname} - a libtool library file, generated by cmake -# The name that we can dlopen(3). -dlname='${_soname}' -# Names of this library -library_names='${_soname} ${_soname} ${_soname_base}' -# The name of the static archive -old_library='' -# Libraries that this one depends upon. -dependency_libs='' -# Version information.\ncurrent=0\nage=0\nrevision=0 -# Is this an already installed library?\ninstalled=yes -# Should we warn about portability when linking against -modules?\nshouldnotlink=yes -# Files to dlopen/dlpreopen\ndlopen=''\ndlpreopen='' -# Directory that this library needs to be installed in: -libdir='${_destination}' -" ) - -  install( FILES ${_laname} DESTINATION ${_destination} ) - -endmacro( tde_install_la_file ) - - -################################################# -##### -##### tde_add_ui_files - -macro( tde_add_ui_files _sources ) -  foreach( _ui_file ${ARGN} ) - -    get_filename_component( _ui_basename ${_ui_file} NAME_WE ) -    get_filename_component( _ui_absolute_path ${_ui_file} ABSOLUTE ) - -    list( APPEND ${_sources} ${_ui_basename}.cpp ) - -    add_custom_command( OUTPUT ${_ui_basename}.h ${_ui_basename}.cpp -      COMMAND ${CMAKE_COMMAND} -        -DUIC_EXECUTABLE:FILEPATH=${UIC_EXECUTABLE} -        -DTQT_REPLACE_SCRIPT:FILEPATH=${TQT_REPLACE_SCRIPT} -        -DTDE_TQTPLUGINS_DIR:FILEPATH=${TDE_TQTPLUGINS_DIR} -        -DMOC_EXECUTABLE:FILEPATH=${MOC_EXECUTABLE} -        -DUI_FILE:FILEPATH=${_ui_absolute_path} -        -DMASTER_SOURCE_DIR:FILEPATH=${CMAKE_SOURCE_DIR} -        -DMASTER_BINARY_DIR:FILEPATH=${CMAKE_BINARY_DIR} -        -P ${CMAKE_MODULE_PATH}/tde_uic.cmake -      DEPENDS ${_ui_absolute_path} ) - -  endforeach( _ui_file ) -endmacro( tde_add_ui_files ) - - -################################################# -##### -##### tde_moc - -macro( tde_moc _sources ) -  foreach( _input_file ${ARGN} ) - -    get_filename_component( _input_file "${_input_file}" ABSOLUTE ) -    get_filename_component( _basename ${_input_file} NAME_WE ) -    set( _output_file "${_basename}.moc.cpp" ) -    add_custom_command( OUTPUT ${_output_file} -      COMMAND -        ${TMOC_EXECUTABLE} ${_input_file} -o ${_output_file} -      DEPENDS -        ${_input_file} ) -    list( APPEND ${_sources} ${_output_file} ) - -  endforeach( ) -endmacro( ) - - -################################################# -##### -##### tde_automoc - -macro( tde_automoc ) -  foreach( _src_file ${ARGN} ) - -    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 header 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 ) -          set( _header_file "${_src_path}/${_src_header}.h" ) - -          # if header doesn't exists, check in META_INCLUDES -          if( NOT EXISTS "${_header_file}" ) -            unset( _found ) -            foreach( _src_path ${_meta_includes} ) -              set( _header_file "${_src_path}/${_src_header}.h" ) -              if( EXISTS "${_header_file}" ) -                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 header -          add_custom_command( OUTPUT ${_moc_file} -            COMMAND ${TMOC_EXECUTABLE} ${_header_file} -o ${_moc_file} -            DEPENDS ${_header_file} ) - -          # create dependency between source file and moc file -          set_property( SOURCE ${_src_file} APPEND PROPERTY OBJECT_DEPENDS ${_moc_file} ) - -        endforeach( _moc_file ) - -      endif( _moc_includes ) - -    endif( EXISTS "${_src_file}" ) - -  endforeach( _src_file ) -endmacro( tde_automoc ) - - -################################################# -##### -##### __tde_internal_process_sources - -macro( __tde_internal_process_sources _sources ) - -  unset( ${_sources} ) - -  foreach( _arg ${ARGN} ) -    get_filename_component( _ext ${_arg} EXT ) -    get_filename_component( _name ${_arg} NAME_WE ) -    get_filename_component( _path ${_arg} PATH ) - -    # if not path, set it to "." -    if( NOT _path ) -      set( _path "./" ) -    endif( NOT _path ) - -    # handle .ui files -    if( ${_ext} STREQUAL ".ui" ) -      tde_add_ui_files( ${_sources} ${_arg} ) - -    # handle .skel files -    elseif( ${_ext} STREQUAL ".skel" ) -      kde3_add_dcop_skels( ${_sources} ${_path}/${_name}.h ) - -    # handle .stub files -    elseif( ${_ext} STREQUAL ".stub" ) -      kde3_add_dcop_stubs( ${_sources} ${_path}/${_name}.h ) - -    # handle .kcfgc files -    elseif( ${_ext} STREQUAL ".kcfgc" ) -      kde3_add_kcfg_files( ${_sources} ${_arg} ) - -    # handle any other files -    else( ${_ext} STREQUAL ".ui" ) -      list(APPEND ${_sources} ${_arg} ) -    endif( ${_ext} STREQUAL ".ui" ) -  endforeach( _arg ) - -endmacro( __tde_internal_process_sources ) - - -################################################# -##### -##### tde_install_libtool_file - -macro( tde_install_libtool_file _target _destination ) - -  # get .so name -  tde_get_library_filename( _soname ${_target} ) -  get_target_property( _target_release ${_target} RELEASE ) -  if( _target_release ) -    string( REPLACE "-${_target_release}" "" _soname_base "${_soname}" ) -  else( ) -    set( _soname_base ${_soname} ) -  endif( ) - -  # get .la name -  string( REGEX REPLACE "\\.so(\\.[0-9]+)*$" "" _laname "${_soname_base}" ) -  set( _laname ${_laname}.la ) - -  # get version of target -  get_target_property( _target_version ${_target} VERSION ) -  get_target_property( _target_soversion ${_target} SOVERSION ) - -  # we have so version -  if( _target_version ) -    set( _library_name_1 "${_soname}.${_target_version}" ) -    set( _library_name_2 "${_soname}.${_target_soversion}" ) -    set( _library_name_3 "${_soname_base}" ) - -    string( REGEX MATCH "^([0-9]+)\\.([0-9]+)\\.([0-9]+)$" _dummy  "${_target_version}" ) -    set( _version_current  "${CMAKE_MATCH_1}" ) -    set( _version_age  "${CMAKE_MATCH_2}" ) -    set( _version_revision "${CMAKE_MATCH_3}" ) - -  # we have no so version (module?) -  else( _target_version ) -    set( _library_name_1 "${_soname}" ) -    set( _library_name_2 "${_soname}" ) -    set( _library_name_3 "${_soname_base}" ) -    set( _version_current  "0" ) -    set( _version_age  "0" ) -    set( _version_revision "0" ) -  endif( _target_version ) - -  if( IS_ABSOLUTE ${_destination} ) -    set( _libdir "${_destination}" ) -  else( IS_ABSOLUTE ${_destination} ) -    set( _libdir "${CMAKE_INSTALL_PREFIX}/${_destination}" ) -  endif( IS_ABSOLUTE ${_destination} ) - -  configure_file( ${CMAKE_SOURCE_DIR}/cmake/modules/template_libtool_file.cmake "${_laname}" @ONLY ) - -  install( FILES "${CMAKE_CURRENT_BINARY_DIR}/${_laname}" DESTINATION ${_destination} ) - -endmacro( tde_install_libtool_file ) - - -################################################# -##### -##### tde_install_export / tde_import - -function( tde_install_export ) -  file( GLOB export_files ${CMAKE_CURRENT_BINARY_DIR}/export-*.cmake ) - -  set( mode "WRITE" ) -  foreach( filename ${export_files} ) -    file( READ ${filename} content ) -    file( ${mode} "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.cmake" "${content}" ) -    set( mode "APPEND" ) -  endforeach( ) - -  install( FILES "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.cmake" DESTINATION ${CMAKE_INSTALL_DIR} ) -endfunction( ) - - -macro( tde_import _library ) -  message( STATUS "checking for '${_library}'" ) -  string( TOUPPER "BUILD_${_library}" _build ) -  if( ${_build} ) -    message( STATUS "  ok, activated for build" ) -  else() -    if( EXISTS "${TDE_CMAKE_DIR}/${_library}.cmake" ) -      include( "${TDE_CMAKE_DIR}/${_library}.cmake" ) -      message( STATUS "  ok, found import file" ) -    else() -      tde_message_fatal( "'${_library}' are required,\n but is not installed nor selected for build" ) -    endif() -  endif() -endmacro() - - -################################################# -##### -##### tde_add_library - -macro( tde_add_library _arg_target ) - -  unset( _target ) -  unset( _type ) -  unset( _static_pic ) -  unset( _automoc ) -  unset( _meta_includes ) -  unset( _no_libtool_file ) -  unset( _no_export ) -  unset( _version ) -  unset( _release ) -  unset( _sources ) -  unset( _destination ) -  unset( _embed ) -  unset( _link ) -  unset( _dependencies ) -  unset( _storage ) -  unset( _exclude_from_all ) - -  set( _shouldnotlink no ) - -  # metadata -  unset( _description ) -  unset( _license ) -  unset( _copyright ) -  unset( _authors ) -  unset( _product ) -  unset( _organization ) -  unset( _version ) -  unset( _datetime ) -  unset( _notes ) - -  # default metadata -  set( _product "Trinity Desktop Environment" ) -  tde_curdatetime( _datetime ) - -  foreach( _arg ${ARGV} ) - -    # this variable help us to skip -    # storing unapropriate values (i.e. directives) -    unset( _skip_store ) - -    # found one of directives: "SHARED", "STATIC", "MODULE" -    if( "+${_arg}" STREQUAL "+SHARED" OR "+${_arg}" STREQUAL "+STATIC" OR "+${_arg}" STREQUAL "+MODULE" ) -      set( _skip_store 1 ) -      set( _type "${_arg}" ) -    endif( "+${_arg}" STREQUAL "+SHARED" OR "+${_arg}" STREQUAL "+STATIC" OR "+${_arg}" STREQUAL "+MODULE" ) - -    # found directive "STATIC_PIC" -    if( "+${_arg}" STREQUAL "+STATIC_PIC" ) -      set( _skip_store 1 ) -      set( _type "STATIC" ) -      set( _static_pic 1 ) -    endif( "+${_arg}" STREQUAL "+STATIC_PIC" ) - -    # found directive "AUTOMOC" -    if( "+${_arg}" STREQUAL "+AUTOMOC" ) -      set( _skip_store 1 ) -      set( _automoc 1 ) -    endif( "+${_arg}" STREQUAL "+AUTOMOC" ) - -    # found directive "META_INCLUDES" -    if( "+${_arg}" STREQUAL "+META_INCLUDES" ) -      set( _skip_store 1 ) -      set( _storage "_meta_includes" ) -    endif( ) - -    # found directive "NO_LIBTOOL_FILE" -    if( "+${_arg}" STREQUAL "+NO_LIBTOOL_FILE" ) -      set( _skip_store 1 ) -      set( _no_libtool_file 1 ) -    endif( "+${_arg}" STREQUAL "+NO_LIBTOOL_FILE" ) - -    # found directive "NO_EXPORT" -    if( "+${_arg}" STREQUAL "+NO_EXPORT" ) -      set( _skip_store 1 ) -      set( _no_export 1 ) -    endif( "+${_arg}" STREQUAL "+NO_EXPORT" ) - -    # found directive "VERSION" -    if( "+${_arg}" STREQUAL "+VERSION" ) -      set( _skip_store 1 ) -      set( _storage "_version" ) -    endif( "+${_arg}" STREQUAL "+VERSION" ) - -    # found directive "RELEASE" -    if( "+${_arg}" STREQUAL "+RELEASE" ) -      set( _skip_store 1 ) -      set( _storage "_release" ) -    endif( "+${_arg}" STREQUAL "+RELEASE" ) - -    # found directive "SOURCES" -    if( "+${_arg}" STREQUAL "+SOURCES" ) -      set( _skip_store 1 ) -      set( _storage "_sources" ) -    endif( "+${_arg}" STREQUAL "+SOURCES" ) - -    # found directive "EMBED" -    if( "+${_arg}" STREQUAL "+EMBED" ) -      set( _skip_store 1 ) -      set( _storage "_embed" ) -    endif( "+${_arg}" STREQUAL "+EMBED" ) - -    # found directive "LINK" -    if( "+${_arg}" STREQUAL "+LINK" ) -      set( _skip_store 1 ) -      set( _storage "_link" ) -    endif( "+${_arg}" STREQUAL "+LINK" ) - -    # found directive "DEPENDENCIES" -    if( "+${_arg}" STREQUAL "+DEPENDENCIES" ) -      set( _skip_store 1 ) -      set( _storage "_dependencies" ) -    endif( "+${_arg}" STREQUAL "+DEPENDENCIES" ) - -    # found directive "DESTINATION" -    if( "+${_arg}" STREQUAL "+DESTINATION" ) -      set( _skip_store 1 ) -      set( _storage "_destination" ) -      unset( ${_storage} ) -    endif( "+${_arg}" STREQUAL "+DESTINATION" ) - -    # found directive "EXCLUDE_FROM_ALL" -    if( "+${_arg}" STREQUAL "+EXCLUDE_FROM_ALL" ) -      set( _skip_store 1 ) -      set( _exclude_from_all "EXCLUDE_FROM_ALL" ) -    endif( "+${_arg}" STREQUAL "+EXCLUDE_FROM_ALL" ) - -   # metadata -    if( "+${_arg}" STREQUAL "+DESCRIPTION" ) -      set( _skip_store 1 ) -      set( _storage "_description" ) -    endif( ) -    if( "+${_arg}" STREQUAL "+LICENSE" ) -      set( _skip_store 1 ) -      set( _storage "_license" ) -    endif( ) -    if( "+${_arg}" STREQUAL "+COPYRIGHT" ) -      set( _skip_store 1 ) -      set( _storage "_copyright" ) -    endif( ) -    if( "+${_arg}" STREQUAL "+AUTHORS" ) -      set( _skip_store 1 ) -      set( _storage "_authors" ) -    endif( ) -    if( "+${_arg}" STREQUAL "+PRODUCT" ) -      set( _skip_store 1 ) -      set( _storage "_product" ) -    endif( ) -    if( "+${_arg}" STREQUAL "+ORGANIZATION" ) -      set( _skip_store 1 ) -      set( _storage "_organization" ) -    endif( ) -    if( "+${_arg}" STREQUAL "+VERSION" ) -      set( _skip_store 1 ) -      set( _storage "_version" ) -    endif( ) -    if( "+${_arg}" STREQUAL "+DATETIME" ) -      set( _skip_store 1 ) -      set( _storage "_datetime" ) -    endif( ) -    if( "+${_arg}" STREQUAL "+NOTES" ) -      set( _skip_store 1 ) -      set( _storage "_notes" ) -    endif( ) - -    # storing value -    if( _storage AND NOT _skip_store ) -      list( APPEND ${_storage} ${_arg} ) -      list( REMOVE_DUPLICATES ${_storage} ) -    endif( _storage AND NOT _skip_store ) - -  endforeach( _arg ) - -  # if no type is set, we choose one -  # based on BUILD_SHARED_LIBS -  if( NOT _type ) -    if( BUILD_SHARED_LIBS ) -      set( _type "SHARED" ) -    else( BUILD_SHARED_LIBS ) -      set( _type "STATIC" ) -    endif( BUILD_SHARED_LIBS ) -  endif( NOT _type ) - -  # change target name, based on type -  string( TOLOWER "${_type}" _type_lower ) -  set( _target "${_arg_target}-${_type_lower}" ) - -  # create variables like "LIB_xxx" for convenience -  if( ${_type} STREQUAL "SHARED" ) -    string( TOUPPER "${_arg_target}" _tmp ) -    set( LIB_${_tmp} ${_target} CACHE INTERNAL LIB_${tmp} FORCE ) -  endif( ${_type} STREQUAL "SHARED" ) - -  # disallow target without sources -  if( NOT _sources ) -    message( FATAL_ERROR "\nTarget [$_target] have no sources." ) -  endif( NOT _sources ) - -  # processing different types of sources -  __tde_internal_process_sources( _sources ${_sources} ) - -  # set automoc -  if( _automoc ) -    tde_automoc( ${_sources} ) -  endif( _automoc ) - -  # add target -  add_library( ${_target} ${_type} ${_exclude_from_all} ${_sources} ) - -  # we assume that modules have no prefix and no version -  # also, should not link -  if( ${_type} STREQUAL "MODULE" ) -    set_target_properties( ${_target} PROPERTIES PREFIX "" ) -    unset( _version ) -    set( _shouldnotlink yes ) -  endif( ${_type} STREQUAL "MODULE" ) - -  # set real name of target -  if( _release ) -    # add release number to output name -    set_target_properties( ${_target} PROPERTIES RELEASE ${_release} ) -    set_target_properties( ${_target} PROPERTIES OUTPUT_NAME "${_arg_target}-${_release}" ) -  else( _release ) -    set_target_properties( ${_target} PROPERTIES OUTPUT_NAME ${_arg_target} ) -  endif( _release ) - -  # set -fPIC flag for static libraries -  if( _static_pic ) -    if( "${CMAKE_VERSION}" VERSION_LESS "2.8.9" ) -      set_target_properties( ${_target} PROPERTIES COMPILE_FLAGS -fPIC ) -    else( ) -      set_target_properties( ${_target} PROPERTIES POSITION_INDEPENDENT_CODE ON ) -    endif( ) -  endif( _static_pic ) - -  # set version -  if( _version ) -    if( ${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD" ) -      # OpenBSD: _soversion and _version both contains only major and minor -      string( REGEX MATCH "^([0-9]+)\\.([0-9]+)\\.([0-9]+)$" _dummy  "${_version}" ) -      set( _version  "${CMAKE_MATCH_1}.${CMAKE_MATCH_2}" ) -      set( _soversion  "${CMAKE_MATCH_1}.${CMAKE_MATCH_2}" ) -    else( ${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD" ) -      # General (Linux) case: _soversion contains only the major number of version -      string( REGEX MATCH "^[0-9]+" _soversion ${_version} ) -    endif( ${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD" ) -    set_target_properties( ${_target} PROPERTIES VERSION ${_version} SOVERSION ${_soversion} ) -  endif( _version ) - -  # set interface libraries (only for shared) -  unset( _shared_libs ) -  if( NOT ${_type} STREQUAL "STATIC" ) -    foreach( _lib ${_link} ) -      #get_target_property( _lib_type ${_lib} TYPE ) -      #if( NOT "STATIC_LIBRARY" STREQUAL "${_lib_type}" ) -      if( NOT ${_lib} MATCHES ".+-static" ) -        list( APPEND _shared_libs ${_lib} ) -      endif( NOT ${_lib} MATCHES ".+-static" ) -      #endif( NOT "STATIC_LIBRARY" STREQUAL "${_lib_type}" ) -    endforeach( _lib ) -  endif( NOT ${_type} STREQUAL "STATIC" ) - -  # set embedded archives -  if( _embed ) -    list( INSERT _link 0 -Wl,-whole-archive ${_embed} -Wl,-no-whole-archive ) -  endif( _embed ) - -  # set link libraries -  if( _link ) -    if( _embed AND ${CMAKE_VERSION} VERSION_EQUAL "2.8.12.0" ) -      # hack for broken CMake 2.8.12.0 -      set_target_properties( ${_target} PROPERTIES LINK_LIBRARIES "${_link}" ) -    else( _embed AND  ${CMAKE_VERSION} VERSION_EQUAL "2.8.12.0" ) -      target_link_libraries( ${_target} ${_link} ) -    endif( _embed AND  ${CMAKE_VERSION} VERSION_EQUAL "2.8.12.0" ) -  endif( ) -  if( _shared_libs ) -    set_target_properties( ${_target} PROPERTIES -                           LINK_INTERFACE_LIBRARIES "${_shared_libs}" -                           INTERFACE_LINK_LIBRARIES "${_shared_libs}" ) -  endif( _shared_libs ) - -  # set dependencies -  if( _dependencies ) -    add_dependencies( ${_target} ${_dependencies} ) -  endif( _dependencies ) - -  # if destination directory is set -  if( _destination ) - -    # we export only shared libs (no static, no modules); -    # also, do not export targets marked as "NO_EXPORT" (usually for tdeinit) -    if( "SHARED" STREQUAL ${_type} AND NOT _no_export ) - -      # get target properties: output name, version, soversion -      tde_get_library_filename( _output ${_target} ) -      get_target_property( _version ${_target} VERSION ) -      get_target_property( _soversion ${_target} SOVERSION ) - -      if( _version ) -        set( _location "${_destination}/${_output}.${_version}" ) -        set( _soname "${_output}.${_soversion}" ) -      else( ) -        set( _location "${_destination}/${_output}" ) -        set( _soname "${_output}" ) -      endif( ) - -      configure_file( ${CMAKE_SOURCE_DIR}/cmake/modules/template_export_library.cmake "${PROJECT_BINARY_DIR}/export-${_target}.cmake" @ONLY ) -    endif( ) - -    # install target -    install( TARGETS ${_target} DESTINATION ${_destination} ) - -    # install base soname -    if( _release AND NOT "STATIC" STREQUAL ${_type} ) -      tde_get_library_filename( _soname ${_target} ) -      string( REPLACE "-${_release}" "" _soname_base "${_soname}" ) -      if( _version ) -        get_target_property( _soversion ${_target} SOVERSION ) -        set( _soname "${_soname}.${_soversion}" ) -      endif( ) -      add_custom_command( TARGET ${_target} POST_BUILD -        COMMAND ln -s ${_soname} "${CMAKE_CURRENT_BINARY_DIR}/${_soname_base}" ) -      install( FILES "${CMAKE_CURRENT_BINARY_DIR}/${_soname_base}" DESTINATION ${_destination} ) -    endif( ) - -    # install .la files for dynamic libraries -    if( NOT "STATIC" STREQUAL ${_type} AND NOT _no_libtool_file ) -      tde_install_libtool_file( ${_target} ${_destination} ) -    endif( ) - -  endif( _destination ) - -  # embed name and metadata -  set( ELF_EMBEDDING_METADATA "\"${_target}\" \"${_description}\" \"${_license}\" \"${_copyright}\" \"${_authors}\" \"${_product}\" \"${_organization}\" \"${_version}\" \"${_datetime}\" \"x-sharedlib\" \"${TDE_SCM_MODULE_NAME}\" \"${TDE_SCM_MODULE_REVISION}\" \"${_notes}\"" ) -  separate_arguments( ELF_EMBEDDING_METADATA ) -  if( TDELFEDITOR_EXECUTABLE AND _soname ) -    if( _version ) -      add_custom_command( -        TARGET ${_target} -        POST_BUILD -        COMMAND ${TDELFEDITOR_EXECUTABLE} -m ${CMAKE_CURRENT_BINARY_DIR}/${_soname}.${_version} ${ELF_EMBEDDING_METADATA} || true -        COMMAND ${TDELFEDITOR_EXECUTABLE} -e ${CMAKE_CURRENT_BINARY_DIR}/${_soname}.${_version} || true -      ) -    else( ) -      add_custom_command( -        TARGET ${_target} -        POST_BUILD -        COMMAND ${TDELFEDITOR_EXECUTABLE} -m ${CMAKE_CURRENT_BINARY_DIR}/${_soname} ${ELF_EMBEDDING_METADATA} || true -        COMMAND ${TDELFEDITOR_EXECUTABLE} -e ${CMAKE_CURRENT_BINARY_DIR}/${_soname} || true -      ) -    endif( ) -  endif( TDELFEDITOR_EXECUTABLE AND _soname ) - -endmacro( tde_add_library ) - - -################################################# -##### -##### tde_add_kpart - -macro( tde_add_kpart _target ) -  tde_add_library( ${_target} ${ARGN} MODULE ) -endmacro( tde_add_kpart ) - - -################################################# -##### -##### tde_curdatetime -macro( tde_curdatetime result ) -  tde_execute_process( COMMAND "date" "+%m/%d/%Y %H:%M:%S" OUTPUT_VARIABLE ${result} ) -  string( REGEX REPLACE "(..)/(..)/(....) (........).*" "\\1/\\2/\\3 \\4" ${result} ${${result}} ) -endmacro( tde_curdatetime ) - - -################################################# -##### -##### tde_add_executable - -macro( tde_add_executable _arg_target ) - -  unset( _target ) -  unset( _automoc ) -  unset( _meta_includes ) -  unset( _setuid ) -  unset( _sources ) -  unset( _destination ) -  unset( _link ) -  unset( _dependencies ) -  unset( _storage ) - -  # metadata -  unset( _description ) -  unset( _license ) -  unset( _copyright ) -  unset( _authors ) -  unset( _product ) -  unset( _organization ) -  unset( _version ) -  unset( _datetime ) -  unset( _notes ) - -  # default metadata -  set( _product "Trinity Desktop Environment" ) -  set( _version "${TDE_VERSION}" ) -  tde_curdatetime( _datetime ) - -  foreach( _arg ${ARGV} ) - -    # this variable help us to skip -    # storing unapropriate values (i.e. directives) -    unset( _skip_store ) - -    # found directive "AUTOMOC" -    if( "+${_arg}" STREQUAL "+AUTOMOC" ) -      set( _skip_store 1 ) -      set( _automoc 1 ) -    endif( "+${_arg}" STREQUAL "+AUTOMOC" ) - -    # found directive "META_INCLUDES" -    if( "+${_arg}" STREQUAL "+META_INCLUDES" ) -      set( _skip_store 1 ) -      set( _storage "_meta_includes" ) -    endif( ) - -    # found directive "SETUID" -    if( "+${_arg}" STREQUAL "+SETUID" ) -      set( _skip_store 1 ) -      set( _setuid 1 ) -    endif( "+${_arg}" STREQUAL "+SETUID" ) - -    # found directive "SOURCES" -    if( "+${_arg}" STREQUAL "+SOURCES" ) -      set( _skip_store 1 ) -      set( _storage "_sources" ) -    endif( "+${_arg}" STREQUAL "+SOURCES" ) - -    # found directive "LINK" -    if( "+${_arg}" STREQUAL "+LINK" ) -      set( _skip_store 1 ) -      set( _storage "_link" ) -    endif( "+${_arg}" STREQUAL "+LINK" ) - -    # found directive "DEPENDENCIES" -    if( "+${_arg}" STREQUAL "+DEPENDENCIES" ) -      set( _skip_store 1 ) -      set( _storage "_dependencies" ) -    endif( "+${_arg}" STREQUAL "+DEPENDENCIES" ) - -    # found directive "DESTINATION" -    if( "+${_arg}" STREQUAL "+DESTINATION" ) -      set( _skip_store 1 ) -      set( _storage "_destination" ) -      unset( ${_storage} ) -    endif( "+${_arg}" STREQUAL "+DESTINATION" ) - -    # metadata -    if( "+${_arg}" STREQUAL "+DESCRIPTION" ) -      set( _skip_store 1 ) -      set( _storage "_description" ) -    endif( ) -    if( "+${_arg}" STREQUAL "+LICENSE" ) -      set( _skip_store 1 ) -      set( _storage "_license" ) -    endif( ) -    if( "+${_arg}" STREQUAL "+COPYRIGHT" ) -      set( _skip_store 1 ) -      set( _storage "_copyright" ) -    endif( ) -    if( "+${_arg}" STREQUAL "+AUTHORS" ) -      set( _skip_store 1 ) -      set( _storage "_authors" ) -    endif( ) -    if( "+${_arg}" STREQUAL "+PRODUCT" ) -      set( _skip_store 1 ) -      set( _storage "_product" ) -    endif( ) -    if( "+${_arg}" STREQUAL "+ORGANIZATION" ) -      set( _skip_store 1 ) -      set( _storage "_organization" ) -    endif( ) -    if( "+${_arg}" STREQUAL "+VERSION" ) -      set( _skip_store 1 ) -      set( _storage "_version" ) -    endif( ) -    if( "+${_arg}" STREQUAL "+DATETIME" ) -      set( _skip_store 1 ) -      set( _storage "_datetime" ) -    endif( ) -    if( "+${_arg}" STREQUAL "+NOTES" ) -      set( _skip_store 1 ) -      set( _storage "_notes" ) -    endif( ) - -    # storing value -    if( _storage AND NOT _skip_store ) -      #set( ${_storage} "${${_storage}} ${_arg}" ) -      list( APPEND ${_storage} ${_arg} ) -    endif( _storage AND NOT _skip_store ) - -  endforeach( _arg ) - -  set( _target "${_arg_target}" ) - -  # disallow target without sources -  if( NOT _sources ) -    message( FATAL_ERROR "\nTarget [$_target] have no sources." ) -  endif( NOT _sources ) - -  # processing different types of sources -  __tde_internal_process_sources( _sources ${_sources} ) - -  # set automoc -  if( _automoc ) -    tde_automoc( ${_sources} ) -  endif( _automoc ) - -  # add target -  add_executable( ${_target} ${_sources} ) - -  # set link libraries -  if( _link ) -    target_link_libraries( ${_target} ${_link} ) -  endif( _link ) - -  # set dependencies -  if( _dependencies ) -    add_dependencies( ${_target} ${_dependencies} ) -  endif( _dependencies ) - -  # set PIE flags for setuid binaries -  if( _setuid ) -    set_target_properties( ${_target} PROPERTIES COMPILE_FLAGS "${TDE_PIE_CFLAGS}" ) -    set_target_properties( ${_target} PROPERTIES LINK_FLAGS "${TDE_PIE_LDFLAGS}" ) -  endif( _setuid ) - -  # set destination directory -  if( _destination ) -    if( _setuid ) -      install( TARGETS ${_target} DESTINATION ${_destination} PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_EXECUTE WORLD_EXECUTE SETUID ) -    else( _setuid ) -      install( TARGETS ${_target} DESTINATION ${_destination} ) -    endif( _setuid ) -  endif( _destination ) - -  # embed icon, name, and metadata -  set( ELF_EMBEDDING_METADATA "\"${_target}\" \"${_description}\" \"${_license}\" \"${_copyright}\" \"${_authors}\" \"${_product}\" \"${_organization}\" \"${_version}\" \"${_datetime}\" \"${_target}\" \"${TDE_SCM_MODULE_NAME}\" \"${TDE_SCM_MODULE_REVISION}\" \"${_notes}\"" ) -  separate_arguments( ELF_EMBEDDING_METADATA ) -  if( TDELFEDITOR_EXECUTABLE ) -    add_custom_command( -      TARGET ${_target} -      POST_BUILD -      COMMAND ${TDELFEDITOR_EXECUTABLE} -m ${CMAKE_CURRENT_BINARY_DIR}/${_target} ${ELF_EMBEDDING_METADATA} || true -      COMMAND ${TDELFEDITOR_EXECUTABLE} -e ${CMAKE_CURRENT_BINARY_DIR}/${_target} || true -      COMMAND ${TDELFEDITOR_EXECUTABLE} -t ${CMAKE_CURRENT_BINARY_DIR}/${_target} ${_target} || true -    ) -  endif( TDELFEDITOR_EXECUTABLE ) - -endmacro( tde_add_executable ) - - -################################################# -##### -##### tde_add_check_executable - -macro( tde_add_check_executable _arg_target ) - -  unset( _target ) -  unset( _automoc ) -  unset( _test ) -  unset( _test_args ) -  unset( _meta_includes ) -  unset( _sources ) -  unset( _destination ) -  unset( _link ) -  unset( _dependencies ) -  unset( _storage ) - -  foreach( _arg ${ARGV} ) - -    # this variable help us to skip -    # storing unapropriate values (i.e. directives) -    unset( _skip_store ) - -    # found directive "AUTOMOC" -    if( "+${_arg}" STREQUAL "+AUTOMOC" ) -      set( _skip_store 1 ) -      set( _automoc 1 ) -    endif( "+${_arg}" STREQUAL "+AUTOMOC" ) - -    # found directive "TEST" -    if( "+${_arg}" STREQUAL "+TEST" ) -      set( _skip_store 1 ) -      set( _test 1 ) -      set( _storage "_test_args" ) -    endif( "+${_arg}" STREQUAL "+TEST" ) - -    # found directive "META_INCLUDES" -    if( "+${_arg}" STREQUAL "+META_INCLUDES" ) -      set( _skip_store 1 ) -      set( _storage "_meta_includes" ) -    endif( ) - -    # found directive "SOURCES" -    if( "+${_arg}" STREQUAL "+SOURCES" ) -      set( _skip_store 1 ) -      set( _storage "_sources" ) -    endif( "+${_arg}" STREQUAL "+SOURCES" ) - -    # found directive "LINK" -    if( "+${_arg}" STREQUAL "+LINK" ) -      set( _skip_store 1 ) -      set( _storage "_link" ) -    endif( "+${_arg}" STREQUAL "+LINK" ) - -    # found directive "DEPENDENCIES" -    if( "+${_arg}" STREQUAL "+DEPENDENCIES" ) -      set( _skip_store 1 ) -      set( _storage "_dependencies" ) -    endif( "+${_arg}" STREQUAL "+DEPENDENCIES" ) - -    # storing value -    if( _storage AND NOT _skip_store ) -      #set( ${_storage} "${${_storage}} ${_arg}" ) -      list( APPEND ${_storage} ${_arg} ) -    endif( _storage AND NOT _skip_store ) - -  endforeach( _arg ) - -  set( _target "${_arg_target}" ) - -  # try to autodetect sources -  if( NOT _sources ) -    file( GLOB _sources "${_target}.cpp" "${_target}.cxx" "${_target}.c" ) -    if( NOT _sources ) -      message( FATAL_ERROR "\nNo sources found for test executable \"${_target}\"." ) -    endif( ) -  endif( NOT _sources ) - -  # processing different types of sources -  __tde_internal_process_sources( _sources ${_sources} ) - -  # set automoc -  if( _automoc ) -    tde_automoc( ${_sources} ) -  endif( _automoc ) - -  # add target -  add_executable( ${_target} EXCLUDE_FROM_ALL ${_sources} ) - -  # set link libraries -  if( _link ) -    target_link_libraries( ${_target} ${_link} ) -  endif( _link ) - -  # set dependencies -  if( _dependencies ) -    add_dependencies( ${_target} ${_dependencies} ) -  endif( _dependencies ) - -  # create make check target -  if(NOT TARGET check) -      add_custom_target( check -        COMMAND ${CMAKE_CTEST_COMMAND} -        WORKING_DIRECTORY "${CMAKE_BINARY_DIR}" -        COMMENT "Running tests..." ) -  endif(NOT TARGET check) - -  add_dependencies( check ${_target} ) - -  # add test target -  if( _test ) -    # get relative path to current directory and strip end tests dir -    file( RELATIVE_PATH _test_prefix ${CMAKE_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR} ) -    string( REGEX REPLACE "(^\\.+/?|(^|/)tests?$|/$)" "" _test_prefix "${_test_prefix}" ) -    if( _test_prefix ) -        set( _test_prefix "${_test_prefix}/" ) -    endif( _test_prefix ) -    add_test( NAME "${_test_prefix}${_target}" COMMAND "${_target}" ${_test_args} ) -  endif( _test ) - -endmacro( tde_add_check_executable ) - - -################################################# -##### -##### tde_add_tdeinit_executable - -macro( tde_add_tdeinit_executable _target ) - -  configure_file( ${CMAKE_SOURCE_DIR}/cmake/modules/template_tdeinit_executable.cmake ${_target}_tdeinit_executable.cpp COPYONLY ) -  configure_file( ${CMAKE_SOURCE_DIR}/cmake/modules/template_tdeinit_module.cmake ${_target}_tdeinit_module.cpp COPYONLY ) - -  unset( _sources ) -  unset( _runtime_destination ) -  unset( _library_destination ) -  unset( _plugin_destination ) - -  # default storage is _sources -  set( _storage _sources ) - -  # set default export to NO_EXPORT -  set( _export "NO_EXPORT" ) - -  foreach( _arg ${ARGN} ) - -    # this variable help us to skip -    # storing unapropriate values (i.e. directives) -    unset( _skip_store ) - -    # found directive "EXPORT" -    if( "+${_arg}" STREQUAL "+EXPORT" ) -      set( _skip_store 1 ) -      unset( _export ) -    endif( "+${_arg}" STREQUAL "+EXPORT" ) - -    # found directive "RUNTIME_DESTINATION" -    if( "+${_arg}" STREQUAL "+RUNTIME_DESTINATION" ) -      set( _skip_store 1 ) -      set( _storage "_runtime_destination" ) -      unset( ${_storage} ) -    endif( "+${_arg}" STREQUAL "+RUNTIME_DESTINATION" ) - -    # found directive "LIBRARY_DESTINATION" -    if( "+${_arg}" STREQUAL "+LIBRARY_DESTINATION" ) -      set( _skip_store 1 ) -      set( _storage "_library_destination" ) -      unset( ${_storage} ) -    endif( "+${_arg}" STREQUAL "+LIBRARY_DESTINATION" ) - -    # found directive "PLUGIN_DESTINATION" -    if( "+${_arg}" STREQUAL "+PLUGIN_DESTINATION" ) -      set( _skip_store 1 ) -      set( _storage "_plugin_destination" ) -      unset( ${_storage} ) -    endif( "+${_arg}" STREQUAL "+PLUGIN_DESTINATION" ) - -    # storing value -    if( _storage AND NOT _skip_store ) -      list( APPEND ${_storage} ${_arg} ) -      set( _storage "_sources" ) -    endif( _storage AND NOT _skip_store ) - -  endforeach( _arg ) - -  # if destinations are not set, we using some defaults -  # we assume that tdeinit executable MUST be installed -  # (otherwise why we build it?) -  if( NOT _runtime_destination ) -    set( _runtime_destination ${BIN_INSTALL_DIR} ) -  endif( NOT _runtime_destination ) -  if( NOT _library_destination ) -    set( _library_destination ${LIB_INSTALL_DIR} ) -  endif( NOT _library_destination ) -  if( NOT _plugin_destination ) -    set( _plugin_destination ${PLUGIN_INSTALL_DIR} ) -  endif( NOT _plugin_destination ) - -  # create the library -  tde_add_library( tdeinit_${_target} ${_sources} SHARED ${_export} -    DESTINATION ${_library_destination} -  ) - -  # create the executable -  tde_add_executable( ${_target} -    SOURCES ${CMAKE_CURRENT_BINARY_DIR}/${_target}_tdeinit_executable.cpp -    LINK tdeinit_${_target}-shared -    DESTINATION ${_runtime_destination} -  ) - -  # create the plugin -  tde_add_kpart( ${_target} -    SOURCES ${CMAKE_CURRENT_BINARY_DIR}/${_target}_tdeinit_module.cpp -    LINK tdeinit_${_target}-shared -    DESTINATION ${_plugin_destination} -  ) - -endmacro( tde_add_tdeinit_executable ) - - -################################################# -##### -##### tde_create_translation - -macro( tde_create_translation ) - -  unset( _srcs ) -  unset( _lang ) -  unset( _dest ) -  unset( _out_name ) -  unset( _directive ) -  unset( _var ) - -  foreach( _arg ${ARGN} ) - -    # found directive "FILES" -    if( "+${_arg}" STREQUAL "+FILES" ) -      unset( _srcs ) -      set( _var _srcs ) -      set( _directive 1 ) -    endif( ) - -    # found directive "LANG" -    if( "+${_arg}" STREQUAL "+LANG" ) -      unset( _lang ) -      set( _var _lang ) -      set( _directive 1 ) -    endif( ) - -    # found directive "DESTINATION" -    if( "+${_arg}" STREQUAL "+DESTINATION" ) -      unset( _dest ) -      set( _var _dest ) -      set( _directive 1 ) -    endif( ) - -    # found directive "OUTPUT_NAME" -    if( "+${_arg}" STREQUAL "+OUTPUT_NAME" ) -      unset( _out_name ) -      set( _var _out_name ) -      set( _directive 1 ) -    endif( ) - -    # collect data -    if( _directive ) -      unset( _directive ) -    elseif( _var ) -      list( APPEND ${_var} ${_arg} ) -    endif() - -  endforeach( ) - -  if( NOT MSGFMT_EXECUTABLE ) -    tde_setup_msgfmt( ) -  endif( ) -  if( NOT _lang ) -    tde_message_fatal( "missing LANG directive" ) -  endif( ) - -  # if no file specified, include all *.po files -  if( NOT _srcs ) -    file( GLOB _srcs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.po  ) -  endif( ) -  if( NOT _srcs ) -    tde_message_fatal( "no source files" ) -  endif( ) - -  if( NOT _lang STREQUAL "auto") -    set( _real_lang ${_lang} ) - -    if( NOT _dest ) -      set( _dest "${LOCALE_INSTALL_DIR}/${_lang}/LC_MESSAGES" ) -    endif( ) - -    # OUTPUT_NAME can only be used if we have only one file -    list( LENGTH _srcs _srcs_num) -    if( _out_name AND _srcs_num GREATER 1 ) -      tde_message_fatal( "OUTPUT_NAME can be supplied only with single file or LANG=auto" ) -    endif( ) - -  elseif( NOT _out_name ) -    tde_message_fatal( "LANG=auto reqires OUTPUT_NAME directive to be set" ) -  elseif( _dest ) -    tde_message_fatal( "DESTINATION cannot be used with LANG=auto" ) -  endif( ) - -  # generate *.mo files -  foreach( _src ${_srcs} ) - -    get_filename_component( _src ${_src} ABSOLUTE ) - -    if( _out_name ) -      set( _out ${_out_name} ) -      if( _lang STREQUAL "auto" ) -        get_filename_component( _real_lang ${_src} NAME_WE ) -        set( _dest "${LOCALE_INSTALL_DIR}/${_real_lang}/LC_MESSAGES" ) -      endif( ) -    else( ) -      get_filename_component( _out ${_src} NAME_WE ) -    endif( ) - -    string( REPLACE "@" "_" _target ${_real_lang} ) -    set( _out_filename "${_out}-${_real_lang}.mo" ) -    set( _install_filename "${_out}.mo" ) - -    add_custom_command( -      OUTPUT ${_out_filename} -      COMMAND ${MSGFMT_EXECUTABLE} ${_src} -o ${_out_filename} -      DEPENDS ${_src} ) -    add_custom_target( "${_out}-${_target}-translation" ALL DEPENDS ${_out_filename} ) -    install( FILES ${CMAKE_CURRENT_BINARY_DIR}/${_out_filename} RENAME ${_install_filename} DESTINATION ${_dest} ) - -  endforeach( ) - -endmacro( ) - - -################################################# -##### -##### tde_create_handbook - -macro( tde_create_handbook ) - -  unset( _target ) -  unset( _dest ) -  unset( _noindex ) -  unset( _srcs ) -  unset( _extra ) -  unset( _srcdir ) - -  set( _lang en ) -  set( _first_arg 1 ) -  set( _var _target ) - -  foreach( _arg ${ARGN} ) - -    # found directive "NOINDEX" -    if( "+${_arg}" STREQUAL "+NOINDEX" ) -      set( _noindex 1 ) -      set( _directive 1 ) -    endif() - -    # found directive "FILES" -    if( "+${_arg}" STREQUAL "+FILES" ) -      unset( _srcs ) -      set( _var _srcs ) -      set( _directive 1 ) -    endif() - -    # found directive "EXTRA" -    if( "+${_arg}" STREQUAL "+EXTRA" ) -      unset( _extra ) -      set( _var _extra ) -      set( _directive 1 ) -    endif() - -    # found directive "SRCDIR" -    if( "+${_arg}" STREQUAL "+SRCDIR" ) -      unset( _srcdir ) -      set( _var _srcdir ) -      set( _directive 1 ) -    endif() - -    # found directive DESTINATION -    if( "+${_arg}" STREQUAL "+DESTINATION" ) -      unset( _dest ) -      set( _var _dest ) -      set( _directive 1 ) -    endif() - -    # found directive "LANG" -    if( "+${_arg}" STREQUAL "+LANG" ) -      unset( _lang ) -      set( _var _lang ) -      set( _directive 1 ) -    endif() - -    # collect data -    if( _directive ) -      unset( _directive ) -    elseif( _var ) -      if( _first_arg ) -        set( _target "${_arg}" ) -      else() -        list( APPEND ${_var} ${_arg} ) -      endif() -    endif() - -    unset( _first_arg ) - -  endforeach() - -  # if no target specified, try to guess it from DESTINATION -  if( NOT _target ) -    if( NOT _dest ) -      tde_message_fatal( "target name cannot be determined because DESTINATION is not set" ) -    endif() -    string( REPLACE "/" "-" _target "${_dest}" ) -  endif() - -  set( _target "${_target}-${_lang}-handbook" ) - -  # if no file specified, include all docbooks, stylesheets and images -  if( NOT _srcs ) -    file( GLOB _srcs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.docbook *.css *.png  ) -  endif() - -  # if no destination specified, defaulting to HTML_INSTALL_DIR -  if( NOT _dest ) -    set( _dest "${HTML_INSTALL_DIR}/${_lang}" ) -  # if destination is NOT absolute path, -  # we assume that is relative to HTML_INSTALL_DIR -  elseif( NOT IS_ABSOLUTE ${_dest} ) -    set( _dest "${HTML_INSTALL_DIR}/${_lang}/${_dest}" ) -  endif() - -  if( NOT _srcs ) -    tde_message_fatal( "no source files" ) -  endif() - -  if( NOT _noindex ) - -    # check for index.docbook -    list( FIND _srcs "index.docbook" _find_index ) -    if( -1 EQUAL _find_index ) -      tde_message_fatal( "missing index.docbook file" ) -    endif() - -    # check for srcdir -    if( _srcdir ) -      set( _srcdir "--srcdir=${_srcdir}" ) -    endif() - -    add_custom_command( -      OUTPUT index.cache.bz2 -      COMMAND ${KDE3_MEINPROC_EXECUTABLE} ${_srcdir} --check --cache index.cache.bz2 ${CMAKE_CURRENT_SOURCE_DIR}/index.docbook -      DEPENDS ${_srcs} ) - -    add_custom_target( ${_target} ALL DEPENDS index.cache.bz2 ) - -    list( APPEND _srcs ${CMAKE_CURRENT_BINARY_DIR}/index.cache.bz2 ) - -    if( NOT TDE_HTML_DIR ) -      set( TDE_HTML_DIR ${HTML_INSTALL_DIR} ) -    endif( ) - -    tde_install_empty_directory( ${_dest} ) -    tde_install_symlink( ${TDE_HTML_DIR}/${_lang}/common ${_dest} ) - -  endif() - -  install( FILES ${_srcs} ${_extra} DESTINATION ${_dest} ) - -endmacro( ) - - -################################################# -##### -##### tde_create_tarball -##### -##### Macro is used to create tarball. -##### - -macro( tde_create_tarball ) - -  unset( _target ) -  unset( _files ) -  unset( _destination ) -  set( _sourcedir "${CMAKE_CURRENT_SOURCE_DIR}" ) -  set( _compression "gzip" ) -  set( _var _target ) - -  foreach( _arg ${ARGN} ) - -    # found directive "TARGET" -    if( "+${_arg}" STREQUAL "+TARGET" ) -      unset( _target ) -      set( _var _target ) -      set( _directive 1 ) -    endif( ) - -    # found directive "SOURCEDIR" -    if( "+${_arg}" STREQUAL "+SOURCEDIR" ) -      unset( _sourcedir ) -      set( _var _sourcedir ) -      set( _directive 1 ) -    endif( ) - -    # found directive "FILES" -    if( "+${_arg}" STREQUAL "+FILES" ) -      unset( _files ) -      set( _var _files ) -      set( _directive 1 ) -    endif( ) - -    # found directive "DESTINATION" -    if( "+${_arg}" STREQUAL "+DESTINATION" ) -      unset( _destination ) -      set( _var _destination ) -      set( _directive 1 ) -    endif( ) - -    # found directive "COMPRESSION" -    if( "+${_arg}" STREQUAL "+COMPRESSION" ) -      unset( _compression ) -      set( _var _compression ) -      set( _directive 1 ) -    endif( ) - -    # collect data -    if( _directive ) -      unset( _directive ) -    elseif( _var ) -      list( APPEND ${_var} ${_arg} ) -    endif( ) - -  endforeach( ) - -  if( NOT _target ) -    tde_message_fatal( "Target tarball name not specified." ) -  endif( ) - -  if( NOT _files ) -    file( GLOB_RECURSE _files RELATIVE ${_sourcedir} "${_sourcedir}/*" ) -  endif( ) - -  unset( _files_deps ) -  foreach( _file ${_files} ) -    list( APPEND _files_deps "${_sourcedir}/${_file}" ) -  endforeach( ) - -  if( NOT DEFINED TAR_EXECUTABLE ) -    find_program( TAR_EXECUTABLE NAMES tar ) -    if( "${TAR_EXECUTABLE}" STREQUAL "TAR_EXECUTABLE-NOTFOUND" ) -      tde_message_fatal( "tar executable is required but not found on your system" ) -    endif( ) -  endif( ) - -  if( NOT DEFINED TAR_SETOWNER ) -    execute_process( -        COMMAND ${TAR_EXECUTABLE} --version -        OUTPUT_VARIABLE TAR_VERSION -    ) -    string( REGEX REPLACE "^([^\n]*)\n.*" "\\1" TAR_VERSION "${TAR_VERSION}" ) -    if( "${TAR_VERSION}" MATCHES "GNU *tar" ) -      set( TAR_SETOWNER "--owner=root;--group=root" ) -    elseif( "${TAR_VERSION}" MATCHES "bsd *tar" ) -      set( TAR_SETOWNER "--uname=root;--gname=root" ) -    else( ) -      set( TAR_SETOWNER "" ) -    endif( ) -  endif( ) - -  if( "${_compression}" STREQUAL "-" ) -    unset( _compression ) -  endif( ) -  if( _compression ) -    if( "${_compression}" STREQUAL "gzip" ) -      set( _compression "-z" ) -    else( ) -      set( _compression "--use-compress-program=\"${_compression}\"" ) -    endif( ) -  endif( ) - -  get_filename_component( _target_path "${CMAKE_CURRENT_BINARY_DIR}/${_target}" ABSOLUTE ) -  file( RELATIVE_PATH _target_path "${CMAKE_BINARY_DIR}" "${_target_path}" ) -  string( REPLACE "/" "+" _target_name "${_target_path}" ) -  add_custom_target( "${_target_name}-tarball" ALL -    DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/${_target}" ) - -  add_custom_command( -    COMMAND ${TAR_EXECUTABLE} cf ${CMAKE_CURRENT_BINARY_DIR}/${_target} -        ${_compression} ${TAR_SETOWNER} -- ${_files} -    WORKING_DIRECTORY "${_sourcedir}" -    OUTPUT  "${CMAKE_CURRENT_BINARY_DIR}/${_target}" -    DEPENDS ${_files_deps} -    COMMENT "Create tarball ${_target_path}" -  ) - -  if( _destination ) -    install( FILES ${CMAKE_CURRENT_BINARY_DIR}/${_target} DESTINATION ${_destination} ) -  endif( ) - -endmacro() - - -################################################# -##### -##### tde_include_tqt - -macro( tde_include_tqt ) -  foreach( _cpp ${ARGN} ) -    set_source_files_properties( ${_cpp} PROPERTIES COMPILE_FLAGS "-include tqt.h" ) -  endforeach() -endmacro( ) - - -################################################# -##### -##### tde_install_symlink - -macro( tde_install_symlink _target _link ) - -  # if path is relative, we must to prefix it with CMAKE_INSTALL_PREFIX -  if( IS_ABSOLUTE "${_link}" ) -    set( _destination "${_link}" ) -  else( IS_ABSOLUTE "${_link}" ) -    set( _destination "${CMAKE_INSTALL_PREFIX}/${_link}" ) -  endif( IS_ABSOLUTE "${_link}" ) - -  get_filename_component( _path "${_destination}" PATH ) -  if( NOT IS_DIRECTORY "\$ENV{DESTDIR}${_path}" ) -    install( CODE "file( MAKE_DIRECTORY \"\$ENV{DESTDIR}${_path}\" )" ) -  endif( NOT IS_DIRECTORY "\$ENV{DESTDIR}${_path}" ) - -  install( CODE "execute_process( COMMAND ln -s ${_target} \$ENV{DESTDIR}${_destination} )" ) - -endmacro( tde_install_symlink ) - - -################################################# -##### -##### tde_install_empty_directory - -macro( tde_install_empty_directory _path ) - -  # if path is relative, we must to prefix it with CMAKE_INSTALL_PREFIX -  if( IS_ABSOLUTE "${_path}" ) -    set( _destination "${_path}" ) -  else( IS_ABSOLUTE "${_path}" ) -    set( _destination "${CMAKE_INSTALL_PREFIX}/${_path}" ) -  endif( IS_ABSOLUTE "${_path}" ) - -  install( CODE "file( MAKE_DIRECTORY \"\$ENV{DESTDIR}${_destination}\" )" ) - -endmacro( tde_install_empty_directory ) - - -################################################# -##### -##### tde_conditional_add_subdirectory - -macro( tde_conditional_add_subdirectory _cond _path ) - -  if( ${_cond} ) -    add_subdirectory( "${_path}" ) -  endif( ${_cond} ) - -endmacro( tde_conditional_add_subdirectory ) - - -################################################# -##### -##### tde_auto_add_subdirectories - -macro( tde_auto_add_subdirectories ) -  file( GLOB _dirs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} * ) -  foreach( _dir ${_dirs} ) -    if( IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/${_dir} ) -      if( NOT ${_dir} STREQUAL ".svn" AND EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${_dir}/CMakeLists.txt ) -        add_subdirectory( ${_dir} ) -      endif() -    endif() -  endforeach() -endmacro() - - -################################################# -##### -##### tde_save / tde_restore - -macro( tde_save ) -  foreach( _var ${ARGN} ) -    set( __bak_${_var} ${${_var}} ) -  endforeach() -endmacro() - -macro( tde_save_and_set _var ) -  set( __bak_${_var} ${${_var}} ) -  set( ${_var} ${ARGN} ) -endmacro( ) - -macro( tde_restore ) -  foreach( _var ${ARGN} ) -    set( ${_var} ${__bak_${_var}} ) -    unset( __bak_${_var} ) -  endforeach() -endmacro() - - -################################################# -##### -##### tde_setup_install_path - -macro( tde_setup_install_path _path _default ) -  if( DEFINED ${_path} ) -    set( ${_path} "${${_path}}" CACHE INTERNAL "" FORCE ) -  else( ) -    set( ${_path} "${_default}" ) -  endif( ) -endmacro( ) - - -################################################## - -if( ${CMAKE_SOURCE_DIR} MATCHES ${CMAKE_BINARY_DIR} ) -    tde_message_fatal( "Please use out-of-source building, like this: - \n   rm ${CMAKE_SOURCE_DIR}/CMakeCache.txt -   mkdir /tmp/${PROJECT_NAME}.build -   cd /tmp/${PROJECT_NAME}.build -   cmake ${CMAKE_SOURCE_DIR} [arguments...]" ) -endif( ) - -################################################# -##### -##### tde_setup_architecture_flags - -macro( tde_setup_architecture_flags ) -  message( STATUS "Detected ${CMAKE_SYSTEM_PROCESSOR} CPU architecture" ) -  ## Immediate symbol binding is available only for gcc but not on ARM architectures -  if( ${CMAKE_CXX_COMPILER_ID} STREQUAL "GNU" AND NOT ${CMAKE_SYSTEM_PROCESSOR} MATCHES arm* AND NOT ${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD" ) -    set( LINKER_IMMEDIATE_BINDING_FLAGS "-z\ now" CACHE INTERNAL "" FORCE ) -  else( ) -    set( LINKER_IMMEDIATE_BINDING_FLAGS "" CACHE INTERNAL "" FORCE ) -  endif( ) - -  check_cxx_compiler_flag( -fPIE HAVE_PIE_SUPPORT ) -  if( HAVE_PIE_SUPPORT ) -    set( TDE_PIE_CFLAGS -fPIE ) -    set( TDE_PIE_LDFLAGS -pie ) -  endif( HAVE_PIE_SUPPORT ) -endmacro( ) - - -################################################# -##### -##### tde_setup_gcc_visibility - -macro( tde_setup_gcc_visibility ) -  if( NOT DEFINED __KDE_HAVE_GCC_VISIBILITY ) -    if( NOT UNIX ) -      tde_message_fatal( "gcc visibility support was requested, but your system is not *NIX" ) -    endif( NOT UNIX ) - -    if( TQT_FOUND ) -      find_library( TQT_LIBFILE tqt-mt HINTS "${TQT_LIBRARY_DIRS}" ) -      if( NOT "${TQT_LIBFILE}" STREQUAL "TQT_LIBFILE-NOTFOUND" ) -        message( STATUS "Performing Test HAVE_TQT_VISIBILITY" ) -        execute_process( -          COMMAND readelf --syms "${TQT_LIBFILE}" -          OUTPUT_VARIABLE HAVE_TQT_VISIBILITY -        ) -        if( "${HAVE_TQT_VISIBILITY}" STREQUAL "" OR -            "${HAVE_TQT_VISIBILITY}" MATCHES "GLOBAL[\t ]+DEFAULT[^\n]+QSettingsPrivate" ) -          message( STATUS "Performing Test HAVE_TQT_VISIBILITY - Failed" ) -          tde_message_fatal( "gcc visibility support was requested, but not supported in tqt library" ) -        endif( ) -        message( STATUS "Performing Test HAVE_TQT_VISIBILITY - Success" ) -      endif( ) -    endif( TQT_FOUND ) - -    if( TDE_FOUND ) -      find_file( TDEMACROS_H kdemacros.h HINTS "${TDE_INCLUDE_DIR}" ) -      if( NOT "${TDEMACROS_H}" STREQUAL "TDEMACROS_H-NOTFOUND" ) -        tde_save_and_set( CMAKE_REQUIRED_INCLUDES "${TDE_INCLUDE_DIR}" ) -        check_cxx_source_compiles( " -          #include <${TDEMACROS_H}> -            #ifndef __KDE_HAVE_GCC_VISIBILITY -            #error gcc visibility is not enabled in tdelibs -            #endif -            int main() { return 0; } " -          HAVE_TDE_VISIBILITY -        ) -        tde_restore( CMAKE_REQUIRED_INCLUDES ) -        if( NOT HAVE_TDE_VISIBILITY ) -          tde_message_fatal( "gcc visibility support was requested, but not supported in tdelibs" ) -        endif( NOT HAVE_TDE_VISIBILITY ) -      endif( ) -    endif( TDE_FOUND ) - -    set( __KDE_HAVE_GCC_VISIBILITY 1 ) -    set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fvisibility=hidden") -    set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden -fvisibility-inlines-hidden") -  endif( ) -endmacro( ) - - -################################################# -##### -##### tde_setup_msgfmt - -macro( tde_setup_msgfmt ) -  if( NOT DEFINED MSGFMT_EXECUTABLE ) -    include( FindGettext ) -    if( GETTEXT_FOUND ) -      set( MSGFMT_EXECUTABLE ${GETTEXT_MSGFMT_EXECUTABLE} -           CACHE FILEPATH "path to msgfmt executable" ) -    endif( GETTEXT_FOUND ) - -    if( NOT MSGFMT_EXECUTABLE ) -      tde_message_fatal( "msgfmt is required but was not found on your system." ) -    endif( NOT MSGFMT_EXECUTABLE ) -  endif( ) -endmacro( ) - - -################################################ -##### -##### tde_setup_largefiles - -macro( tde_setup_largefiles ) -  if( NOT DEFINED HAVE_LARGEFILES ) -    message( STATUS "Check support for large files" ) -    unset( LARGEFILES_DEFINITIONS ) - -    # check without special definitions -    unset( HAVE_SIZEOF_T CACHE ) -    check_type_size( off_t SIZEOF_OFF_T ) -    if( SIZEOF_OFF_T GREATER 7 ) -      set( HAVE_LARGEFILES 1 ) -    endif( ) - -    # check with definition _FILE_OFFSET_BITS=64 -    if( NOT HAVE_LARGEFILES ) -      unset( HAVE_SIZEOF_OFF_T CACHE ) -      tde_save_and_set( CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS} -D_FILE_OFFSET_BITS=64" ) -      check_type_size( off_t SIZEOF_OFF_T ) -      tde_restore( CMAKE_REQUIRED_DEFINITIONS ) -      if( SIZEOF_OFF_T GREATER 7 ) -        set( LARGEFILES_DEFINITIONS "-D_FILE_OFFSET_BITS=64" ) -        set( HAVE_LARGEFILES 1 ) -      endif( ) -    endif( ) - -    # check with definition _LARGE_FILES -    if( NOT HAVE_LARGEFILES ) -      unset( HAVE_SIZEOF_OFF_T CACHE ) -      tde_save_and_set( CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS} -D_LARGE_FILES" ) -      check_type_size( off_t SIZEOF_OFF_T ) -      tde_restore( CMAKE_REQUIRED_DEFINITIONS ) -      if( SIZEOF_OFF_T GREATER 7 ) -        set( LARGEFILES_DEFINITIONS "-D_LARGE_FILES" ) -        set( HAVE_LARGEFILES 1 ) -      endif( ) -    endif( ) - -    # check with definition _LARGEFILE_SOURCE -    if( NOT HAVE_LARGEFILES ) -      unset( HAVE_SIZEOF_OFF_T CACHE ) -      tde_save_and_set( CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS} -D_LARGEFILE_SOURCE" ) -      check_type_size( off_t SIZEOF_OFF_T ) -      tde_restore( CMAKE_REQUIRED_DEFINITIONS ) -      if( SIZEOF_OFF_T GREATER 7 ) -        set( LARGEFILES_DEFINITIONS "-D_LARGEFILE_SOURCE" ) -        set( HAVE_LARGEFILES 1 ) -      endif( ) -    endif( ) - -    # check for fseeko/ftello -    if( HAVE_LARGEFILES ) -      tde_save_and_set( CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS} ${LARGEFILES_DEFINITIONS}" ) -      check_symbol_exists( "fseeko" "stdio.h" HAVE_FSEEKO ) -      tde_restore( CMAKE_REQUIRED_DEFINITIONS ) -      if( NOT HAVE_FSEEKO ) -        tde_save_and_set( CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS} ${LARGEFILES_DEFINITIONS} -D_LARGEFILE_SOURCE" ) -        check_symbol_exists( "fseeko" "stdio.h" HAVE_FSEEKO ) -        tde_restore( CMAKE_REQUIRED_DEFINITIONS ) -        if( HAVE_FSEEKO ) -          set( LARGEFILES_DEFINITIONS "${LARGEFILES_DEFINITIONS} -D_LARGEFILE_SOURCE" ) -        else( ) -          unset( HAVE_LARGEFILES ) -        endif( ) -      endif( ) -    endif( ) - -    # check results -    if( HAVE_LARGEFILES ) -      if( "${LARGEFILES_DEFINITIONS}" STREQUAL "" ) -        message( STATUS "Check support for large files - Success" ) -      else( ) -        add_definitions( ${LARGEFILES_DEFINITIONS} ) -        message( STATUS "Check support for large files - Success with ${LARGEFILES_DEFINITIONS}" ) -      endif( ) -      set( HAVE_LARGEFILES 1 CACHE INTERNAL "Support for large files enabled" ) -    else( ) -      message( STATUS "Check support for large files - Failed" ) -      tde_message_fatal( "Cannot find a way to enable support for large files." ) -    endif( ) -  endif( ) -endmacro( ) - - -################################################# -##### -##### tde_setup_dbus - -macro( tde_setup_dbus ) -  if( NOT DBUS_FOUND ) -    pkg_search_module( DBUS dbus-1 ) -    if( NOT DBUS_FOUND ) -      tde_message_fatal( "dbus-1 is required, but not found on your system" ) -    endif( ) -  endif( ) - -  if( NOT DEFINED DBUS_SYSTEM_CONF_DIRECTORY ) -    execute_process( -      COMMAND ${PKG_CONFIG_EXECUTABLE} -        dbus-1 --variable=sysconfdir -      OUTPUT_VARIABLE DBUS_SYSTEM_CONF_BASE -      OUTPUT_STRIP_TRAILING_WHITESPACE -    ) -    if( DBUS_SYSTEM_CONF_BASE ) -      set( DBUS_SYSTEM_CONF_DIRECTORY "${DBUS_SYSTEM_CONF_BASE}/dbus-1/system.d" ) -      message( STATUS "Using " ${DBUS_SYSTEM_CONF_DIRECTORY} " for DBUS system configuration files" ) -    else( ) -      tde_message_fatal( "Can not find the base directory for the dbus-1 configuration" ) -    endif( ) -  endif( ) - -  if( NOT DEFINED DBUS_SESSION_CONF_DIRECTORY ) -    execute_process( -      COMMAND ${PKG_CONFIG_EXECUTABLE} -        dbus-1 --variable=sysconfdir -      OUTPUT_VARIABLE DBUS_SYSTEM_CONF_BASE -      OUTPUT_STRIP_TRAILING_WHITESPACE -    ) -    if( DBUS_SYSTEM_CONF_BASE ) -      set( DBUS_SESSION_CONF_DIRECTORY "${DBUS_SYSTEM_CONF_BASE}/dbus-1/session.d" ) -      message( STATUS "Using " ${DBUS_SESSION_CONF_DIRECTORY} " for DBUS session configuration files" ) -    else( ) -      tde_message_fatal( "Can not find the base directory for the dbus-1 configuration" ) -    endif( ) -  endif( ) - -  if( NOT DEFINED DBUS_SESSION_DIRECTORY ) -    execute_process( -      COMMAND ${PKG_CONFIG_EXECUTABLE} -        dbus-1 --variable=session_bus_services_dir -      OUTPUT_VARIABLE DBUS_SESSION_DIRECTORY -      OUTPUT_STRIP_TRAILING_WHITESPACE -    ) -    message( STATUS "Using " ${DBUS_SESSION_DIRECTORY} " for DBUS session service files" ) -  endif( ) - -  if( NOT DEFINED DBUS_SERVICE_DIRECTORY ) -    execute_process( -      COMMAND ${PKG_CONFIG_EXECUTABLE} -        dbus-1 --variable=system_bus_services_dir -      OUTPUT_VARIABLE DBUS_SERVICE_DIRECTORY -      OUTPUT_STRIP_TRAILING_WHITESPACE -    ) -    if( "${DBUS_SERVICE_DIRECTORY}" STREQUAL "" ) -      if( "${DBUS_SESSION_DIRECTORY}" MATCHES "/services$" ) -        string( REGEX REPLACE "/services$" "/system-services" -                DBUS_SERVICE_DIRECTORY "${DBUS_SESSION_DIRECTORY}" ) -      else( ) -        tde_message_fatal( "Directory for DBUS system service files can not be determined." ) -      endif( ) -    endif( ) -    message( STATUS "Using " ${DBUS_SERVICE_DIRECTORY} " for DBUS system service files" ) -  endif( ) - -  if( NOT "${ARGV}" STREQUAL "" AND NOT DBUS_TQT_FOUND ) -    pkg_search_module( DBUS_TQT ${ARGV} ) -    if( NOT DBUS_TQT_FOUND ) -      tde_message_fatal( "${ARGV} is required, but not found on your system" ) -    endif( ) -  endif( ) -  if( "${ARGV}" STREQUAL "dbus-1-tqt" AND NOT DEFINED DBUSXML2QT3_EXECUTABLE ) -    find_program( DBUSXML2QT3_EXECUTABLE -      NAMES dbusxml2qt3 -      HINTS "${TDE_PREFIX}/bin" ${BIN_INSTALL_DIR} -    ) -  endif( ) - -endmacro( ) - - -################################################# -##### -##### tde_setup_polkit - -macro( tde_setup_polkit ) -  if( NOT POLKIT_GOBJECT_FOUND ) -    pkg_search_module( POLKIT_GOBJECT polkit-gobject-1 ) -    if( NOT POLKIT_GOBJECT_FOUND ) -      tde_message_fatal( "polkit-gobject-1 is required, but not found on your system" ) -    endif( ) -  endif( ) - -  foreach( _arg ${ARGV} ) -    if( NOT "${_arg}" MATCHES "^polkit-" ) -      set( _arg "polkit-${_arg}" ) -    endif( ) -    string( TOUPPER "${_arg}" _polkit_module ) -    if( "${_polkit_module}" MATCHES "-[0-9]+$" ) -      string( REGEX REPLACE "-[0-9]+$" "" _polkit_module "${_polkit_module}" ) -    endif( ) -    string( REPLACE "-" "_" _polkit_module "${_polkit_module}" ) -    if( NOT "${_arg}" MATCHES "-[0-9]+$" ) -      set( _arg "${_arg}-1" ) -    endif( ) -    if( NOT ${_polkit_module}_FOUND ) -      pkg_search_module( ${_polkit_module} ${_arg} ) -      if( NOT ${_polkit_module}_FOUND ) -        tde_message_fatal( "${_arg} is required, but not found on your system" ) -      endif( ) -    endif( ) -  endforeach( ) - -  if( NOT DEFINED POLKIT_ACTIONS_DIRECTORY ) -    execute_process( -      COMMAND ${PKG_CONFIG_EXECUTABLE} -        polkit-gobject-1 --variable=actiondir -      OUTPUT_VARIABLE POLKIT_ACTIONS_DIRECTORY -      OUTPUT_STRIP_TRAILING_WHITESPACE -    ) -    message( STATUS "Using " ${POLKIT_ACTIONS_DIRECTORY} " for PolicyKit action files" ) -  endif( ) - -endmacro( ) diff --git a/q15/cmake/modules/TDESetupPaths.cmake b/q15/cmake/modules/TDESetupPaths.cmake deleted file mode 100644 index 465df7fc..00000000 --- a/q15/cmake/modules/TDESetupPaths.cmake +++ /dev/null @@ -1,68 +0,0 @@ -################################################# -# -#  (C) 2010-2011 Serghei Amelian -#  serghei (DOT) amelian (AT) gmail.com -# -#  Improvements and feedback are welcome -# -#  This file is released under GPL >= 2 -# -################################################# - -################################################# -##### -##### tde_internal_setup_path - -macro( _tde_internal_setup_path _path _default _comment ) -  if( DEFINED ${_path} ) -    set( ${_path} "${${_path}}" CACHE PATH "${_comment}" ) -  else( DEFINED ${_path} ) -    set( ${_path} "${_default}" ) -  endif( DEFINED ${_path} ) -endmacro( _tde_internal_setup_path ) - - -################################################# -##### -##### tde_setup_paths - -macro( tde_setup_paths ) - -  # install paths -  _tde_internal_setup_path( EXEC_INSTALL_PREFIX       "${CMAKE_INSTALL_PREFIX}"                     "Base directory for executables and libraries" ) -  _tde_internal_setup_path( SHARE_INSTALL_PREFIX      "${CMAKE_INSTALL_PREFIX}/share"               "Base directory for files which go to share/" ) -  _tde_internal_setup_path( BIN_INSTALL_DIR           "${EXEC_INSTALL_PREFIX}/bin"                  "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)" ) -  _tde_internal_setup_path( SBIN_INSTALL_DIR          "${EXEC_INSTALL_PREFIX}/sbin"                 "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)" ) -  _tde_internal_setup_path( LIB_INSTALL_DIR           "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}"     "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})" ) -  _tde_internal_setup_path( LIBEXEC_INSTALL_DIR       "${LIB_INSTALL_DIR}/trinity/libexec"             "The subdirectory relative to the install prefix where libraries will be installed (default is ${LIB_INSTALL_DIR}/trinity/libexec)" ) -  _tde_internal_setup_path( PKGCONFIG_INSTALL_DIR     "${LIB_INSTALL_DIR}/pkgconfig"                "The install dir for pkg-config metadata files" ) -  _tde_internal_setup_path( INCLUDE_INSTALL_DIR       "${CMAKE_INSTALL_PREFIX}/include"             "The subdirectory to the header prefix" ) - -  _tde_internal_setup_path( CMAKE_INSTALL_DIR         "${SHARE_INSTALL_PREFIX}/cmake"               "The install dir for cmake import modules" ) -  _tde_internal_setup_path( PLUGIN_INSTALL_DIR        "${LIB_INSTALL_DIR}/trinity"                     "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/trinity)" ) -  _tde_internal_setup_path( CONFIG_INSTALL_DIR        "${SHARE_INSTALL_PREFIX}/config"              "The config file install dir" ) -  _tde_internal_setup_path( DATA_INSTALL_DIR          "${SHARE_INSTALL_PREFIX}/apps"                "The parent directory where applications can install their data" ) -  _tde_internal_setup_path( HTML_INSTALL_DIR          "${SHARE_INSTALL_PREFIX}/doc/tde/HTML"        "The HTML install dir for documentation" ) -  _tde_internal_setup_path( ICON_INSTALL_DIR          "${SHARE_INSTALL_PREFIX}/icons"               "The icon install dir (default ${SHARE_INSTALL_PREFIX}/share/icons/)" ) -  _tde_internal_setup_path( KCFG_INSTALL_DIR          "${SHARE_INSTALL_PREFIX}/config.kcfg"         "The install dir for tdeconfig files" ) -  _tde_internal_setup_path( LOCALE_INSTALL_DIR        "${SHARE_INSTALL_PREFIX}/locale"              "The install dir for translations" ) -  _tde_internal_setup_path( APPS_INSTALL_DIR          "${SHARE_INSTALL_PREFIX}/applnk"              "The install dir for the application desktop files" ) -  _tde_internal_setup_path( MIME_INSTALL_DIR          "${SHARE_INSTALL_PREFIX}/mimelnk"             "The install dir for the mimetype desktop files" ) -  _tde_internal_setup_path( SERVICES_INSTALL_DIR      "${SHARE_INSTALL_PREFIX}/services"            "The install dir for service (desktop, protocol, ...) files" ) -  _tde_internal_setup_path( SERVICETYPES_INSTALL_DIR  "${SHARE_INSTALL_PREFIX}/servicetypes"        "The install dir for servicestypes desktop files" ) -  _tde_internal_setup_path( SOUND_INSTALL_DIR         "${SHARE_INSTALL_PREFIX}/sounds"              "The install dir for sound files" ) -  _tde_internal_setup_path( TEMPLATES_INSTALL_DIR     "${SHARE_INSTALL_PREFIX}/templates"           "The install dir for templates (Create new file...)" ) -  _tde_internal_setup_path( WALLPAPER_INSTALL_DIR     "${SHARE_INSTALL_PREFIX}/wallpapers"          "The install dir for wallpapers" ) -  _tde_internal_setup_path( KCONF_UPDATE_INSTALL_DIR  "${DATA_INSTALL_DIR}/tdeconf_update"            "The tdeconf_update install dir" ) -  _tde_internal_setup_path( AUTOSTART_INSTALL_DIR     "${SHARE_INSTALL_PREFIX}/autostart"           "The install dir for autostart files" ) - -  _tde_internal_setup_path( SYSCONF_INSTALL_DIR       "${CMAKE_INSTALL_PREFIX}/etc"                 "The sysconfig install dir (default ${CMAKE_INSTALL_PREFIX}/etc)" ) -  _tde_internal_setup_path( MAN_INSTALL_DIR           "${SHARE_INSTALL_PREFIX}/man"                 "The man install dir (default ${SHARE_INSTALL_PREFIX}/man/)" ) -  _tde_internal_setup_path( INFO_INSTALL_DIR          "${SHARE_INSTALL_PREFIX}/info"                "The info install dir (default ${SHARE_INSTALL_PREFIX}/info)" ) - -  _tde_internal_setup_path( XDG_MENU_INSTALL_DIR      "${SYSCONF_INSTALL_DIR}/xdg/menus"            "The XDG menus dir" ) -  _tde_internal_setup_path( XDG_APPS_INSTALL_DIR      "${SHARE_INSTALL_PREFIX}/applications/tde"    "The XDG apps dir" ) -  _tde_internal_setup_path( XDG_DIRECTORY_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" "The XDG directory" ) -  _tde_internal_setup_path( XDG_MIME_INSTALL_DIR      "${SHARE_INSTALL_PREFIX}/mime/packages"       "The install dir for the xdg mimetypes" ) - -endmacro( tde_setup_paths ) diff --git a/q15/cmake/modules/tde_uic.cmake b/q15/cmake/modules/tde_uic.cmake deleted file mode 100644 index 36b921f2..00000000 --- a/q15/cmake/modules/tde_uic.cmake +++ /dev/null @@ -1,67 +0,0 @@ -################################################# -# -#  (C) 2010-2011 Serghei Amelian -#  serghei (DOT) amelian (AT) gmail.com -# -#  Improvements and feedback are welcome -# -#  This file is released under GPL >= 2 -# -################################################# - -set( CMAKE_MODULE_PATH "${MASTER_SOURCE_DIR}/cmake/modules" ) -include( TDEMacros ) - -get_filename_component( _ui_basename ${UI_FILE} NAME_WE ) - -# FIXME this will working only on out-of-source mode -set( local_ui_file ${_ui_basename}.ui ) -configure_file( ${UI_FILE} ${local_ui_file} COPYONLY ) -tde_execute_process( COMMAND ${TQT_REPLACE_SCRIPT} ${local_ui_file} ) - -# ui.h extension file, if exists -if( EXISTS "${UI_FILE}.h" ) -  configure_file( ${UI_FILE}.h ${local_ui_file}.h COPYONLY ) -  tde_execute_process( COMMAND ${TQT_REPLACE_SCRIPT} ${local_ui_file}.h ) -endif( ) - -if( TDE_TQTPLUGINS_DIR ) -  set( L -L ${TDE_TQTPLUGINS_DIR} ) -endif( ) - -tde_execute_process( COMMAND ${UIC_EXECUTABLE} -  -nounload -tr tr2i18n -  ${L} -  ${local_ui_file} -  OUTPUT_VARIABLE _ui_h_content ) - -if( _ui_h_content ) -  string( REGEX REPLACE "#ifndef " "#ifndef UI_" _ui_h_content "${_ui_h_content}" ) -  string( REGEX REPLACE "#define " "#define UI_" _ui_h_content "${_ui_h_content}" ) -  string( REGEX REPLACE "public TQWizard" "public KWizard" _ui_h_content "${_ui_h_content}" ) -  string( REGEX REPLACE "public QWizard" "public KWizard" _ui_h_content "${_ui_h_content}" ) -  string( REGEX REPLACE "#include <ntqwizard.h>" "#include <kwizard.h>" _ui_h_content "${_ui_h_content}" ) -  string( REGEX REPLACE "#include <qwizard.h>" "#include <kwizard.h>" _ui_h_content "${_ui_h_content}" ) -  file( WRITE ${_ui_basename}.h "${_ui_h_content}" ) -endif( ) - -tde_execute_process( COMMAND ${UIC_EXECUTABLE} -  -nounload -tr tr2i18n -  ${L} -  -impl ${_ui_basename}.h -  ${local_ui_file} -  OUTPUT_VARIABLE _ui_cpp_content ) - -if( _ui_cpp_content ) -  string( REGEX REPLACE "tr2i18n\\(\"\"\\)" "QString::null" _ui_cpp_content "${_ui_cpp_content}" ) -  string( REGEX REPLACE "tr2i18n\\(\"\", \"\"\\)" "QString::null" _ui_cpp_content "${_ui_cpp_content}" ) -  string( REGEX REPLACE ": TQWizard\\(" ": KWizard(" _ui_cpp_content "${_ui_cpp_content}" ) -  string( REGEX REPLACE ": QWizard\\(" ": KWizard(" _ui_cpp_content "${_ui_cpp_content}" ) -  file( WRITE ${_ui_basename}.cpp "#include <kdialog.h>\n#include <tdelocale.h>\n\n${_ui_cpp_content}" ) - -  tde_execute_process( COMMAND ${MOC_EXECUTABLE} -    ${_ui_basename}.h -    OUTPUT_VARIABLE _ui_h_moc_content ) -  file( APPEND ${_ui_basename}.cpp "${_ui_h_moc_content}" ) - -endif( ) diff --git a/q15/cmake/modules/template_dummy_cpp.cmake b/q15/cmake/modules/template_dummy_cpp.cmake deleted file mode 100644 index 8e1f5ff5..00000000 --- a/q15/cmake/modules/template_dummy_cpp.cmake +++ /dev/null @@ -1,5 +0,0 @@ -#ifdef _AIX -  namespace { -  void *not_empty_file; -  } -#endif diff --git a/q15/cmake/modules/template_export_library.cmake b/q15/cmake/modules/template_export_library.cmake deleted file mode 100644 index 4d6cb3ff..00000000 --- a/q15/cmake/modules/template_export_library.cmake +++ /dev/null @@ -1,7 +0,0 @@ -add_library( @_target@ @_type@ IMPORTED ) - -set_target_properties( @_target@ PROPERTIES -  IMPORTED_LINK_INTERFACE_LIBRARIES "@_shared_libs@" -  IMPORTED_LOCATION "@_location@" -  IMPORTED_SONAME "@_soname@" ) - diff --git a/q15/cmake/modules/template_libtool_file.cmake b/q15/cmake/modules/template_libtool_file.cmake deleted file mode 100644 index fcd73d46..00000000 --- a/q15/cmake/modules/template_libtool_file.cmake +++ /dev/null @@ -1,35 +0,0 @@ -# @_laname@ - a libtool library file -# Generated by CMake - GNU libtool -# -# Please DO NOT delete this file! -# It is necessary for linking the library. - -# The name that we can dlopen(3). -dlname='@_library_name_2@' - -# Names of this library. -library_names='@_library_name_1@ @_library_name_2@ @_library_name_3@' - -# The name of the static archive. -old_library='' - -# Libraries that this one depends upon. -dependency_libs='' - -# Version information for @_name@. -current=@_version_current@ -age=@_version_age@ -revision=@_version_revision@ - -# Is this an already installed library? -installed=yes - -# Should we warn about portability when linking against -modules? -shouldnotlink=@_shouldnotlink@ - -# Files to dlopen/dlpreopen -dlopen='' -dlpreopen='' - -# Directory that this library needs to be installed in: -libdir='@_libdir@' diff --git a/q15/cmake/modules/template_tdeinit_executable.cmake b/q15/cmake/modules/template_tdeinit_executable.cmake deleted file mode 100644 index 3d480c44..00000000 --- a/q15/cmake/modules/template_tdeinit_executable.cmake +++ /dev/null @@ -1,2 +0,0 @@ -extern "C" int kdemain(int argc, char* argv[]); -int main(int argc, char* argv[]) { return kdemain(argc,argv); } diff --git a/q15/cmake/modules/template_tdeinit_module.cmake b/q15/cmake/modules/template_tdeinit_module.cmake deleted file mode 100644 index efd89d88..00000000 --- a/q15/cmake/modules/template_tdeinit_module.cmake +++ /dev/null @@ -1,3 +0,0 @@ -#include <kdemacros.h> -extern "C" int kdemain(int argc, char* argv[]); -extern "C" KDE_EXPORT int tdeinitmain(int argc, char* argv[]) { return kdemain(argc,argv); } diff --git a/q15/q15.pro b/q15/q15.pro deleted file mode 100644 index bdac8656..00000000 --- a/q15/q15.pro +++ /dev/null @@ -1,43 +0,0 @@ -#- -# Copyright (c) 2017-2020 by Denis Kozadaev -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -#  -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -#  -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -# DEALINGS IN THE SOFTWARE. -# -# $Id$ -# - -#- -# Author: Denis Kozadaev (denis@tambov.ru) -# -# Please add file description here -# - -TEMPLATE= app -TARGET= q15 -#QT += core gui widgets sql network printsupport serialport -#exists($$(HOME)/devel/devel.pri):include($$(HOME)/devel/devel.pri) - -INCLUDEPATH+= /usr/include/tqt3 -TQMAKE_LDFLAGS+= /usr/lib/amd64 - -HEADERS= gameboard.h mainwindow.h - -SOURCES= main.cpp mainwindow.cpp gameboard.cpp - -# EOF diff --git a/q15/qt.FreeBSD.mk b/q15/qt.FreeBSD.mk deleted file mode 100644 index 7afc941b..00000000 --- a/q15/qt.FreeBSD.mk +++ /dev/null @@ -1,24 +0,0 @@ -# $Id: qt.FreeBSD.mk,v 1.0 2004/11/05 10:22:11 denis Exp $ - -QTDIR= /usr/X11R6 -MOC= ${QTDIR}/bin/moc -LUPDATE= ${QTDIR}/bin/lupdate -LRELEASE= ${QTDIR}/bin/lrelease -QTCFLAGS= ${QTDIR}/include -DQT_NO_COMPAT -pthread -QTLFLAGS= -L${QTDIR}/lib -lqt-mt -pthread - -CXXFLAGS+= -I${QTCFLAGS} -LDADD+= ${QTLFLAGS} - -SRCMOC= ${MOCS:M*.h:R:S/$/.cxx/g} -OBJMOC= ${MOCS:M*.h:R:S/$/.mo/g} -OBJS+= ${OBJMOC} -CLEANFILES+= ${SRCMOC} - -.SUFFIXES: .h .cxx .mo - -.h.cxx: -	${MOC} ${.IMPSRC} -o ${.TARGET} - -.cxx.mo: -	${CXX} ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET} diff --git a/q15/src/CMakeLists.txt b/q15/src/CMakeLists.txt index d9228b93..9a71c1fd 100644 --- a/q15/src/CMakeLists.txt +++ b/q15/src/CMakeLists.txt @@ -1,15 +1,15 @@ -################################################# -# -#  (C) 2010-2011 Serghei Amelian -#  serghei (DOT) amelian (AT) gmail.com -#  (C) 2011-2012 Timothy Pearson -#  kb9vqf (AT) pearsoncomputing (DOT) net -# -#  Improvements and feedback are welcome -# -#  This file is released under GPL >= 2 -# -################################################# +############################################ +#                                          # +#  (C) 2010-2011 Serghei Amelian           # +#  serghei (DOT) amelian (AT) gmail.com    # +#  (C) 2011-2012 Timothy Pearson           # +#  kb9vqf (AT) pearsoncomputing (DOT) net  # +#                                          # +#  Improvements and feedback are welcome   # +#                                          # +#  This file is released under GPL >= 2    # +#                                          # +############################################  include_directories(    ${CMAKE_BINARY_DIR} @@ -24,21 +24,16 @@ link_directories(  ) -##### q15 ################################# +##### (executable) q15 -install( PROGRAMS -    ${CMAKE_CURRENT_BINARY_DIR}/q15 -  DESTINATION ${BIN_INSTALL_DIR} ) +tde_add_executable( q15 AUTOMOC - -set( target q15 ) - -set( ${target}_SRCS -  gameboard.cpp main.cpp mainwindow.cpp -) - -tde_add_executable( ${target} AUTOMOC -  SOURCES ${${target}_SRCS} -  LINK tqt-mt +  SOURCES +        gameboard.cpp +        main.cpp +        mainwindow.cpp +  LINK +     tqt-mt +		    DESTINATION ${BIN_INSTALL_DIR}  ) | 
