about summary refs log tree commit diff
path: root/generate
diff options
context:
space:
mode:
Diffstat (limited to 'generate')
-rwxr-xr-xgenerate40
1 files changed, 40 insertions, 0 deletions
diff --git a/generate b/generate
new file mode 100755
index 0000000..7f62ada
--- /dev/null
+++ b/generate
@@ -0,0 +1,40 @@
+#!/bin/sh
+
+if [ $# -lt 1 ]; then
+	printf "Usage: generate <gobject introspection root>\n" >&2
+	exit 1
+fi
+GI="$1"
+BIND=./bindings
+
+mkdir -p "$BIND"/glib "$BIND"/gobject "$BIND"/gio "$BIND"/gmodule "$BIND"/atk \
+	"$BIND"/gdkpixbuf "$BIND"/freetype "$BIND"/harfbuzz "$BIND"/cairo \
+	"$BIND"/pango "$BIND"/gdk "$BIND"/xlib "$BIND"/gtk
+
+hare build cmd/hare-gi && ./hare-gi -B \
+	-m GLib,glib,"$BIND"/glib/_generated.ha \
+	-m GObject,gobject,"$BIND"/gobject/_generated.ha \
+	-m Gio,gio,"$BIND"/gio/_generated.ha \
+	-m GModule,gmodule,"$BIND"/gmodule/_generated.ha \
+	-m Atk,atk,"$BIND"/atk/_generated.ha \
+	-m GdkPixbuf,gdkpixbuf,"$BIND"/gdkpixbuf/_generated.ha \
+	-m freetype2,freetype,"$BIND"/freetype/_generated.ha \
+	-m HarfBuzz,harfbuzz,"$BIND"/harfbuzz/_generated.ha \
+	-m cairo,cairo,"$BIND"/cairo/_generated.ha \
+	-m Pango,pango,"$BIND"/pango/_generated.ha \
+	-m Gdk,gdk,"$BIND"/gdk/_generated.ha \
+	-m xlib,xlib,"$BIND"/xlib/_generated.ha \
+	-m Gtk,gtk,"$BIND"/gtk/_generated.ha \
+	"$GI"/build/gir/GLib-2.0.gir \
+	"$GI"/build/gir/GObject-2.0.gir \
+	"$GI"/build/gir/Gio-2.0.gir \
+	"$GI"/build/gir/GModule-2.0.gir \
+	/usr/share/gir-1.0/Atk-1.0.gir \
+	/usr/share/gir-1.0/GdkPixbuf-2.0.gir \
+	"$GI"/build/gir/freetype2-2.0.gir \
+	/usr/share/gir-1.0/HarfBuzz-0.0.gir \
+	"$GI"/build/gir/cairo-1.0.gir \
+	/usr/share/gir-1.0/Pango-1.0.gir \
+	/usr/share/gir-1.0/Gdk-3.0.gir \
+	"$GI"/build/gir/xlib-2.0.gir \
+	/usr/share/gir-1.0/Gtk-3.0.gir