Skip to content

Commit 754a114

Browse files
committed
README.md: Improve the Build section
and remove README_build. All build information is in README.md.
1 parent 4dae371 commit 754a114

File tree

2 files changed

+50
-63
lines changed

2 files changed

+50
-63
lines changed

README.md

Lines changed: 50 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -33,55 +33,95 @@ packages.
3333

3434
Building from the [libsigc++ release tarball](https://github.com/libsigcplusplus/libsigcplusplus/releases) is easier than building from git.
3535

36+
It's easiest to build with Meson, if the tarball was made with Meson,
37+
and to build with Autotools, if the tarball was made with Autotools.
38+
Then you don't have to use maintainer-mode.
39+
40+
How do you know how the tarball was made? If it was made with Meson,
41+
it contains files in untracked/build_scripts/, untracked/docs/ and possibly
42+
other subdirectories of untracked/.
43+
3644
### Building from a tarball with Meson
3745

46+
Don't call the builddir 'build'. There is a directory called 'build' with
47+
files used by Autotools.
48+
3849
For instance:
3950
```sh
40-
$ meson --prefix /usr/local --libdir lib yourbuilddir .
41-
$ cd yourbuilddir
51+
# If the tarball was made with Autotools, you must enable maintainer-mode:
52+
$ meson --prefix=/usr/local --libdir=lib -Dmaintainer-mode=true your_builddir .
53+
# If the tarball was made with Meson:
54+
$ meson --prefix=/usr/local --libdir=lib your_builddir .
55+
56+
# then
57+
$ cd your_builddir
4258
$ ninja
4359
$ ninja install
60+
# You can run the tests like so:
61+
$ ninja test
4462
```
4563

46-
### Building from a tarball with autotools
64+
### Building from a tarball with Autotools
4765

4866
For instance:
4967
```sh
68+
# If the tarball was made with Autotools:
5069
$ ./configure --prefix=/usr/local
70+
# If the tarball was made with Meson, you must enable maintainer-mode:
71+
$ ./autogen.sh --prefix=/usr/local
72+
73+
# then
5174
$ make
5275
$ make install
76+
# You can build the examples and tests, and run the tests, like so:
77+
$ make check
5378
```
5479

5580
## Building from git
5681

5782
Building from git can be difficult so you should prefer building from a release
5883
tarball unless you need to work on the libsigc++ code itself.
5984

60-
To build from git you may use either the meson build (added in December 2019),
61-
the autotools build (used by most developers in the past) or CMake (should work too).
85+
jhbuild can be a good help. See the [jhbuild repo](https://gitlab.gnome.org/GNOME/jhbuild)
86+
and the [jhbuild wiki](https://wiki.gnome.org/Projects/Jhbuild).
6287

6388
### Building from git with Meson
6489

65-
You must have meson properly installed (meson, ninja, etc) and you
90+
You must have Meson properly installed (meson, ninja, etc) and you
6691
will also need [mm-common](https://gitlab.gnome.org/GNOME/mm-common/)
6792
version 1.0.0 or higher.
6893

94+
Maintainer-mode is enabled by default when you build from a git clone.
95+
96+
Don't call the builddir 'build'. There is a directory called 'build' with
97+
files used by Autotools.
98+
6999
```sh
70-
$ meson --prefix /usr/local --libdir lib yourbuilddir .
71-
$ cd yourbuilddir
100+
$ meson --prefix=/usr/local --libdir=lib your_builddir .
101+
$ cd your_builddir
72102
$ ninja
103+
$ ninja install
104+
# You can run the tests like so:
73105
$ ninja test
106+
# You can create a tarball like so:
107+
$ ninja dist
74108
```
75109

76-
### Building from git with autotools
110+
### Building from git with Autotools
77111

78-
You must have autotools properly installed (autoconf, automake, etc) and you
112+
You must have Autotools properly installed (autoconf, automake, etc) and you
79113
will also need [mm-common](https://gitlab.gnome.org/GNOME/mm-common/).
80114

81115
```sh
82116
$ ./autogen.sh --prefix=/usr/local
83117
$ make
118+
$ make install
119+
# You can build the examples and tests, and run the tests, like so:
84120
$ make check
121+
# You can create a tarball like so:
122+
$ make distcheck
123+
# or
124+
$ make dist
85125
```
86126

87127
### Building from git with CMake

README_build

Lines changed: 0 additions & 53 deletions
This file was deleted.

0 commit comments

Comments
 (0)