pkgsrc/devel/gdb/Makefile
maya 4277daa9f2 gdb: update to 8.1.
local changes: use plist var for gcore.
XXX don't install gcore.1 that doesn't appear to be installed but exists
remove merged patches.

GDB 8.1 includes the following changes and enhancements:

  * Breakpoints on C++ functions are now set on all scopes by default
    ("wild" matching);

  * Support for inserting breakpoints on functions marked with C++ ABI tags;

  * Target floating-point arithmetic emulation during expression evaluation
    (requires MPFR 3.1 or later);

  * Various Python Scripting enhancements;

  * Improved Rust support; in particular, Trait objects can now be inspected
    when debugging Rust code;

  * GDB no longer makes assumptions about the type of symbols without
    debugging information to avoid producing erroneous and often confusing
    results;

  * The 'enable' and 'disable' commands now accept a range of breakpoint
    locations;

  * New 'starti' command to start the program at the first instruction;

  * New 'rbreak' command to insert a number of breakpoints via a regular
    expression pattern (requires Python);

  * The 'ptype' command now supports printing the offset and size of
    the fields in a struct;

  * The 'gcore' command now supports dumping all the memory mappings
    ('-a' command-line option);

  * New shortcuts for TUI Single-Key mode: 'i' for stepi, and 'o' for nexti;

  * GDBserver enhancements:
    ** Support for transmitting environment variables to GDBserver;
    ** Support for starting inferior processes with a specified initial
       working directory;
    ** On Unix systems, support for globbing expansion and variable
       substitution of inferior command-line arguments;

  * Various completion enhancements;

  * The command used to compile and inject code with the 'compile' command
    is now configurable;

  * New '--readnever' command-line option to speed the GDB startup when
    debugging information is not needed;

  * Support for the following new native configurations:
    ** FreeBSD/aarch64 (aarch64*-*-freebsd*);
    ** FreeBSD/arm (arm*-*-freebsd*);

  * Support for the following new targets:
    ** FreeBSD/aarch64 (aarch64*-*-freebsd*);
    ** FreeBSD/arm (arm*-*-freebsd*);
    ** OpenRISC ELF (or1k*-*-elf)

  * Removed support for the following targets and native configurations:
    ** Solaris2/x86 (i?86-*-solaris2.[0-9]);
    ** Solaris2/sparc (sparc*-*-solaris2.[0-9]);

For a complete list and more details on each item, please see the gdb/NEWS
file, available at:
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=blob_plain;f=gdb/NEWS;hb=gdb-8.1-release
2018-01-31 20:33:11 +00:00

96 lines
2.9 KiB
Makefile

# $NetBSD: Makefile,v 1.59 2018/01/31 20:33:11 maya Exp $
DISTNAME= gdb-8.1
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_GNU:=gdb/}
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= http://www.gnu.org/software/gdb/gdb.html
COMMENT= Symbolic debugger for multiple language frontends
LICENSE= gnu-gpl-v3
USE_LANGUAGES= c c++11
BROKEN_GETTEXT_DETECTION= yes
GNU_CONFIGURE= YES
USE_PKGLOCALEDIR= YES
USE_LIBTOOL= YES
USE_TOOLS+= gmake msgfmt makeinfo perl:build
REPLACE_LOCALEDIR_PATTERNS+= Make-in
INSTALL_TARGET= install install-info
TEST_TARGET= check
INFO_FILES= yes
CONFIGURE_ENV+= CONFIG_LDFLAGS=${LDFLAGS:M*:Q}
# In gdb/configure, depcomp is parsed with sed.
SUBST_CLASSES+= fix-depcomp
SUBST_STAGE.fix-depcomp+= pre-configure
SUBST_MESSAGE.fix-depcomp+= Read depcomp directly
SUBST_FILES.fix-depcomp+= gdb/configure
SUBST_SED.fix-depcomp+= -e 's,< ./depcomp,${_OVERRIDE_PATH.depcomp},'
CONFIGURE_ARGS+= --disable-binutils
CONFIGURE_ARGS+= --disable-gprof
CONFIGURE_ARGS+= --disable-gold
CONFIGURE_ARGS+= --disable-gas
CONFIGURE_ARGS+= --disable-ld
AUTO_MKDIRS= yes
.include "options.mk"
.include "../../mk/bsd.prefs.mk"
PLIST_VARS+= gcore
.if (${OPSYS} == "SunOS" || ${OPSYS} == "NetBSD" \
|| ${OPSYS} == "Linux" || ${OPSYS} == "FreeBSD")
PLIST.gcore= yes
.endif
.if ${OPSYS} == "SunOS"
# Work around a bug in gdb's configure
CONFIGURE_ENV+= ac_cv_header_curses_h=yes
.elif ${OPSYS} == "NetBSD"
.include "../../mk/curses.buildlink3.mk"
CONFIGURE_ARGS+= -with-curses
CONFIGURE_ENV+= gdb_cv_var_elf=yes
MAKE_ENV+= gdb_cv_var_elf=yes
CONFIGURE_ENV+= gdb_cv_struct_lwp=yes
MAKE_ENV+= gdb_cv_struct_lwp=yes
CONFIGURE_ARGS+= --with-separate-debug-dir=/usr/libdata/debug
.elif ${OPSYS} == "DragonFly"
TARGET_STR= ${MACHINE_ARCH}--dragonfly
BUILD_DEFS+= ${TARGET_STR}
## Remove "-pc" string, without this, getting following message:
## *** Gdb does not support native target i386-pc-dragonfly"
CONFIGURE_ARGS+= --target=${TARGET_STR}
TEST_ENV= DEJAGNU=${WRKDIR}/../files/dragonfly-default.exp
.endif
post-install:
${RM} -f ${DESTDIR}/${PREFIX}/lib/charset.alias
.if ${OPSYS} == "DragonFly"
# Following are installed by binutils
#. for f in ansidecl.h bfdlink.h dis-asm.h symcat.h
# (cd ${WRKSRC}/include; ${INSTALL_DATA} ${f} ${DESTDIR}${PREFIX}/include)
#. endfor
(cd ${DESTDIR}${PREFIX}/bin; ${LN} ${TARGET_STR}-gdb gdb)
(cd ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1; ${LN} ${TARGET_STR}-gdb.1 gdb.1)
.endif
#
# PATH of libiberty.a differs between clang and gcc: (and conflicts to other toolchain)
# Rename to avoid conflict to native and other toolchain
# and clang differs its path so, (the same as avr-binutils).
(cd ${DESTDIR}${PREFIX}; \
for d in ${MACHINE_ARCH}/libiberty.a libiberty.a; \
do if [ -f lib/$$d ]; then \
${MV} lib/$$d lib/gdb/libiberty.a; \
break; \
fi; \
done; )
.include "../../mk/termcap.buildlink3.mk"
.include "../../devel/gettext-lib/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"