GDB: introduce gdb.py module

Test module provides utilities that eases the interaction with a GDB instance,
using the Machine Interface (MI) as a basis for communication.

Signed-off-by: Cleber Rosa <crosa@redhat.com>
gdbtest: introduce new test

This test fires a GDB instance, sends both valid and invalid commands,
runs a couple of binaries, setting breakpoints, catching signals and
generating core dumps.

Signed-off-by: Cleber Rosa <crosa@redhat.com>
avocado/plugins/gdb.py: plugin that enables GNU Debugger features

Such as the ability to run any number of applications inside the
debugger transparently.

Signed-off-by: Cleber Rosa <crosa@redhat.com>
job runtime: set the currently running test

So that other parts of the framework may act upon it if necessary.

Signed-off-by: Cleber Rosa <crosa@redhat.com>
avocado/utils/process.py: add transparent support for GDB

With current functionality being that it generates core dumps for
apps that receive such a signal.

Signed-off-by: Cleber Rosa <crosa@redhat.com>
segfaulttest: introduce new test

That is useful to test the behaviour of an application that is run
inside the GNU debugger.

Signed-off-by: Cleber Rosa <crosa@redhat.com>