• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

MSVC_NMake/H03-May-2022-719584

build/H27-Sep-2020-700636

docs/H03-May-2022-2,3071,839

examples/H27-Sep-2020-12972

sigc++/H27-Sep-2020-8,8046,350

tests/H27-Sep-2020-4,4192,927

tools/H27-Sep-2020-438279

untracked/H27-Sep-2020-46,21832,425

AUTHORSH A D27-Sep-2020484 98

COPYINGH A D27-Sep-202025.9 KiB516435

ChangeLogH A D27-Sep-202052 KiB1,497924

ChangeLog.pre-2-3-1H A D27-Sep-2020103.3 KiB2,7602,036

Makefile.amH A D27-Sep-20202 KiB6334

NEWSH A D27-Sep-202025.9 KiB784626

READMEH A D27-Sep-20203.7 KiB12187

autogen.shH A D27-Sep-2020271 85

configure.acH A D27-Sep-20203.5 KiB10081

libsigcplusplus.doapH A D27-Sep-20201.6 KiB3733

meson.buildH A D27-Sep-202010.6 KiB297261

sigc++-uninstalled.pc.inH A D27-Sep-2020423 108

sigc++.pc.inH A D27-Sep-2020633 1916

sigc++config.h.inH A D27-Sep-20202.6 KiB8569

sigc++config.h.mesonH A D27-Sep-20202.8 KiB9073

README

1libsigc++ -- The Typesafe Callback Framework for C++
2
3General information:
4
5   libsigc++ implements a typesafe callback system for standard C++. It
6   allows you to define signals and to connect those signals to any
7   callback function, either global or a member function, regardless of
8   whether it is static or virtual.
9
10   libsigc++ is used by gtkmm to wrap the GTK+ signal system. It does not
11   depend on GTK+ or gtkmm.
12
13   Further information is available on the libsigc++ project home page:
14   https://libsigcplusplus.github.io/libsigcplusplus/
15
16License information:
17
18   Distribution of library and components is under the LGPL as listed in the
19   file COPYING. Examples and tests are Public Domain.
20
21Contact information:
22   Maillist: mailto: libsigc-list@gnome.org
23   Homepage: https://libsigcplusplus.github.io/libsigcplusplus/
24   Online reference documentation: https://developer.gnome.org/libsigc++/unstable/
25   Download: http://ftp.gnome.org/pub/GNOME/sources/libsigc++/
26             https://download.gnome.org/sources/libsigc++/
27   Git: https://github.com/libsigcplusplus/libsigcplusplus
28   Bug reports: https://github.com/libsigcplusplus/libsigcplusplus/issues
29
30Compatibility:
31
32   Compatible compilers must support C++11, such as the decltype() specifier.
33
34   All releases are tested with the gcc (g++) compiler.
35
36# Building
37
38Whenever possible, you should use the official binary packages approved by the
39supplier of your operating system, such as your Linux distribution.
40
41## Building on Windows
42
43See MSVC_NMake/README.txt.
44
45## Building from a release tarball
46
47It's easiest to build with Meson, if the tarball was made with Meson,
48and to build with Autotools, if the tarball was made with Autotools.
49Then you don't have to use maintainer-mode.
50
51How do you know how the tarball was made? If it was made with Meson,
52it contains files in untracked/build_scripts/, untracked/docs/ and possibly
53other subdirectories of untracked/.
54
55### Building from a tarball with Meson
56
57Don't call the builddir 'build'. There is a directory called 'build' with
58files used by Autotools.
59
60If the tarball was made with Autotools, you must enable maintainer-mode:
61  $ meson --prefix=/some_directory --libdir=lib -Dmaintainer-mode=true your_builddir .
62If the tarball was made with Meson:
63  $ meson --prefix=/some_directory --libdir=lib your_builddir .
64
65Then
66  $ cd your_builddir
67  $ ninja
68  $ ninja install
69You can run the tests like so:
70  $ ninja test
71
72### Building from a tarball with Autotools
73
74If the tarball was made with Autotools:
75  $ ./configure --prefix=/some_directory
76If the tarball was made with Meson, you must enable maintainer-mode:
77  $ ./autogen.sh --prefix=/some_directory
78
79Then
80  $ make
81  $ make install
82You can build the examples and tests, and run the tests, like so:
83  $ make check
84
85## Building from git
86
87Building from git can be difficult so you should prefer building from
88a release tarball unless you need to work on the libsigc++ code itself.
89
90jhbuild can be a good help
91  https://gitlab.gnome.org/GNOME/jhbuild
92  https://wiki.gnome.org/Projects/Jhbuild
93
94### Building from git with Meson
95
96Maintainer-mode is enabled by default when you build from a git clone.
97
98Don't call the builddir 'build'. There is a directory called 'build' with
99files used by Autotools.
100
101  $ meson --prefix=/some_directory --libdir=lib your_builddir .
102  $ cd your_builddir
103  $ ninja
104  $ ninja install
105You can run the tests like so:
106  $ ninja test
107You can create a tarball like so:
108  $ ninja dist
109
110### Building from git with Autotools
111
112  $ ./autogen.sh --prefix=/some_directory
113  $ make
114  $ make install
115You can build the examples and tests, and run the tests, like so:
116  $ make check
117You can create a tarball like so:
118  $ make distcheck
119or
120  $ make dist
121