| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
In a git worktree, .git is a regular file.
See https://gitlab.gnome.org/GNOME/pangomm/merge_requests/8
|
|
|
|
| |
Pointed out by Chun-wei Fan in PR #51.
|
|
|
|
|
|
|
| |
This is to reduce the likelihood of accidently mixing DLLs that are
linked with different CRTs in the build tree.
Also clean up rules a bit.
|
|
|
|
|
|
|
|
| |
This adds inference rules to the NMake Makefiles to also look for the
sources that are in untracked/, and to ensure that the generated MSVC
build files (sigc++-config.h and sigc.rc) are copied into
untracked/MSVC_NMake, so that they can be built properly even with
NMake.
|
|
|
|
|
| |
This ensures that on Windows, the version info resources are indeed
linked into the libsigc++ DLL.
|
|
|
|
|
|
|
|
|
| |
It appears that Meson did not construct the paths properly for
shutil.copy2() when building in a build directory that is a
subdirectory of the sources, when using meson.current_build_dir(),
possibly due how path separators are handled.
Fix this by constructing the paths using project_build_root / 'MSVC_NMake'.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since we are assured that we are using Python 3.x on when we run Meson, we
do not really need to look for the 'python3' executable, but we could
just use whatever Python interpreter that is used to run Meson.
This will fix situations where it is commonly the case where we may have
multiple Python 3.x installations on Windows (www.python.org, and those
from Cygwin/mingw-w64), so that Meson really uses one and only one
Python installation to run everything that is Python-related, which will
thus fix '[meson|ninja] dist' on Visual Studio builds.
|
|
|
|
|
|
|
|
|
| |
It appears that if one uses the m4 that is given by mingw-w64 (and
perhaps Cygwin), that m4 is enough to generate the sources and headers
that we need for the build.
So, remove the lines saying building directly from GIT checkouts are not
supported.
|
|
|
|
|
|
|
|
| |
Make sure the correct build macros are specified when building
libsigc++, so that:
-The symbols are properly exported
-We do not break builds as a result of unecesary warnings
|
|
|
|
|
|
|
|
|
| |
libsigc++ requires a C++-11-compliant compiler, so we can just make the
build look for Visual Studio 2015 instead of Visual Studio 2017 15.7.
Visual Studio 2013 also works, but since it will spew out loads of
warnings and the latest C++-11 version of glibmm is not buildable with
Visual Studio 2013, let's just require Visual Studio 2015.
|
|
|
|
| |
libsigc++-2.0 can be built with either Autotools or Meson.
|
|
|
|
| |
Fix errors reported by "xmllint --postvalid".
|
|
|
|
|
|
| |
clang++ complains if private members are unused, so make them protected.
error: private field 'bar_' is not used [-Werror,-Wunused-private-field]
|
| |
|
|
|
|
|
| |
* configure.ac: This is what ftp.gnome.org wants, so this avoids
it doing any repackaging. This is what gtkmm does.
|
| |
|
|
|
|
| |
To avoid "error: catching polymorphic type ‘class std::range_error’ by value"
|
| |
|
|
|
|
|
| |
Let people know how Visual Studio builds can be done and the options
that can be used for the builds.
|
|
|
|
|
|
|
| |
The NMake Makefiles superseded them, so let's just remove them.
This will make builds with later Visual Studio versions simpler, and
will make maintaining the Visual Studio build files easier.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds a set of NMake Makefiles that can be used to build
libsigc++-2.10.x (and the later C++11 versions of libsigc++) with Visual
Studio 2013 or later. Building the example, the tests and the
benchmarking programs are supported in addition to building the main
libsigc++ DLL.
Note that for the C++-11 releases, we name the DLLs and LIBs as
sigc-vc140-2_0.[dll|lib] or sigc-vc140-d-2_0.[dll|lib] for Visual Studio
2015 and 2017 builds as these builds link to the msvcp140[d].dll and
vcruntime140[d].dll C/C++ runtime DLLs.
This set of NMake Makefiles are now dist'ed in place of the Visual
Studio 2013 project files.
|
|
|
|
|
|
| |
This is for enabling the upcoming NMake Makefiles to use this file
as well, in addition to the autotools build files, to build the
libsigc++ DLL.
|
|
|
|
|
| |
This is to prepare for the transition for the Visual Studio build
files to NMake Makefiles.
|
|
|
|
|
|
|
|
|
|
| |
gcc8 -Wextra prints a warning when a single reinterpret_cast is used for
conversion between different types of function pointers. The previous fix
with a union in sigc::internal::bitwise_equivalent_cast<>() is not standard
C++. Rename the function to function_pointer_cast<>(), and use two
reinterpret_casts as recommended in gcc's documentation.
Fixes #8
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Otherwise indirect calls from glibmm, with its own bitwise_equivalent_cast(),
can be ambiguous due to ADL (argument-dependent lookup).
|
|
|
|
|
|
|
|
|
| |
gcc8 -Wextra prints a warning when reinterpret_cast is used for conversion
between different types of function pointers. Avoid that by adding
sigc::internal::bitwise_equivalent_cast<>() with a union with members of
the two types of function pointers.
Fixes #1
|
|
|
|
|
|
| |
This reverts commit c6262e0a477b35cd9a4a00c34f3f0a44dcd07210.
This can be done in a better way by keeping the union in a template function.
|
|
|
|
|
|
|
|
| |
gcc8 -Wextra prints a warning when reinterpret_cast is used for conversion
between different types of function pointers. Avoid that by instead using
a union with members of the two types of function pointers.
Fixes #1
|
|
|
|
|
|
| |
There is no known ABI-preserving fix for a memory leak, if a signal
is deleted during emission. Describe a workaround in the documentation.
Bug 167714
|
|
|
|
|
|
| |
set_parent() must always store the supplied parent pointer and cleanup
function pointer, or else there may be a memory leak. The pointers are
stored in slot_rep. Bug 167714
|
|
|
|
| |
Call it both during signal emission and otherwise. Bug 784550
|
|
|
|
|
|
| |
If signal_impl::clear() is called during signal emission, don't call
slots_.clear(). Let signal_impl::sweep() erase all slots after the signal
emission. Bug 784550
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, when calling ./configure, the possible outcomes of the
enable_benchmark variable are:
./configure -> ""
./configure --enable-benchmark -> "yes"
./configure --enable-benchmark=yes -> "yes"
./configure --enable-benchmark=no -> "yes"
./configure --enable-benchmark=hello -> "yes"
./configure --disable-benchmark -> "yes"
With this commit, those values become
./configure -> ""
./configure --enable-benchmark -> "yes"
./configure --enable-benchmark=yes -> "yes"
./configure --enable-benchmark=no -> "no"
./configure --enable-benchmark=hello -> "hello"
./configure --disable-benchmark -> "no"
Note that enable_benchmark is currently only being checked for
being "yes" or not.
Bug #774732
|
| |
|
|
|
|
|
|
|
|
|
| |
* configure.ac: Pass yes to AM_SILENT_RULES, thus enabling silent builds.
Replace MM_AX_CXX_COMPILE_STDCXX_11 by MM_AX_CXX_COMPILE_STDCXX (not necessary
for silent builds).
* docs/reference/Doxyfile.in: Set QUIET=YES.
Update for doxygen 1.8.11 (not necessary for silent builds).
Bug #768797
|
| |
|
|
|
|
|
|
|
|
|
| |
Because we don't use it in any tests or examples and probably
nobody uses it. It has already been removed from libsigc++-3.0
(which installs in parallel):
https://git.gnome.org/browse/libsigcplusplus/commit/?id=fb5d1a55ddd843a1ded635b0ebce4e5b5301fc36
Please tell us if you really need to use this.
|
|
|
|
|
|
|
|
|
| |
Because we don't use it in any tests or examples and probably nobody
uses it. It has already been removed from libsigc++-3.0 (which installs
in parallel):
https://git.gnome.org/browse/libsigcplusplus/commit/?id=1a4eee7e8ded2acea94e27af5c94e37dcd9cbb13
Please tell us if you really need to use this.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* sigc++/functors/macros/slot.h.m4: Fix the use of operator() in the
variadic templates usage in the base slot_call as the syntax differs
between compilers for this call. This fixes the build of the tests and
any items that makes use of sigc++/functors/slot.h on non-GCC,
specifically Visual Studio 2013 and 2015.
https://bugzilla.gnome.org/show_bug.cgi?id=767777
|
|
|
|
|
| |
Remove the sources from the projects that have been removed from the
source tree lately.
|
| |
|
|
|
|
| |
And optionally build it, when --enable-benchmark is passed to configure.
|
| |
|
| |
|
| |
|
| |
|