class IrcdIrc2 < Formula desc "Original IRC server daemon" homepage "http://www.irc.org/" url "http://www.irc.org/ftp/irc/server/irc2.11.2p3.tgz" sha256 "be94051845f9be7da0e558699c4af7963af7e647745d339351985a697eca2c81" version "2.11.2p3" def default_ircd_conf <<-EOS.undent # M-Line M:irc.localhost::Darwin ircd default configuration::000A # A-Line A:This is Darwin's default ircd configurations:Please edit your /usr/local/etc/ircd.conf file:Contact for questions::ExampleNet # Y-Lines Y:1:90::100:512000:5.5:100.100 Y:2:90::300:512000:5.5:250.250 # I-Line I:*:::0:1 I:127.0.0.1/32:::0:1 # P-Line P::::6667: EOS end def install system "./configure", "--prefix=#{prefix}", "--localstatedir=#{var}", "--sysconfdir=#{etc}", "--mandir=#{man}", "CFLAGS=-DRLIMIT_FDMAX=0" build_dir = `./support/config.guess`.chomp # Disable netsplit detection. In a netsplit, joins to new channels do not # give chanop status. inreplace "#{build_dir}/config.h", /#define DEFAULT_SPLIT_USERS\s+65000/, "#define DEFAULT_SPLIT_USERS 0" inreplace "#{build_dir}/config.h", /#define DEFAULT_SPLIT_SERVERS\s+80/, "#define DEFAULT_SPLIT_SERVERS 0" # The directory is something like `i686-apple-darwin13.0.2' system "make", "install", "-C", build_dir (etc/"ircd.conf").write default_ircd_conf end plist_options :manual => "ircd" def plist; <<-EOS.undent KeepAlive Label #{plist_name} ProgramArguments #{opt_sbin}/ircd -t RunAtLoad WorkingDirectory #{HOMEBREW_PREFIX} StandardErrorPath #{var}/ircd.log EOS end test do system "#{sbin}/ircd", "-version" end end