class GlibNetworking < Formula desc "Network related modules for glib" homepage "https://launchpad.net/glib-networking" url "https://download.gnome.org/sources/glib-networking/2.44/glib-networking-2.44.0.tar.xz" mirror "https://mirrors.kernel.org/debian/pool/main/g/glib-networking/glib-networking_2.44.0.orig.tar.xz" sha256 "8f8a340d3ba99bfdef38b653da929652ea6640e27969d29f7ac51fbbe11a4346" bottle do cellar :any revision 1 sha256 "fd29427de98662c12afd02ef385a2a99cc6117a6e1c3f0456c7c87ff6e8d1943" => :yosemite sha256 "9adb59c4b037ad2c6915c0a3b192b82ef17df89a9fb9137f132d7c2a0fb7689a" => :mavericks sha256 "ece7fd3deec1bfee535d19ce7494c00ed71f24816096c484b6021e148c1ad913" => :mountain_lion end depends_on "pkg-config" => :build depends_on "intltool" => :build depends_on "gettext" depends_on "glib" depends_on "gnutls" depends_on "gsettings-desktop-schemas" link_overwrite "lib/gio/modules" def install # Install files to `lib` instead of `HOMEBREW_PREFIX/lib`. inreplace "configure", "$($PKG_CONFIG --variable giomoduledir gio-2.0)", lib/"gio/modules" system "./configure", "--disable-dependency-tracking", "--disable-silent-rules", "--prefix=#{prefix}", "--with-ca-certificates=#{etc}/openssl/cert.pem", # Remove when p11-kit >= 0.20.7 builds on OSX # see https://github.com/Homebrew/homebrew/issues/36323 # and https://bugs.freedesktop.org/show_bug.cgi?id=91602 "--without-pkcs11" system "make", "install" # Delete the cache, will regenerate it in post_install rm lib/"gio/modules/giomodule.cache" end def post_install system Formula["glib"].opt_bin/"gio-querymodules", HOMEBREW_PREFIX/"lib/gio/modules" end test do (testpath/"gtls-test.c").write <<-EOS.undent #include int main (int argc, char *argv[]) { if (g_tls_backend_supports_tls (g_tls_backend_get_default())) return 0; else return 1; } EOS # From `pkg-config --cflags --libs gio-2.0` flags = [ "-D_REENTRANT", "-I#{HOMEBREW_PREFIX}/include/glib-2.0", "-I#{HOMEBREW_PREFIX}/lib/glib-2.0/include", "-I#{HOMEBREW_PREFIX}/opt/gettext/include", "-L#{HOMEBREW_PREFIX}/lib", "-L#{HOMEBREW_PREFIX}/opt/gettext/lib", "-lgio-2.0", "-lgobject-2.0", "-lglib-2.0", "-lintl" ] system ENV.cc, "gtls-test.c", "-o", "gtls-test", *flags system "./gtls-test" end end