require 'formula' class Dnsmasq < Formula url 'http://www.thekelleys.org.uk/dnsmasq/dnsmasq-2.57.tar.gz' homepage 'http://www.thekelleys.org.uk/dnsmasq/doc.html' md5 'd10faeb409717eae94718d7716ca63a4' def install ENV.deparallelize # Fix etc location inreplace "src/config.h", "/etc/dnsmasq.conf", "#{etc}/dnsmasq.conf" # Fix compilation on Lion ENV.append_to_cflags "-D__APPLE_USE_RFC_3542" if 10.7 <= MACOS_VERSION inreplace "Makefile" do |s| s.change_make_var! "CFLAGS", ENV.cflags end system "make install PREFIX=#{prefix}" prefix.install "dnsmasq.conf.example" (prefix + "uk.org.thekelleys.dnsmasq.plist").write startup_plist (prefix + "uk.org.thekelleys.dnsmasq.plist").chmod 0644 end def caveats; <<-EOS.undent To configure dnsmasq, copy the example configuration to #{etc}/dnsmasq.conf and edit to taste. cp #{prefix}/dnsmasq.conf.example #{etc}/dnsmasq.conf To load dnsmasq automatically on startup, install and load the provided launchd item as follows: sudo cp #{prefix}/uk.org.thekelleys.dnsmasq.plist /Library/LaunchDaemons sudo launchctl load -w /Library/LaunchDaemons/uk.org.thekelleys.dnsmasq.plist EOS end def startup_plist; <<-EOS.undent Label uk.org.thekelleys.dnsmasq ProgramArguments /usr/local/sbin/dnsmasq --keep-in-foreground KeepAlive NetworkState EOS end end