Commit graph

61 commits

Author SHA1 Message Date
Ivailo Monev
3fc6433561 generic: make it possible to build from the source directory
after lots of build system changes (including this commit) it is
finally possible

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-14 20:35:59 +03:00
Ivailo Monev
26258999ed cmake: correct kde4_translate() macro documentation
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-27 01:36:14 +03:00
Ivailo Monev
c4d7fcfaa8 kdecore: drop reliance on wheel group for KAuthorization helpers
groups are obsolete thing (e.g. disk, optical, power, etc.)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-10 02:54:21 +03:00
Ivailo Monev
61f31a7a00 generic: remove/replace references to KDE4Internal module
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-17 23:39:13 +03:00
Ivailo Monev
8db84cabae cmake: bootstrap build fix
for reference:
https://github.com/fluxer/katana/issues/36

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-23 06:22:34 +03:00
Ivailo Monev
148110f398 generic: drop locolor support
`apt-file` search yeilds 221 files matching (8 packages provide such),
it is also unused by plasma even tho there are leftovers from support for it

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-05 01:30:27 +02:00
Ivailo Monev
61787d5358 cmake: specify the input as dependency from kde4_translate() macro
such changes may be worth a minor release, I always use the latest
regardless tho

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-02 04:31:48 +02:00
Ivailo Monev
881b47b8ea kdecore: use the Katie translations format
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-02 05:42:59 +02:00
Ivailo Monev
9313e82973 cmake: new baseline kde4_optional_find_package() macro replacing macro_optional_find_package()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-02 13:37:11 +03:00
Ivailo Monev
6ea85df1c2 cmake: kde4_* macros review
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-29 11:12:06 +03:00
Ivailo Monev
d711215d80 cmake: remove WITH_PREFIX option for kde4_add_plugin() macro
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-27 18:05:59 +03:00
Ivailo Monev
b40ed43aa4 cmake: new baseline kde4_optional_add_subdirectory() macro replacing macro_optional_add_subdirectory()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-27 17:25:09 +03:00
Ivailo Monev
08345f1315 cmake: new baseline kde4_bool_to_01() macro replacing macro_bool_to_01()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-27 16:44:28 +03:00
Ivailo Monev
ea9b5d7ade cmake: new baseline kde4_add_dbus_service() macro replacing dbus_add_activation_service()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-27 14:58:58 +03:00
Ivailo Monev
1240740ac4 cmake: move the macros documentation to KDE4Macros file
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-27 13:56:08 +03:00
Ivailo Monev
b99f5304e9 cmake: remove GENERATE_MOC option for kde4_add_kcfg_files() macro
MOC-ing is now done automatically because CMAKE_AUTOMOC is set to ON

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-27 12:11:09 +00:00
Ivailo Monev
0f34942d7b cmake: remove USE_RELATIVE_PATH option for kde4_add_kcfg_files() macro
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-27 12:05:18 +00:00
Ivailo Monev
e88c621aa2 generic: authorization reimplementation
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-25 19:27:41 +03:00
Ivailo Monev
4b177fb61c cmake: remove now unused script used to run tests in CI
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-24 12:20:15 +03:00
Ivailo Monev
40a0937006 kdecore: deal with TODO related to KConfigSkeleton::ItemEnum
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-23 11:28:46 +03:00
Ivailo Monev
4745dff8f1 cmake: create script for each test
to be used in `ctest` replacement since ctest hang on some tests

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-21 02:01:21 +03:00
Ivailo Monev
3c3bb33e63 cmake: remove documentation for non-existing kde4_auth_install_action() macro
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-07 15:31:05 +03:00
Ivailo Monev
ef8346a9ce generic: execute tests via script
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-13 18:21:05 +03:00
Ivailo Monev
08eb4a8558 generic: drop support for emoticons
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-03-08 00:41:39 +02:00
Ivailo Monev
eca1a8fcb0 kdecore: remove transcript support leftovers
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-06-26 12:58:44 +03:00
Ivailo Monev
42bb3120af cmake: drop support for static and shared plugins
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-03-11 05:44:32 +02:00
Ivailo Monev
0fafd0e9df cmake: remove MNG format support from KDE4_INSTALL_ICONS() macro
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-03-11 05:22:58 +02:00
Ivailo Monev
1bcdd21c9a cmake: remove reference to kde4_create_manpage() macro
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-02-04 12:21:44 +02:00
Ivailo Monev
4f17227f68 cmake: remove disabled code for cross-compiling
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-01-07 23:33:50 +02:00
Ivailo Monev
5ea7027075 cmake: remove unused kde4_create_manpage() macro
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-01-07 14:36:18 +02:00
Ivailo Monev
478ca250a2 generic: replace installation paths with KDE4_ prefixed
this is TODO from issue #9. CPack and CTest configs will not be
supported. most of the changes done to other repisitories is automated
via:

find -type f -exec sed -i -e 's|${INSTALL_DIR}|${KDE4_INSTALL_DIR}|g' \
    -e 's|${EXEC_INSTALL_PREFIX}|${KDE4_EXEC_INSTALL_PREFIX}|g' \
    -e 's|${SHARE_INSTALL_PREFIX}|${KDE4_SHARE_INSTALL_PREFIX}|g' \
    -e 's|${BIN_INSTALL_DIR}|${KDE4_BIN_INSTALL_DIR}|g' \
    -e 's|${SBIN_INSTALL_DIR}|${KDE4_SBIN_INSTALL_DIR}|g' \
    -e 's|${LIB_INSTALL_DIR}|${KDE4_LIB_INSTALL_DIR}|g' \
    -e 's|${LIBEXEC_INSTALL_DIR}|${KDE4_LIBEXEC_INSTALL_DIR}|g' \
    -e 's|${INCLUDE_INSTALL_DIR}|${KDE4_INCLUDE_INSTALL_DIR}|g' \
    -e 's|${PLUGIN_INSTALL_DIR}|${KDE4_PLUGIN_INSTALL_DIR}|g' \
    -e 's|${IMPORTS_INSTALL_DIR}|${KDE4_IMPORTS_INSTALL_DIR}|g' \
    -e 's|${CONFIG_INSTALL_DIR}|${KDE4_CONFIG_INSTALL_DIR}|g' \
    -e 's|${DATA_INSTALL_DIR}|${KDE4_DATA_INSTALL_DIR}|g' \
    -e 's|${ICON_INSTALL_DIR}|${KDE4_ICON_INSTALL_DIR}|g' \
    -e 's|${KCFG_INSTALL_DIR}|${KDE4_KCFG_INSTALL_DIR}|g' \
    -e 's|${LOCALE_INSTALL_DIR}|${KDE4_LOCALE_INSTALL_DIR}|g' \
    -e 's|${MIME_INSTALL_DIR}|${KDE4_MIME_INSTALL_DIR}|g' \
    -e 's|${SERVICES_INSTALL_DIR}|${KDE4_SERVICES_INSTALL_DIR}|g' \
    -e 's|${SERVICETYPES_INSTALL_DIR}|${KDE4_SERVICETYPES_INSTALL_DIR}|g' \
    -e 's|${SOUND_INSTALL_DIR}|${KDE4_SOUND_INSTALL_DIR}|g' \
    -e 's|${TEMPLATES_INSTALL_DIR}|${KDE4_TEMPLATES_INSTALL_DIR}|g' \
    -e 's|${WALLPAPER_INSTALL_DIR}|${KDE4_WALLPAPER_INSTALL_DIR}|g' \
    -e 's|${AUTOSTART_INSTALL_DIR}|${KDE4_AUTOSTART_INSTALL_DIR}|g' \
    -e 's|${XDG_APPS_INSTALL_DIR}|${KDE4_XDG_APPS_INSTALL_DIR}|g' \
    -e 's|${XDG_DIRECTORY_INSTALL_DIR}|${KDE4_XDG_DIRECTORY_INSTALL_DIR}|g' \
    -e 's|${XDG_MIME_INSTALL_DIR}|${KDE4_XDG_MIME_INSTALL_DIR}|g' \
    -e 's|${SYSCONF_INSTALL_DIR}|${KDE4_SYSCONF_INSTALL_DIR}|g' \
    -e 's|${MAN_INSTALL_DIR}|${KDE4_MAN_INSTALL_DIR}|g' \
    -e 's|${INFO_INSTALL_DIR}|${KDE4_INFO_INSTALL_DIR}|g' \
    -e 's|${DBUS_INTERFACES_INSTALL_DIR}|${KDE4_DBUS_INTERFACES_INSTALL_DIR}|g' \
    -e 's|${DBUS_SERVICES_INSTALL_DIR}|${KDE4_DBUS_SERVICES_INSTALL_DIR}|g' \
    -e 's|${DBUS_SYSTEM_SERVICES_INSTALL_DIR}|${KDE4_DBUS_SYSTEM_SERVICES_INSTALL_DIR}|g' \
    -e 's|${KAUTH_HELPER_PLUGIN_DIR}|${KDE4_KAUTH_HELPER_PLUGIN_DIR}|g' \
    -e 's|${KAUTH_BACKEND_PLUGIN_DIR}|${KDE4_KAUTH_BACKEND_PLUGIN_DIR}|g' {} +

note that if you execute this command you may corrupt the git repository
files so move the .git directory out of the way. you can also verify
that there are no other reference to the compatibility installation
paths via:

git grep \
    -e INSTALL_DIR \
    -e EXEC_INSTALL_PREFIX \
    -e SHARE_INSTALL_PREFIX \
    -e BIN_INSTALL_DIR \
    -e SBIN_INSTALL_DIR \
    -e LIB_INSTALL_DIR \
    -e LIBEXEC_INSTALL_DIR \
    -e INCLUDE_INSTALL_DIR \
    -e PLUGIN_INSTALL_DIR \
    -e IMPORTS_INSTALL_DIR \
    -e CONFIG_INSTALL_DIR \
    -e DATA_INSTALL_DIR \
    -e ICON_INSTALL_DIR \
    -e KCFG_INSTALL_DIR \
    -e LOCALE_INSTALL_DIR \
    -e MIME_INSTALL_DIR \
    -e SERVICES_INSTALL_DIR \
    -e SERVICETYPES_INSTALL_DIR \
    -e SOUND_INSTALL_DIR \
    -e TEMPLATES_INSTALL_DIR \
    -e WALLPAPER_INSTALL_DIR \
    -e AUTOSTART_INSTALL_DIR \
    -e XDG_APPS_INSTALL_DIR \
    -e XDG_DIRECTORY_INSTALL_DIR \
    -e XDG_MIME_INSTALL_DIR \
    -e SYSCONF_INSTALL_DIR \
    -e MAN_INSTALL_DIR \
    -e INFO_INSTALL_DIR \
    -e DBUS_INTERFACES_INSTALL_DIR \
    -e DBUS_SERVICES_INSTALL_DIR \
    -e DBUS_SYSTEM_SERVICES_INSTALL_DIR \
    -e KAUTH_HELPER_PLUGIN_DIR \
    -e KAUTH_BACKEND_PLUGIN_DIR | grep -v KDE4_

this change should make default installation Filesystem Hierarchy
Standard (FHS) compliant and packaging easier since library suffix (e.g.
64 for x86_64 hosts) will not have to be specified explicitly, it may
solve possible conflicts with installation path variables from other
projects which use custom installation paths aswell

Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
2020-02-08 20:46:43 +00:00
Ivailo Monev
ad2ccd6b2d cmake: remove KDE3 compatibility from KDE4Macros
Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
2019-05-21 17:09:50 +00:00
Ivailo Monev
74bd1e3004 cmake: cleanup kde4_add_widget macro
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2016-04-07 01:19:49 +00:00
Ivailo Monev
60dc63b20f cmake: actually define KDEBINDIR for tests
this change was supposed to be part of eac889a3

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2015-11-09 09:17:22 +02:00
Ivailo Monev
a7b93fa3b2 generic: build system cleanups
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2015-11-01 15:08:31 +02:00
Ivailo Monev
ef0d1682d7 cmake: do not strip test from test name in kde4_add_test()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2015-10-29 18:15:33 +02:00
Ivailo Monev
00975278a4 cmake: minor KDE4_INSTALL_TS_FILES macro cleanup 2015-09-20 04:32:49 +00:00
Ivailo Monev
e7133114e1 generic: misc cleanups 2015-09-05 05:16:46 +00:00
Ivailo Monev
263b5bf1c9 generic: misc cleanups 2015-09-03 05:08:47 +03:00
Ivailo Monev
4b42ee2f1e cmake: bring back kde_install_ts_files macro, adjusted for use withing Git repo 2015-09-03 02:29:41 +03:00
Ivailo Monev
19a0c13d73 generic: misc cleanups 2015-09-01 04:56:26 +03:00
Ivailo Monev
007a44cd2f generic: major build system cleanup
the test are broken!
2015-09-01 01:05:33 +03:00
Ivailo Monev
b20d7f1cbd cmake: drop windows _KDE4_ADD_MANIFEST macro 2015-08-27 18:30:52 +03:00
Ivailo Monev
b2bc64c750 cmake: cleanup KDE4Macros module 2015-07-10 09:06:38 +03:00
Ivailo Monev
3c76c9532f Revert "cmake: cleanup KDE4Macros"
This reverts commit 9add78ad5e.
2015-07-08 04:24:17 +03:00
Ivailo Monev
4e3d881f55 cmake: partially revert 9add78ad 2015-06-22 19:22:59 +03:00
Ivailo Monev
9add78ad5e cmake: cleanup KDE4Macros 2015-06-16 17:20:12 +03:00
Ivailo Monev
5a59e08572 generic: remove support for final target via KDE4_ENABLE_FINAL
it is bogus with the CMake automoc, requires additional guards in
the source code and some components do not support it at all. Also,
Link Time Optimizations (LTO) seem to be doing exactly what
KDE4_ENABLE_FINAL was supposed to do (basicly) so no point in
trying to support something that modern compilers can already do
for us.
2015-03-02 04:57:24 +00:00
Ivailo Monev
f69e1bd429 cmake: remove automoc4 macros and package lookup 2015-02-27 08:06:16 +00:00
Ivailo Monev
82fc15f54b generic: use CMake moc instead of automoc4 by default
for compatibilty reasons automoc4 support is not removed but it
shall be in the future. automoc4 has not been maintained for a
while (last commit is from 2011) and the stable release is from
2009.

CMake version >= 2.8.6 provides the functionality for mocking so
I see no reason to not make use of it.
2015-02-27 07:40:26 +00:00