import os from lib.make import * from lib import cpp version("1.16.2") description("a message bus system, a simple way for applications to talk to one another") maintainer("sisungo ") source_url("https://dbus.freedesktop.org/releases/dbus/dbus-1.16.2.tar.xz") builddep("shortcut/c") builddep("shortcut/meson") builddep("gettext") builddep(f"libintl-dev @{arch.get_target()}") builddep(f"glib-dev @{arch.get_target()}") builddep("pkgconf") def build(): cpp.meson_setup([ "-Dapparmor=disabled", "-Dmessage_bus=false", "-Druntime_dir=/run", "-Dsystemd=disabled", "--prefix=/", f"--libdir={get_prefix('libdbus')}/lib", f"--bindir={get_prefix('dbus-tools')}/bin", f"--includedir={get_prefix('libdbus-dev')}/include", "--sysconfdir=/var/config", "--localstatedir=/var/db/dbus", ]) cpp.meson_compile() cpp.meson_install() on_build(build) def pack_libdbus(composer): composer.makedir("lib") for i in os.listdir("lib"): if not ".so" in i: continue composer.addfile(f"lib/{i}", f"lib/{i}") os.symlink(f"{get_prefix('libdbus-dev')}/lib/dbus-1.0", f"{composer.workdir}/bundle/lib/dbus-1.0") package("libdbus") dep("semi-libc @same-arch") on_pack(pack_libdbus) package("dbus-tools") dep("libdbus (same)") cpp.use_auto_pack(["bin"]) package("libdbus-dev") dep("libdbus (same)") cpp.use_auto_pack(["dev"])