diff options
author | Kjell Ahlstedt <kjellahlstedt@gmail.com> | 2020-03-14 10:09:03 +0100 |
---|---|---|
committer | Kjell Ahlstedt <kjellahlstedt@gmail.com> | 2020-03-14 10:12:14 +0100 |
commit | f9d510c3262bee9f78d8a75fea6ad39a27a813e4 (patch) | |
tree | 5c2ec8b548c25a68d54b8010f25957b2c4cd28f8 | |
parent | dfb9ebed6004622ebe883ac00ca9fd1784b6f807 (diff) | |
download | glibmm-f9d510c3262bee9f78d8a75fea6ad39a27a813e4.tar.gz |
README: Describe building with Meson and Autotools
-rw-r--r-- | README | 94 |
1 files changed, 87 insertions, 7 deletions
@@ -1,12 +1,92 @@ This is glibmm, a C++ API for parts of glib that are useful for C++. See http://www.gtkmm.org -Installation Procedure ----------------------- +# Building -$ tar xf glibmm-@GLIBMM_VERSION@.tar.gz -$ cd glibmm-@GLIBMM_VERSION@ -$ ./configure --prefix=/some_directory -$ make -$ make install +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 glibmm-@GLIBMM_VERSION@.tar.gz + $ cd glibmm-@GLIBMM_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/glib/glibmm/, untracked/gio/giomm/ 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=yes + +Then, reguardless 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, reguardless of how the tarball was made: + $ make + $ make install +You can build the examples and tests, and run 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 glibmm 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 the tests, like so: + $ make check +You can create a tarball like so: + $ make distcheck +or + $ make dist |