Am 24.10.2011 21:33, schrieb Alexander Neundorf:
On Tuesday 18 October 2011, Ralf Habacker wrote:
Hi all,
with the recent kde-runtime (and other) buildsystems there are problems
installing dbus service files, which need to be fixed.
In
https://projects.kde.org/projects/kde/kde-runtime/repository/revisions/mast
er/entry/knotify/org.kde.knotify.service.cmake there is
CMAKE_INSTALL_PREFIX/bin prefix used, which do not work in windows
enviroment, where the build install root is not equal to the client
install root.
So the problem is that CMAKE_INSTALL_PREFIX is not necessarily used at install
time ?
yes
On recent windows builds dbus services executables are installed in the
same location as dbus-daemon and other executables, so a './' prefix
should work.
Are there any objections to add an additional KDE_... DIR variable in
KDE4Internal.cmake for this, something like
KDE4_DBUS_SERVICE_BIN_DIR - the directory where dbus services
are installed which could be used in the service files.
which has to be set to
if (WIN32)
set (KDE_DBUS_SERVICE_BIN_DIR .)
else(WIN32)
set (KDE_DBUS_SERVICE_BIN_DIR ${CMAKE_INSTALL_PREFIX}/bin)
endif(WIN32)
and to use in service files like shown below:
*[D-BUS Service]
Name=org.kde.knotify
Exec=@*KDE4_DBUS_SERVICE_BIN_DIR@/*knotify4
Don't know.
So the problem is that under UNIX we need the full path there, while under
Windows we would need the full path at install time there, which is unknown at
package-generation time.
the best solution would be to use a relative path to avoid path
relocations on install time.
Install location for windows are currently all relative to install root.
from kde4internal.cmake
...
if (WIN32)
# use relative install prefix to avoid hardcoded install paths in
cmake_install.cmake files
And under Windows org.kde.knotify.service.cmake is installed into the bin/
directory ?
no, the executable referenced by this service is installed in the bin dir
Ralf
_______________________________________________
Kde-buildsystem mailing list
Kde-buildsystem@kde.org
https://mail.kde.org/mailman/listinfo/kde-buildsystem