- Update from version 17.2 to 18.1
- Update of rootfile
- Changelog
18.1
Major improvements to the Windows native target:
Non-stop mode is now supported (requires Windows 10 or later).
Scheduler-locking (“set scheduler-locking on”) now works.
Native Thread Local Storage (TLS) variables are now supported.
On the Windows Terminal console, GDB now supports true-color 24-bit colors, and,
when the output codepage is 65001, emoji styling and UTF-8 text in general
(the host charset is then set to UTF-8 automatically).
File names are now consistently shown with forward slashes, instead of a mix of
slash styles, e.g. “C:/proj/src/main.c” instead of “C:/proj/src.c”. This
affects all interpreters (CLI, TUI, GDB/MI, DAP) and everywhere GDB shows a
file or directory name.
GDB now adds all type symbols to the .gdb_index section, fixing cases where GDB could
fail to find a type when relying on the index. Existing indexes should be
regenerated.
Improved handling of inferior arguments:
“set args”, “run”, “start” and “starti” now accept arguments containing a newline
character, within a quoted argument.
New –no-escape-args command line option for GDB, an alternative to –args that
does not escape special shell characters within the arguments. gdbserver
accepts a –no-escape-args flag with the same effect on the inferior arguments.
When connecting to a remote server that supports the new qExecAndArgs packet,
GDB copies the argument string from the server into its own ‘args’ setting,
so that the arguments are visible with “show args” and reused by subsequent runs.
When connected to an extended-remote target, GDB can now set the ‘remote exec-file’
automatically, using the current executable, if the remote was not started
with an executable and the user did not set one explicitly.
The add-inferior, clone-inferior and MI -add-inferior commands now warn and create
the new inferior without a connection when the current connection cannot be
shared (e.g. core files, or the Windows native target). Sharing these
previously tended to crash GDB.
“info locals” now shows a “shadowed” annotation and location information for
variables that shadow, or are shadowed by, others.
Support for the Floating Point Mode Register (FPMR) on AArch64.
GDB now supports libipt v2.2 events originating from Event Tracing (“set record
btrace pt event-tracing on”) on a FRED-enabled system, and from Trigger Tracing.
GDB now supports arbitrary (non-standard) baud rates for serial connections on
systems whose libc accepts them through cfsetispeed/cfsetospeed, such as
glibc 2.42 and later, and GNU Hurd.
“info inferiors” now shows the core file loaded in an inferior, if any.
New “essential” help command class, listing what we believe is close to a minimal set
of commands for a new GDB user.
New commands:
“set/show/unset local-environment”, analogs of the “environment” commands,
affecting the environment of subprocesses started by GDB itself, such as
those started by “shell” and “pipe”.
“save history”, “save skip” and “save user”, to save the command history, the
current skips, and the user-defined commands to a file.
“info proc environ”, to print the initial environment variables of a process
(Linux only).
“set/show progress-bars enabled”, to disable the progress bars GDB shows for long
operations, such as while debuginfod downloads content.
“delete skip”, “enable skip” and “disable skip”, new aliases for “skip delete”,
“skip enable” and “skip disable”.
“set/show debug gnu-ifunc” and “set/show debug ctf”.
New targets:
GNU/Linux/MicroBlaze (gdbserver) microblazeel-*linux*
AArch64 MinGW aarch64-*-mingw*
Python API enhancements:
New gdb.Corefile class, representing a loaded core file, with the new
Inferior.corefile attribute, plus the new gdb.CorefileMappedFile and
gdb.CorefileMappedFileRegion types describing the files mapped when the core
file was created.
New gdb.Style class, gdb.StyleParameterSet class, and gdb.INTENSITY_* constants,
for representing styles and creating custom “set/show style NAME …”
parameters. gdb.write() takes a new optional ‘style’ argument.
New gdb.events.selected_context event registry, emitting a SelectedContextEvent
whenever the user changes the selected inferior, thread or frame.
New gdb.events.corefile_changed event registry, emitting a CorefileChangedEvent
whenever the core file of an inferior changes.
New gdb.Symtab.source_lines method, returning the source lines of the file
associated with a symtab.
The Architecture.disassemble method accepts a new ‘styling’ argument, to get ANSI
escape sequences in the assembly strings.
New gdb.Block.ranges attribute, listing the ranges of a block.
Debugger Adapter Protocol changes:
Unhandled Ada exceptions can now be caught using the “unhandled” exception filter.
The launch and attach requests accept a new adaSourceCharset parameter, and the
attach request accepts a new coreFile parameter.
Constants are now returned in scopes.
Remote protocol changes:
New qExecAndArgs packet, returning the executable file name and argument string
the server was started with.
New single-inf-arg qSupported feature, letting GDB send the inferior arguments as
a single string in the vRun packet.
Incompatible changes:
Support for the stabs and mdebug debug information formats, and for the dbx
binary file format, has been removed.
Support for the Common Trace Format (CTF) has been removed: trace information is
now saved exclusively in GDB’s own “tfile” format, the “target ctf” command
is gone, and “tsave” and MI “-trace-save” no longer accept the “-ctf” flag.
The –with-babeltrace configure option has been removed as well.
Support for .gdb_index sections older than version 7 has been removed.
Support for DWP (DWARF Package File) version 1 has been removed.
The format of execution records saved by “record save” has changed; previous
formats are no longer supported.
Guile 2.2 is now the minimum supported Guile version, and the deprecated memory
port buffer size procedures have been removed; use ‘setvbuf’ instead.
The “maint check psymtabs”, “maint info psymtabs” and “maint print psymbols”
commands have been removed, as GDB no longer uses partial symbol tables
internally.
“maintenance info program-spaces” no longer displays the core file name; use
“info inferiors” instead.
GDB no longer supports AIX 7.1; the minimum supported version is now AIX 7.2 TL5,
and only DWARF debug information is supported on AIX going forward.
The s390 32-bit target (s390-*) is deprecated and planned for removal in a future
release, along with the elf32-s390 target format. configure now errors out
for this target, which can be overridden with –enable-obsolete. The s390
64-bit target (s390x-*) remains supported.
Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
---
config/rootfiles/common/gdb | 2 +-
lfs/gdb | 19 +++++++++----------
2 files changed, 10 insertions(+), 11 deletions(-)
@@ -80,6 +80,7 @@
#usr/share/gdb/syscalls/netbsd.xml
#usr/share/gdb/syscalls/ppc-linux.xml
#usr/share/gdb/syscalls/ppc64-linux.xml
+#usr/share/gdb/syscalls/riscv-linux.xml
#usr/share/gdb/syscalls/s390-linux.xml
#usr/share/gdb/syscalls/s390x-linux.xml
#usr/share/gdb/syscalls/sparc-linux.xml
@@ -98,7 +99,6 @@
#usr/share/info/gdb.info-7
#usr/share/info/gdb.info-8
#usr/share/info/gdb.info-9
-#usr/share/info/stabs.info
#usr/share/man/man1/gcore.1
#usr/share/man/man1/gdb-add-index.1
#usr/share/man/man1/gdb.1
@@ -24,7 +24,7 @@
include Config
-VER = 17.2
+VER = 18.1
THISAPP = gdb-$(VER)
DL_FILE = $(THISAPP).tar.xz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_BLAKE2 = 3c6c893e1d26d534918fb07b64f2e5b368825a64f888171f07443c5ebed456e7c26ed223d78bf304ee5f145c6f3c08c790c993c7b955d168e2fd8e656c6e1e9a
+$(DL_FILE)_BLAKE2 = 9cf68cd96ecd1b2f51235f80f30d4024eadea7e11fe8af1cde0103176c622b770d79fde2205739fad8fe314ffecddd450626976e1897b04899027d0d88f30e1d
install : $(TARGET)
@@ -71,14 +71,13 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
cd $(DIR_APP) && mkdir -pv build
- cd $(DIR_APP)/build && \
- ../configure \
- --prefix=/usr \
- --sysconfdir=/etc \
- --disable-nls \
- --enable-tui \
- --with-system-readline \
- --with-python=/usr/bin/python3
+ cd $(DIR_APP)/build && ../configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --disable-nls \
+ --enable-tui \
+ --with-system-readline \
+ --with-python=/usr/bin/python3
cd $(DIR_APP)/build && make $(MAKETUNING)
cd $(DIR_APP)/build && make install
@rm -rf $(DIR_APP)