about summary refs log tree commit diff
path: root/README.md
diff options
context:
space:
mode:
authorAlexey Yerin <yyp@disroot.org>2023-05-28 14:10:05 +0300
committerAlexey Yerin <yyp@disroot.org>2023-05-28 14:15:22 +0300
commit16e730f540acfe6a0015464c81831cdfacaf107b (patch)
treea2aa04bf788dc16977fc6cda2ed874938c3c13c5 /README.md
Initial commit
Diffstat (limited to 'README.md')
-rw-r--r--README.md59
1 files changed, 59 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..559c6cf
--- /dev/null
+++ b/README.md
@@ -0,0 +1,59 @@
+# hare-gi
+GObject Introspection code generator for Hare. In short, it creates bindings for
+GTK family of libraries (GTK+, GDK, Pango, etc).
+
+## Generating and installing bindings
+Dependencies:
+* An up-to-date [Hare] toolchain
+* [hare-fastxml]
+* Development files for the desired GTK version and its dependencies. Make sure
+`/usr/share/gir-1.0` is included.
+
+A few core libraries do not ship GIR XML files by default. They can be obtained
+from gobject-introspection:
+
+```
+git clone https://gitlab.gnome.org/GNOME/gobject-introspection.git
+meson setup build/
+ninja -C build/
+
+# The path where this is downloaded will be used later
+```
+
+### GTK 3
+```
+./generate <path to gobject-introspection>
+make install
+```
+
+### GTK 4
+```
+./generate4 <path to gobject-introspection>
+make install4
+```
+
+## Running examples
+### GTK 3
+```
+make demo
+./demo
+```
+
+### GTK 4
+```
+make demo4
+./demo4
+```
+
+## Contributing
+Please send patches to [~yerinalexey/public-inbox@lists.sr.ht][archives] using
+[git send-email] with prefix set to `hare-gi`:
+
+```shell-session
+$ git config format.subjectPrefix "PATCH hare-gi"
+```
+
+[Hare]: https://harelang.org/installation
+[hare-fastxml]: https://git.sr.ht/~yerinalexey/hare-fastxml
+[archives]: https://lists.sr.ht/~yerinalexey/public-inbox
+[git send-email]: https://git-send-email.io