[gtkmm] README: Update with instructions for building gtkmm



commit 2e10959d9bfb81250aacae27876b8f838c6a8482
Author: Kjell Ahlstedt <kjellahlstedt gmail com>
Date:   Fri Jun 5 16:43:44 2020 +0200

    README: Update with instructions for building gtkmm

 README | 91 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 90 insertions(+), 1 deletion(-)
---
diff --git a/README b/README
index ea1d8e0a..b687ba0b 100644
--- a/README
+++ b/README
@@ -1,3 +1,92 @@
-This is gtkmm, the C++ API for GTK+. 
+This is gtkmm, the C++ API for GTK. 
 See http://www.gtkmm.org/
 
+# Building
+
+Whenever possible, you should use the official binary packages approved by the
+supplier of your operating system, such as your Linux distribution.
+
+## Building on Windows
+
+See README.win32
+
+## Building from a release tarball
+
+Extract the tarball and go to the extracted directory:
+  $ tar xf gtkmm-@GTKMM_VERSION  tar xz
+  $ cd gtkmm-@GTKMM_VERSION@
+
+It's easiest to build with Meson, if the tarball was made with Meson,
+and to build with Autotools, if the tarball was made with Autotools.
+Then you don't have to use maintainer-mode.
+
+How do you know how the tarball was made? If it was made with Meson,
+it contains files in untracked/gdk/gdkmm/, untracked/gtk/gtkmm/ and
+other subdirectories of untracked/.
+
+### Building from a tarball with Meson
+
+Don't call the builddir 'build'. There is a directory called 'build' with
+files used by Autotools.
+
+  $ meson --prefix /some_directory --libdir lib your_builddir .
+  $ cd your_builddir
+
+If the tarball was made with Autotools, you must enable maintainer-mode:
+  $ meson configure -Dmaintainer-mode=true
+
+Then, regardless of how the tarball was made:
+  $ ninja
+  $ ninja install
+You can run the tests like so:
+  $ ninja test
+
+### Building from a tarball with Autotools
+
+If the tarball was made with Autotools:
+  $ ./configure --prefix=/some_directory
+If the tarball was made with Meson, you must enable maintainer-mode:
+  $ ./autogen.sh --prefix=/some_directory
+
+Then, regardless of how the tarball was made:
+  $ make
+  $ make install
+You can build the examples and tests, and run some of the tests, like so:
+  $ make check
+
+## Building from git
+
+Building from git can be difficult so you should prefer building from
+a release tarball unless you need to work on the gtkmm code itself.
+
+jhbuild can be a good help
+  https://gitlab.gnome.org/GNOME/jhbuild
+  https://wiki.gnome.org/Projects/Jhbuild
+
+### Building from git with Meson
+
+Maintainer-mode is enabled by default when you build from a git clone.
+
+Don't call the builddir 'build'. There is a directory called 'build' with
+files used by Autotools.
+
+  $ meson --prefix /some_directory --libdir lib your_builddir .
+  $ cd your_builddir
+  $ ninja
+  $ ninja install
+You can run the tests like so:
+  $ ninja test
+You can create a tarball like so:
+  $ ninja dist
+
+### Building from git with Autotools
+
+  $ ./autogen.sh --prefix=/some_directory
+  $ make
+  $ make install
+You can build the examples and tests, and run some of the tests, like so:
+  $ make check
+You can create a tarball like so:
+  $ make distcheck
+or
+  $ make dist


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]