class GlibNetworking < Formula desc "Network related modules for glib" homepage "https://launchpad.net/glib-networking" url "https://download.gnome.org/sources/glib-networking/2.62/glib-networking-2.62.1.tar.xz" sha256 "3c55ae6771ad7a79fa606a834f4686ed555c2774ed6e9ece6f3c0f6a3dab7110" bottle do sha256 "f6a09b8032078f0485791a51ca632336212ee26685a507b9a26a4b2c99d17ac6" => :catalina sha256 "7b61b9309af4d0d36d9c0eed39036d012954be77426101eaa737e1fa6fb241dd" => :mojave sha256 "06fb6d19fbfdb79d37ccade73e9741be30305b782e8d2ff989609ed495b1a29b" => :high_sierra end depends_on "meson" => :build depends_on "ninja" => :build depends_on "pkg-config" => :build depends_on "python" => :build depends_on "glib" depends_on "gnutls" depends_on "gsettings-desktop-schemas" link_overwrite "lib/gio/modules" def install # stop meson_post_install.py from doing what needs to be done in the post_install step ENV["DESTDIR"] = "/" mkdir "build" do system "meson", "--prefix=#{prefix}", "-Dlibproxy=disabled", "-Dopenssl=disabled", "-Dgnome_proxy=disabled", ".." system "ninja", "-v" system "ninja", "install", "-v" end 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 #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" ] system ENV.cc, "gtls-test.c", "-o", "gtls-test", *flags system "./gtls-test" end end