0
0
Fork 0
haikuports/sys-apps/dbus/dbus-1.12.20.recipe

153 lines
4.3 KiB
Bash

SUMMARY="D-Bus provides simple way for applications to talk to one another"
DESCRIPTION="NOTE: D-Bus should not be used in native Haiku apps, but is only \
here because some ported software requires it.
D-Bus supplies both a system daemon (for events such as \"\
new hardware device added\" or \"printer queue changed\") and a per-user\
-login-session daemon (for general IPC needs among user applications). \
Also, the message bus is built on top of a general one-to-one message passing \
framework, which can be used by any two apps to communicate directly (without \
going through the message bus daemon). Currently the communicating \
applications are on one computer, or through unencrypted TCP/IP suitable for \
use behind a firewall with shared NFS home directories."
HOMEPAGE="https://freedesktop.org/wiki/Software/dbus/"
COPYRIGHT="2014 Red Hat, Inc."
LICENSE="GNU GPL v2"
REVISION="5"
SOURCE_URI="https://dbus.freedesktop.org/releases/dbus/dbus-$portVersion.tar.gz"
CHECKSUM_SHA256="f77620140ecb4cdc67f37fb444f8a6bea70b5b6461f12f1cbe2cec60fa7de5fe"
PATCHES="dbus-$portVersion.patchset"
ADDITIONAL_FILES="
systemlaunch.in
userlaunch.in
"
ARCHITECTURES="all"
SECONDARY_ARCHITECTURES="x86"
GLOBAL_WRITABLE_FILES="
settings/dbus-1/session.conf keep-old
settings/dbus-1/system.conf keep-old
"
dbusUserHomeDir="/packages/$portVersionedName-$REVISION/.self/$relativeDataDir/dbus/empty"
PACKAGE_USERS="
messagebus real-name \"messagebus user\" home \"$dbusUserHomeDir\" shell \"/bin/true\" groups \"messagebus\"
"
PACKAGE_GROUPS="messagebus"
libVersion="3.19.13"
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
PROVIDES="
dbus$secondaryArchSuffix = $portVersion
cmd:dbus_cleanup_sockets = $portVersion
cmd:dbus_daemon = $portVersion
cmd:dbus_launch = $portVersion
cmd:dbus_monitor = $portVersion
cmd:dbus_run_session = $portVersion
cmd:dbus_send = $portVersion
cmd:dbus_test_tool = $portVersion
cmd:dbus_update_activation_environment = $portVersion
cmd:dbus_uuidgen = $portVersion
lib:libdbus_1$secondaryArchSuffix = $libVersionCompat
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libexecinfo$secondaryArchSuffix
lib:libexpat$secondaryArchSuffix
lib:libffi$secondaryArchSuffix
lib:libglib_2.0$secondaryArchSuffix
lib:libiconv$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
PROVIDES_devel="
dbus${secondaryArchSuffix}_devel = $portVersion
devel:libdbus_1$secondaryArchSuffix = $libVersionCompat
"
REQUIRES_devel="
dbus$secondaryArchSuffix == $portVersion base
devel:libexecinfo$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libexecinfo$secondaryArchSuffix
devel:libexpat$secondaryArchSuffix
devel:libffi$secondaryArchSuffix
devel:libglib_2.0$secondaryArchSuffix
devel:libiconv$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:awk
cmd:find
cmd:g++$secondaryArchSuffix
cmd:make
cmd:pkg_config$secondaryArchSuffix
cmd:python
"
defineDebugInfoPackage dbus$secondaryArchSuffix \
"$prefix"/bin/dbus-cleanup-sockets \
"$prefix"/bin/dbus-daemon \
"$prefix"/bin/dbus-launch \
"$prefix"/bin/dbus-monitor \
"$prefix"/bin/dbus-run-session \
"$prefix"/bin/dbus-send \
"$prefix"/bin/dbus-test-tool \
"$prefix"/bin/dbus-update-activation-environment \
"$prefix"/bin/dbus-uuidgen \
"$libDir"/libdbus-1.so.$libVersion
BUILD()
{
runConfigure --omit-dirs binDir ./configure \
--with-system-pid-file=/var/run/dbus/pid \
--with-system-socket=/var/run/dbus/system_bus_socket \
--bindir=$prefix/bin \
--disable-static
make $jobArgs
}
INSTALL()
{
make install
rm $libDir/*.la
mv $libDir/dbus-1.0/include/dbus/*.h $includeDir/dbus-1.0/dbus/
rm -rf $libDir/dbus-1.0/
sed -i \
-e 's|-I${libdir}/dbus-1.0/include||' \
-e "s|prefix}/include|prefix}/$relativeIncludeDir|g" \
$libDir/pkgconfig/dbus-1.pc
prepareInstalledDevelLib libdbus-1
fixPkgconfig
packageEntries devel \
$developDir \
$libDir/cmake
mkdir -p $dataDir/dbus/empty
mkdir -p $dataDir/launch $dataDir/user_launch
sed \
-e "s|@APP@|dbus-system|" \
-e "s|@BIN@|/bin/dbus-daemon$secondaryArchSuffix|" \
$portDir/additional-files/systemlaunch.in > $dataDir/launch/dbus
sed \
-e "s|@APP@|dbus-user|" \
-e "s|@BIN@|/bin/dbus-daemon$secondaryArchSuffix|" \
$portDir/additional-files/userlaunch.in > $dataDir/user_launch/dbus
sed -i \
-e 's|user="root"|user="baron"|g' \
$dataDir/dbus-1/system.conf
}
TEST()
{
make check
}