Alberto Bertogli [Fri, 14 Nov 2008 19:02:55 +0000 (17:02 -0200)]
Add a new valgrind suppression
To cover from this boost-related valgrind warning we can do nothing about
(and seems relatively harmless):
==25072== Syscall param sigaltstack(ss) points to uninitialised byte(s)
==25072== at 0x585ABF7: sigaltstack (in /lib/libc-2.8.90.so)
==25072== by 0x4E44D35: boost::detail::signal_handler::~signal_handler() (in /usr/lib/libboost_unit_test_framework.so.1.35.0)
==25072== by 0x4E45560: boost::execution_monitor::catch_signals(boost::unit_test::callback0<int> const&) (in /usr/lib/libboost_unit_test_framework.so.1.35.0)
==25072== by 0x4E4564B: boost::execution_monitor::execute(boost::unit_test::callback0<int> const&) (in /usr/lib/libboost_unit_test_framework.so.1.35.0)
==25072== by 0x4E4C052: boost::unit_test::framework::run(unsigned long, bool) (in /usr/lib/libboost_unit_test_framework.so.1.35.0)
==25072== by 0x4E5B023: boost::unit_test::unit_test_main(bool (*)(), int, char**) (in /usr/lib/libboost_unit_test_framework.so.1.35.0)
==25072== by 0x41AFC3: main (in /home/alb/devel/integratech/switchit/mios/posixx/test/test_suite)
==25072== Address 0x7feffea50 is on thread 1's stack
==25072==
Add posix::basic_buffer template and posix::buffer class
posixx::basic_buffer provides easy to use, STL-container-lke and
exception-safe class to manipulate buffers. It's a pseudo-static array
(you can resize it but you can't append or insert/remove arbitrary
elements). It's parametrized to support different kinds of allocators (not
in the STL-sense, it uses a realloc-like function).
posix::buffer is just a posix::basic_buffer< &realloc >.
Use -I instead of -isystem when including our own headers for testing
Use -isystem makes GCC emulate that our own headers are system headers,
giving them the lowest priority when it search for a particular header
included with <>. This could be problematic in certain building
environments.
Avoid rebuilding of doc, (mem)test and install targets
This patch improves the Makefiles to avoid unnecessary rebuilding of some
targets, like doc/test/memtest/install, which only need to be "rebuilt"
when the sources has changed.
This is implemented using empty target files to record events, as
described in the GNU make manual[1].
Improve handling of CFLAGS and LDFLAGS make variables
The Makefile now uses 3 flavors of C/LDFLAGS variables: LOCAL_*, LI_* and
the plain ones.
LOCAL_* are used for mandatory local flags, like -std=C++98 and such,
LI_* are reserved for special "local-install" flags (set by the
super-repository). Plain C/LDFLAGS can be set by the user at make-time as
usual.