History log of /haiku/src/kits/debugger/Jamfile
Revision Date Author Comments
# 49506076 19-Jul-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

Add a features.h to auto enable _DEFAULT_SOURCE

Unless __STRICT_ANSI__ is defined (as it is when running the compiler in
--std=c89 or --std=c99, but not when running it without any specific
args), we can enable these by default and behave like most other
systems. I don't know why no one has done this yet despite suggesting it
multiple times and people prefer to #define _BSD_SOURCE manually
everywhere.

Remove all places in our Jamfiles and sources where it had been defined.
_DEFAULT_SOURCE is now enabled by default for all sources of Haiku, since we
let the compiler use GNU extensions (no strict C standard specified on
command line)

Use _DEFAULT_SOURCE as the define name to match current versions of
glibc. Enable it if _BSD_SOURCE is #defined in compiler flags, for
backward compatibility.

Change-Id: I6db04da5f6db437723cdfba3478f5094a69d7727
Reviewed-on: https://review.haiku-os.org/c/1633
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>


# 692fe555 27-Nov-2016 Rene Gollent <rene@gollent.com>

libdebugger: Add initial version of network interface.

NetworkTargetHostInterface{Info}:
- Barebones classes for implementing a target host interface over TCP.


# b65adbdf 09-Sep-2016 Rene Gollent <rene@gollent.com>

Debugger: Fix #12940.

- Add new interface TeamFunctionSourceInformation. Currently this
exposes a single function allowing one to query for the currently
active source code given a FunctionDebugInfo instance.
- Implement TeamFunctionSourceInformation on TeamDebugInfo.
- Pass TeamFunctionSourceInformation to Dwarf{Team,Image}DebugInfo.
In turn, make use of it in DwarfImageDebugInfo::GetStatement() in
order to determine whether to return the corresponding assembly
or source statement.

With this piece of information, the debugger is now correctly able to
determine that the user is currently looking at disassembly despite debug
info being available, and consequently adjust its stepping behavior based on
that. Previously, the source code statement was always used, leading to it
not being possible to single step assembly lines in such a circumstance
without manually using run to cursor.

Other related cleanups:
- TeamDebugInfo now inherits BReferenceable directly, rather than relying on
indirectly inheriting it from TeamTypeInformation.
- Remove BReferenceable from TeamTypeInformation. The latter is only an
interface anyways, and inheriting that base class from multiple locations
was causing GCC5 trouble when resolving BReference<TeamDebugInfo>, even
when virtual inheritance was used.


# 17954f2e 22-Jul-2016 Rene Gollent <rene@gollent.com>

libdebugger: Initial work for remote support.

- Introduce base classes RemoteDebug{Request,Response} and the first set of
implementing subclasses for the various types of debug requests. These
encapsulate the information needed to make a request to the target debugger
interface, as well as a means to flatten/unflatten to a BMessage. These will
be used to marshal the relevant information for transmission across the
eventual transport interface. Not used anywhere yet since there still remain
some requests and responses to implement, among other things.


# b02ee147 04-Jul-2016 Rene Gollent <rene@gollent.com>

libdebugger: Reorganize debugger_interface subdir.

- Split into separate subdirectories for each interface type, as is done in
the target_host_interface subdir. Preparation for the remote interfaces,
which will have quite a few more components than the existing local ones.


# 0b20cac7 05-Jun-2016 Rene Gollent <rene@gollent.com>

libdebugger: Remove unnecessary header dependency.

- The library does not depend on libedit/ncurses, these were contained
entirely within the application level code.


# 9968f343 05-Jun-2016 Rene Gollent <rene@gollent.com>

Debugger: Adjust header order.

- Ensure that the debugger lib's headers are included before those of libshared
to minimize conflicts between the respective Thread classes. Fixes gcc2 build.

Thanks to Jerome for reporting.


# fce4895d 29-May-2016 Rene Gollent <rene@gollent.com>

Debugger: Split into core library and application.

- Add subfolder src/kits/debugger which contains the debugger's core
functionality and lower layers. Correspondingly add headers/private/debugger
for shared headers to be used by clients such as the Debugger application
and eventual remote_debug_server. Adjust various files to account for
differences as a result of the split and moves.
- Add libdebugger.so to minimal Jamfile.