51 lines
1.9 KiB
Ruby
51 lines
1.9 KiB
Ruby
require 'formula'
|
|
|
|
class DBus < Formula
|
|
url 'http://dbus.freedesktop.org/releases/dbus/dbus-1.4.1.tar.gz'
|
|
homepage 'http://www.freedesktop.org/wiki/Software/dbus'
|
|
md5 '99cb057700c0455fb68f8d57902f77ac'
|
|
|
|
# Don't clean the empty directories that D-Bus needs
|
|
skip_clean "etc/dbus-1/session.d"
|
|
skip_clean "etc/dbus-1/system.d"
|
|
skip_clean "var/run/dbus"
|
|
|
|
def patches
|
|
# Last-minute build breakages for 1.4.1
|
|
[ 'http://cgit.freedesktop.org/dbus/dbus/patch/?id=88004d6b66f80d72e97e9b6b024842d692e5748a',
|
|
'http://cgit.freedesktop.org/dbus/dbus/patch/?id=56d8d4f58ee60cd4f860a99a2dd47b3f636321b8' ]
|
|
end
|
|
|
|
def install
|
|
# Fix the TMPDIR to one D-Bus doesn't reject due to odd symbols
|
|
ENV["TMPDIR"] = "/tmp"
|
|
|
|
|
|
system "./configure", "--disable-dependency-tracking",
|
|
"--prefix=#{prefix}",
|
|
"--disable-xml-docs",
|
|
"--disable-doxygen-docs",
|
|
"--enable-launchd",
|
|
"--with-launchd-agent-dir=#{prefix}",
|
|
"--without-x"
|
|
system "make"
|
|
ENV.deparallelize
|
|
system "make install"
|
|
|
|
# Generate D-Bus's UUID for this machine
|
|
system "#{bin}/dbus-uuidgen", "--ensure=#{prefix}/var/lib/dbus/machine-id"
|
|
end
|
|
|
|
def caveats; <<-EOS.undent
|
|
If this is your first install, automatically load on login with:
|
|
mkdir -p ~/Library/LaunchAgents
|
|
cp #{prefix}/org.freedesktop.dbus-session.plist ~/Library/LaunchAgents/
|
|
launchctl load -w ~/Library/LaunchAgents/org.freedesktop.dbus-session.plist
|
|
|
|
If this is an upgrade and you already have the org.freedesktop.dbus-session.plist loaded:
|
|
launchctl unload -w ~/Library/LaunchAgents/org.freedesktop.dbus-session.plist
|
|
cp #{prefix}/org.freedesktop.dbus-session.plist ~/Library/LaunchAgents/
|
|
launchctl load -w ~/Library/LaunchAgents/org.freedesktop.dbus-session.plist
|
|
EOS
|
|
end
|
|
end
|