class ClutterGtk < Formula desc "GTK+ integration library for Clutter" homepage "https://wiki.gnome.org/Projects/Clutter" url "https://download.gnome.org/sources/clutter-gtk/1.8/clutter-gtk-1.8.4.tar.xz" sha256 "521493ec038973c77edcb8bc5eac23eed41645117894aaee7300b2487cb42b06" bottle do sha256 "8d8a3b7e7937a1bdcb461ed3cd2874f226585f6422fe18536347128c7d8d591f" => :high_sierra sha256 "357d29890f4b188e6175e401a5c9b7de2dac85cd8b8f623ee649a19c3bdcd026" => :sierra sha256 "6fad5ba6272b5cceda263f1e48923db56567e7ae730aae9b78d59022ba5e33c8" => :el_capitan sha256 "5656d4eff289206a81b7a401f2d55912fac61990fa1f7c141336c0042240f74b" => :yosemite end depends_on "pkg-config" => :build depends_on "glib" depends_on "gdk-pixbuf" depends_on "gtk+3" depends_on "clutter" depends_on "gobject-introspection" def install args = %W[ --disable-dependency-tracking --disable-debug --prefix=#{prefix} --enable-introspection=yes --disable-silent-rules --disable-gtk-doc-html ] system "./configure", *args system "make", "install" end test do (testpath/"test.c").write <<~EOS #include int main(int argc, char *argv[]) { GOptionGroup *group = gtk_clutter_get_option_group(); return 0; } EOS atk = Formula["atk"] cairo = Formula["cairo"] clutter = Formula["clutter"] cogl = Formula["cogl"] fontconfig = Formula["fontconfig"] freetype = Formula["freetype"] gdk_pixbuf = Formula["gdk-pixbuf"] gettext = Formula["gettext"] glib = Formula["glib"] gtkx3 = Formula["gtk+3"] json_glib = Formula["json-glib"] libepoxy = Formula["libepoxy"] libpng = Formula["libpng"] pango = Formula["pango"] pixman = Formula["pixman"] flags = %W[ -I#{atk.opt_include}/atk-1.0 -I#{cairo.opt_include}/cairo -I#{clutter.opt_include}/clutter-1.0 -I#{cogl.opt_include}/cogl -I#{fontconfig.opt_include} -I#{freetype.opt_include}/freetype2 -I#{gdk_pixbuf.opt_include}/gdk-pixbuf-2.0 -I#{gettext.opt_include} -I#{glib.opt_include}/gio-unix-2.0/ -I#{glib.opt_include}/glib-2.0 -I#{glib.opt_lib}/glib-2.0/include -I#{gtkx3.opt_include}/gtk-3.0 -I#{include}/clutter-gtk-1.0 -I#{json_glib.opt_include}/json-glib-1.0 -I#{libepoxy.opt_include} -I#{libpng.opt_include}/libpng16 -I#{pango.opt_include}/pango-1.0 -I#{pixman.opt_include}/pixman-1 -D_REENTRANT -L#{atk.opt_lib} -L#{cairo.opt_lib} -L#{clutter.opt_lib} -L#{cogl.opt_lib} -L#{gdk_pixbuf.opt_lib} -L#{gettext.opt_lib} -L#{glib.opt_lib} -L#{gtkx3.opt_lib} -L#{json_glib.opt_lib} -L#{lib} -L#{pango.opt_lib} -latk-1.0 -lcairo -lcairo-gobject -lclutter-1.0 -lclutter-gtk-1.0 -lcogl -lcogl-pango -lcogl-path -lgdk-3 -lgdk_pixbuf-2.0 -lgio-2.0 -lglib-2.0 -lgmodule-2.0 -lgobject-2.0 -lgtk-3 -lintl -ljson-glib-1.0 -lpango-1.0 -lpangocairo-1.0 ] system ENV.cc, "test.c", "-o", "test", *flags system "./test" end end