From 889fb9a0290ac43d39a46d89490a62d0b28caa50 Mon Sep 17 00:00:00 2001 From: Michele Calgaro Date: Sun, 23 Jul 2023 16:22:39 +0900 Subject: [PATCH] Added cmake build files Signed-off-by: Michele Calgaro --- CMakeLists.txt | 82 ++++++++++++++++++++++++++++++++++++++++ ConfigureChecks.cmake | 26 +++++++++++++ config.h.cmake | 8 ++++ debian/changelog | 6 +++ src/CMakeLists.txt | 74 ++++++++++++++++++++++++++++++++++++ src/commandobutton.h | 4 +- src/configdialogimpl.cpp | 16 ++++---- src/configdialogimpl.h | 4 +- src/configuration.cpp | 8 ++-- src/configuration.h | 4 +- src/kcmkommando.cpp | 6 +-- src/kcmkommando.h | 2 +- src/kommando.desktop | 17 +++++---- src/kommando.h | 6 +-- src/kommandod.cpp | 6 +-- src/kommandod.h | 2 +- src/kommandoview.h | 7 ++-- src/menu.h | 6 +-- src/menulistviewitem.h | 5 ++- src/roundbutton.cpp | 2 +- src/roundbutton.h | 8 ++-- src/servicemenu.cpp | 2 +- src/servicemenu.h | 2 +- 23 files changed, 252 insertions(+), 51 deletions(-) create mode 100644 CMakeLists.txt create mode 100644 ConfigureChecks.cmake create mode 100644 config.h.cmake create mode 100644 src/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..9e516e3 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,82 @@ +############################################ +# # +# Improvements and feedbacks are welcome # +# # +# This file is released under GPL >= 3 # +# # +############################################ + + +cmake_minimum_required( VERSION 3.1 ) + + +#### general package setup + +project( kommando ) + + +#### include essential cmake modules + +include( FindPkgConfig ) +include( CheckFunctionExists ) +include( CheckSymbolExists ) +include( CheckIncludeFile ) +include( CheckLibraryExists ) +include( CheckCSourceCompiles ) +include( CheckCXXSourceCompiles ) + + +#### include our cmake modules + +include( TDEMacros ) + + +##### set version number + +tde_set_project_version( ) + + +##### setup install paths + +include( TDESetupPaths ) +tde_setup_paths( ) + + +##### optional stuff + +option( WITH_ALL_OPTIONS "Enable all optional support" OFF ) + +option( WITH_GCC_VISIBILITY "Enable fvisibility and fvisibility-inlines-hidden" ${WITH_ALL_OPTIONS} ) + + +##### user requested modules + +option( BUILD_ALL "Build all" ON ) +option( BUILD_DOC "Build documentation" ${BUILD_ALL} ) +option( BUILD_TRANSLATIONS "Build translations" ${BUILD_ALL} ) + + +##### configure checks + +include( ConfigureChecks.cmake ) + + +##### global compiler settings + +add_definitions( -DHAVE_CONFIG_H ) + +set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${TQT_CXX_FLAGS}" ) +set( CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-undefined" ) +set( CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--no-undefined" ) + +##### source directories + +add_subdirectory( src ) + +tde_conditional_add_project_docs( BUILD_DOC ) +#tde_conditional_add_project_translations( BUILD_TRANSLATIONS ) + + +##### write configure files + +configure_file( config.h.cmake config.h @ONLY ) diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake new file mode 100644 index 0000000..0b84648 --- /dev/null +++ b/ConfigureChecks.cmake @@ -0,0 +1,26 @@ +########################################### +# # +# Improvements and feedback are welcome # +# # +# This file is released under GPL >= 3 # +# # +########################################### + + +# required stuff +find_package( TQt ) +find_package( TDE ) + +tde_setup_architecture_flags( ) + +include(TestBigEndian) +test_big_endian(WORDS_BIGENDIAN) + +tde_setup_largefiles( ) + + +##### check for gcc visibility support + +if( WITH_GCC_VISIBILITY ) + tde_setup_gcc_visibility( ) +endif( WITH_GCC_VISIBILITY ) diff --git a/config.h.cmake b/config.h.cmake new file mode 100644 index 0000000..61ede3a --- /dev/null +++ b/config.h.cmake @@ -0,0 +1,8 @@ +#define VERSION "@VERSION@" + +// Defined if you have fvisibility and fvisibility-inlines-hidden support. +#cmakedefine __KDE_HAVE_GCC_VISIBILITY 1 + +/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most + significant byte first (like Motorola and SPARC, unlike Intel). */ +#cmakedefine WORDS_BIGENDIAN @WORDS_BIGENDIAN@ diff --git a/debian/changelog b/debian/changelog index 865873d..a9249db 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +kommando-trinity (0.5.2) unstable; urgency=low + + * Trinity version + + -- Michele Calgaro Sun, 23 Jul 2023 11:50:46 +0900 + kommando (0.5.1-2) unstable; urgency=low * Upload to unstable diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt new file mode 100644 index 0000000..340ab7b --- /dev/null +++ b/src/CMakeLists.txt @@ -0,0 +1,74 @@ +include_directories( + ${CMAKE_SOURCE_DIR} + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${TQT_INCLUDE_DIRS} + ${TDE_INCLUDE_DIR} +) + +link_directories( + ${TQT_LIBRARY_DIRS} +) + + +##### autostart file ##### + +#tde_create_translated_desktop( +# SOURCE polkit-agent-tde.desktop +# DESTINATION ${AUTOSTART_INSTALL_DIR} ) + + +##### kommando (shared) +tde_add_library( kommando SHARED AUTOMOC + SOURCES + menulistviewitem.cpp configuration.cpp menu.cpp + commandobutton.cpp roundbutton.cpp kommandoview.cpp + VERSION 1.0.0 + LINK tdecore-shared tdeio-shared + DESTINATION ${LIB_INSTALL_DIR} +) + + +##### kommandod (kded module) +tde_add_kpart( kded_kommandod AUTOMOC + SOURCES kommandod.cpp kommandod.skel kommando.cpp + LINK tdeinit_kded-shared Xmu kommando-shared + DESTINATION ${PLUGIN_INSTALL_DIR} +) + +##### kcm_kommando (kpart) + +tde_add_kpart( kcm_kommando MODULE AUTOMOC + SOURCES configdialogimpl.cpp configdialog.ui kcmkommando.cpp servicemenu.cpp + LINK + tdeinit_kded-shared tdecore-shared tdeui-shared Xmu kommando-shared + tdeio-shared + DESTINATION ${PLUGIN_INSTALL_DIR} +) + + +##### other data ################################ + +#tde_create_translated_desktop( +# SOURCE mediamanager.desktop +# DESTINATION ${SERVICES_INSTALL_DIR}/kded +# PO_DIR tdeioslave-desktops +#) +# +#tde_create_translated_desktop( +# SOURCE mediabackend.desktop +# DESTINATION ${AUTOSTART_INSTALL_DIR} +# PO_DIR tdeioslave-desktops +#) + +install( + FILES kommandod.desktop + DESTINATION ${SERVICES_INSTALL_DIR}/kded +) + +install( + FILES kommando.desktop + DESTINATION ${XDG_APPS_INSTALL_DIR} +) + diff --git a/src/commandobutton.h b/src/commandobutton.h index 0c03ba5..ea74c4e 100644 --- a/src/commandobutton.h +++ b/src/commandobutton.h @@ -25,7 +25,7 @@ class CommandoButton : public RoundButton { - Q_OBJECT + TQ_OBJECT public: CommandoButton(TQWidget* parent,unsigned short rad= 32); @@ -40,7 +40,7 @@ class CommandoButton : public RoundButton class SubmenuButton : public RoundButton { - Q_OBJECT + TQ_OBJECT public: SubmenuButton(TQWidget* parent, unsigned short rad= 32); SubmenuButton(TQWidget* parent, Menu* submenu, unsigned short rad= 32); diff --git a/src/configdialogimpl.cpp b/src/configdialogimpl.cpp index 9252f9b..f2aa77a 100644 --- a/src/configdialogimpl.cpp +++ b/src/configdialogimpl.cpp @@ -30,14 +30,14 @@ #include #include -#include -#include -#include -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include +#include +#include #include "menulistviewitem.h" #include "servicemenu.h" diff --git a/src/configdialogimpl.h b/src/configdialogimpl.h index c35b975..bdddcb5 100644 --- a/src/configdialogimpl.h +++ b/src/configdialogimpl.h @@ -27,7 +27,7 @@ #include "configdialog.h" -#include +#include #include "kommandoview.h" @@ -43,7 +43,7 @@ class TDEShortcut; class ConfigDialogImpl : public ConfigDialog { - Q_OBJECT + TQ_OBJECT public: ConfigDialogImpl(TQWidget* parent = 0, const char* name = 0, WFlags fl = 0); diff --git a/src/configuration.cpp b/src/configuration.cpp index 4d47965..c533297 100644 --- a/src/configuration.cpp +++ b/src/configuration.cpp @@ -19,10 +19,10 @@ ***************************************************************************/ #include "configuration.h" -#include -#include -#include -#include +#include +#include +#include +#include #include #include diff --git a/src/configuration.h b/src/configuration.h index 7b763c0..c445920 100644 --- a/src/configuration.h +++ b/src/configuration.h @@ -20,7 +20,7 @@ #ifndef CONFIG_H #define CONFIG_H -#include +#include #include #include "kommando.h" @@ -29,7 +29,7 @@ class TQWidgetStack; -class Config{ +class KDE_EXPORT Config{ public: static Config& getSingleton(){ static Config instance; diff --git a/src/kcmkommando.cpp b/src/kcmkommando.cpp index 2e31374..6decdb5 100644 --- a/src/kcmkommando.cpp +++ b/src/kcmkommando.cpp @@ -19,7 +19,7 @@ ***************************************************************************/ -#include +#include #include #include @@ -36,10 +36,10 @@ static const char description[] = static const char version[] = "0.5.2"; typedef KGenericFactory kommandoFactory; -K_EXPORT_COMPONENT_FACTORY( kcm_kommando, kommandoFactory("kcmkommando")) +K_EXPORT_COMPONENT_FACTORY( kcm_kommando, kommandoFactory("kommando")) KCMKommando::KCMKommando(TQWidget *parent, const char *name, const TQStringList&) - : TDECModule(parent, name), about(0), configDialog(0) + : TDECModule(kommandoFactory::instance(), parent, name), about(0), configDialog(0) { about = new TDEAboutData("kommando", I18N_NOOP("Kommando"), version, description, TDEAboutData::License_GPL, "(C) 2005 Daniel Stöckel", 0, 0, "the_docter@gmx.net"); diff --git a/src/kcmkommando.h b/src/kcmkommando.h index 48273d4..ce76ce2 100644 --- a/src/kcmkommando.h +++ b/src/kcmkommando.h @@ -29,7 +29,7 @@ class TDEAboutData; class KCMKommando: public TDECModule { - Q_OBJECT + TQ_OBJECT public: KCMKommando( TQWidget *parent=0, const char *name=0, const TQStringList& = TQStringList() ); diff --git a/src/kommando.desktop b/src/kommando.desktop index f20d2c3..3baf169 100644 --- a/src/kommando.desktop +++ b/src/kommando.desktop @@ -1,14 +1,17 @@ [Desktop Entry] -Encoding=UTF-8 -Name=Kommando Exec=tdecmshell kommando Icon=kommando Type=Application -Categories=Qt;TDE;X-TDE-settings-desktop; -Keywords=Kommando;wheel;menu -X-TDE-ModuleType=Library +Encoding=UTF-8 + X-TDE-Library=kommando X-TDE-ParentApp=kcontrol -Comment=A WheelMenu for KDE -Comment[de]=Ein Kreismenü für KDE +Name=Kommando + +Comment=A WheelMenu for TDE +Comment[de]=Ein Kreismenü für TDE +Comment[it]=Un menu circolare per TDE + +Categories=Qt;TDE;X-TDE-settings-desktop; +Keywords=Kommando;wheel;menu diff --git a/src/kommando.h b/src/kommando.h index 73cab7f..f96fe02 100644 --- a/src/kommando.h +++ b/src/kommando.h @@ -22,8 +22,8 @@ #ifndef _KOMMANDO_H_ #define _KOMMANDO_H_ -#include -#include +#include +#include #include @@ -31,7 +31,7 @@ class Kommando : public TQWidget { - Q_OBJECT + TQ_OBJECT public: Kommando(); diff --git a/src/kommandod.cpp b/src/kommandod.cpp index 0bcafac..d8031ac 100644 --- a/src/kommandod.cpp +++ b/src/kommandod.cpp @@ -18,10 +18,10 @@ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * ***************************************************************************/ -#include -#include +#include +#include #include -#include +#include #include #include "kommandod.h" diff --git a/src/kommandod.h b/src/kommandod.h index 803ac7f..1fc978e 100644 --- a/src/kommandod.h +++ b/src/kommandod.h @@ -29,7 +29,7 @@ class KommandoDaemon : public KDEDModule { - Q_OBJECT + TQ_OBJECT K_DCOP public: diff --git a/src/kommandoview.h b/src/kommandoview.h index 9384e22..2c2f60b 100644 --- a/src/kommandoview.h +++ b/src/kommandoview.h @@ -20,12 +20,13 @@ #ifndef KOMMANDOVIEW_H #define KOMMANDOVIEW_H -#include +#include +#include /** @author Daniel Stöckel */ -class KommandoView : public TQListView +class KDE_EXPORT KommandoView : public TQListView { public: KommandoView(TQWidget* parent, const TQString& name); @@ -37,7 +38,7 @@ class KommandoView : public TQListView TQString m_AppName; }; -class KommandoViewList : public TQPtrList +class KDE_EXPORT KommandoViewList : public TQPtrList { public: KommandoViewList(bool autoDelete = false); diff --git a/src/menu.h b/src/menu.h index 3f64d7a..951c4a5 100644 --- a/src/menu.h +++ b/src/menu.h @@ -20,8 +20,8 @@ #ifndef MENU_H #define MENU_H -#include -#include +#include +#include #include "roundbutton.h" @@ -31,7 +31,7 @@ class RoundButton; class Menu : public TQButtonGroup { - Q_OBJECT + TQ_OBJECT public: Menu(Menu* parentMenu=NULL, const TQString& appName=""); virtual ~Menu(); diff --git a/src/menulistviewitem.h b/src/menulistviewitem.h index 350116b..2b469a4 100644 --- a/src/menulistviewitem.h +++ b/src/menulistviewitem.h @@ -20,9 +20,10 @@ #ifndef MENULISTVIEWITEM_H #define MENULISTVIEWITEM_H -#include +#include +#include -class MenuListViewItem : public TQListViewItem +class KDE_EXPORT MenuListViewItem : public TQListViewItem { public: enum ItemType{Menu,Button}; diff --git a/src/roundbutton.cpp b/src/roundbutton.cpp index f22e3ec..3df847e 100644 --- a/src/roundbutton.cpp +++ b/src/roundbutton.cpp @@ -22,7 +22,7 @@ #include #include -#include +#include #include "kommando.h" diff --git a/src/roundbutton.h b/src/roundbutton.h index 6a7ad26..4b31172 100644 --- a/src/roundbutton.h +++ b/src/roundbutton.h @@ -20,17 +20,17 @@ #ifndef ROUNDBUTTON_H #define ROUNDBUTTON_H -#include -#include +#include +#include #include #include #include class Menu; -class RoundButton : public TQButton //well, there were round buttons in the begining at least *g* +class KDE_EXPORT RoundButton : public TQButton //well, there were round buttons in the begining at least *g* { - Q_OBJECT + TQ_OBJECT public: enum Type {Round, Commando, Submenu}; RoundButton( TQWidget* parent=0, unsigned short rad= 32, const char* name= 0, WFlags f = 0); diff --git a/src/servicemenu.cpp b/src/servicemenu.cpp index dab7473..3e65ffe 100644 --- a/src/servicemenu.cpp +++ b/src/servicemenu.cpp @@ -21,7 +21,7 @@ #include #include -#include +#include #include #include #include diff --git a/src/servicemenu.h b/src/servicemenu.h index 687bdee..4d660f1 100644 --- a/src/servicemenu.h +++ b/src/servicemenu.h @@ -32,7 +32,7 @@ class KServiceGroup; */ class ServiceMenu : public TDEPopupMenu { -Q_OBJECT +TQ_OBJECT public: ServiceMenu(TQObject *receiver, const char *slotActivatedItem, const char *slotActivatedGroup, TQWidget *parent = 0, const char *name = 0);