diff options
Diffstat (limited to 'devel/gdb/Makefile')
-rw-r--r-- | devel/gdb/Makefile | 125 |
1 files changed, 53 insertions, 72 deletions
diff --git a/devel/gdb/Makefile b/devel/gdb/Makefile index 34d6cb9dc681..029f36d86653 100644 --- a/devel/gdb/Makefile +++ b/devel/gdb/Makefile @@ -1,22 +1,20 @@ -# Created by: Steven Kreuzer <skreuzer@FreeBSD.org> - PORTNAME= gdb -DISTVERSION= 12.1 -PORTREVISION= 0 +DISTVERSION= 14.1 +PORTREVISION= 2 CATEGORIES= devel MASTER_SITES= GNU MAINTAINER= pizzamig@FreeBSD.org COMMENT= GNU Project Debugger +WWW= https://www.gnu.org/software/gdb/ LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/COPYING3 -# untested on sparc64, might work -NOT_FOR_ARCHS= sparc64 - -LIB_DEPENDS= libgmp.so:math/gmp \ - libmpfr.so:math/mpfr +LIB_DEPENDS= libexpat.so:textproc/expat2 \ + libgmp.so:math/gmp \ + libmpfr.so:math/mpfr \ + libzstd.so:archivers/zstd TEST_DEPENDS= runtest:misc/dejagnu USES= compiler:c++11-lang cpe gmake libtool makeinfo pkgconfig tar:xz @@ -27,54 +25,26 @@ TEST_TARGET= check CPE_VENDOR= gnu GNU_CONFIGURE= yes CONFIGURE_ENV= CONFIGURED_M4=m4 CONFIGURED_BISON=byacc -CONFIGURE_ARGS= --program-suffix=${DISTVERSION:S/.//g} \ +CONFIGURE_ARGS= --program-suffix=${VER} \ + --disable-sim \ --enable-targets=all --enable-64-bit-bfd \ --with-separate-debug-dir=/usr/lib/debug \ + --with-additional-debug-dirs=${LOCALBASE}/lib/debug \ ${ICONV_CONFIGURE_ARG} \ - --with-expat=yes --with-libexpat-prefix=${LOCALBASE} \ - --without-libunwind-ia64 --with-system-zlib + --without-libunwind-ia64 CONFIGURE_OUTSOURCE= yes CFLAGS:= ${CFLAGS:C/ +$//} # blanks at EOL creep in sometimes CFLAGS+= -DRL_NO_COMPAT -EXCLUDE= dejagnu expect sim texinfo intl +EXCLUDE= dejagnu expect texinfo intl EXTRACT_AFTER_ARGS= ${EXCLUDE:S/^/--exclude /} -EXTRA_PATCHES= ${FILESDIR}/commit-711b0b6698f \ - ${FILESDIR}/commit-922c2fc18e4 \ - ${FILESDIR}/commit-b1babce7c31 \ - ${FILESDIR}/commit-a49ce729c80 \ - ${FILESDIR}/commit-c77282d8ba9 \ - ${FILESDIR}/commit-041a4212d37 \ - ${FILESDIR}/commit-4bd817e71ee \ - ${FILESDIR}/commit-1570c37c340 \ - ${FILESDIR}/commit-6719bc690e2 \ - ${FILESDIR}/commit-983b1119bc3 \ - ${FILESDIR}/commit-a3627b54280 \ - ${FILESDIR}/commit-065a00b3a46 \ - ${FILESDIR}/commit-e330d4c033e \ - ${FILESDIR}/commit-a171378aa47 \ - ${FILESDIR}/commit-b5c2367c3ac \ - ${FILESDIR}/commit-f3215e1526d \ - ${FILESDIR}/commit-c13566fdd57 \ - ${FILESDIR}/commit-3181aed81c9 \ - ${FILESDIR}/commit-8e6afe4013f \ - ${FILESDIR}/commit-40c23d88038 \ - ${FILESDIR}/commit-92d48a1e4ea \ - ${FILESDIR}/commit-099fbce0acc \ - ${FILESDIR}/commit-2e686a74dc4 \ - ${FILESDIR}/commit-684943d213b \ - ${FILESDIR}/commit-414d5848bb2 \ - ${FILESDIR}/commit-0a765c1a8e9 \ - ${FILESDIR}/commit-f9fbb7636a5 \ - ${FILESDIR}/commit-b7fe5463cf0 \ - ${FILESDIR}/commit-b2fdd31b03e -LIB_DEPENDS+= libexpat.so:textproc/expat2 VER= ${DISTVERSION:S/.//g} PLIST_SUB= VER=${VER} -OPTIONS_DEFINE= DEBUG GDB_LINK GUILE KGDB NLS PYTHON SOURCE_HIGHLIGHT TUI - -OPTIONS_DEFAULT= GDB_LINK KGDB NLS PYTHON SOURCE_HIGHLIGHT TUI +OPTIONS_DEFINE= DEBUGINFOD GDB_LINK GUILE KGDB NLS PYTHON \ + SOURCE_HIGHLIGHT TUI XXHASH +OPTIONS_DEFAULT= GDB_LINK KGDB NLS PYTHON SOURCE_HIGHLIGHT \ + TUI XXHASH OPTIONS_DEFAULT+= PORT_READLINE PORT_ICONV SYSTEM_ZLIB OPTIONS_SINGLE= READLINE ICONV ZLIB @@ -82,36 +52,42 @@ OPTIONS_SINGLE_READLINE= BUNDLED_READLINE PORT_READLINE OPTIONS_SINGLE_ICONV= PORT_ICONV SYSTEM_ICONV OPTIONS_SINGLE_ZLIB= BUNDLED_ZLIB SYSTEM_ZLIB +DEBUGINFOD_DESC= Build gdb with debuginfod server support GDB_LINK_DESC= Create ${PREFIX}/bin/gdb symlink -KGDB_DESC= Kernel Debugging Support +KGDB_DESC= Kernel debugging support BUNDLED_READLINE_DESC= from gdb distfile BUNDLED_ZLIB_DESC= from gdb distfile PORT_READLINE_DESC= from devel/readline port PORT_ICONV_DESC= use libiconv, with wider charset support -SOURCE_HIGHLIGHT_DESC= Source Code Styling +SOURCE_HIGHLIGHT_DESC= Syntax highlighting support SYSTEM_ICONV_DESC= use libc iconv, with no wchar support SYSTEM_ZLIB_DESC= use system zlib -TUI_DESC= Text User Interface enabled +TUI_DESC= Text User Interface support +XXHASH_DESC= Use xxHash for hashing (faster) OPTIONS_SUB= yes BUNDLED_READLINE_CONFIGURE_OFF= --with-system-readline -DEBUG_CFLAGS= -g -DEBUG_VARS= STRIP= -GUILE_CONFIGURE_WITH= guile -GUILE_LIB_DEPENDS= libguile-2.2.so:lang/guile2 +DEBUGINFOD_CONFIGURE_WITH= debuginfod +DEBUGINFOD_LIB_DEPENDS= libdebuginfod.so:devel/elfutils +GUILE_CONFIGURE_WITH= guile=guile-${GUILE_VER} +GUILE_USES= guile:2.2,3.0 NLS_USES= gettext-runtime PORT_READLINE_USES= readline PORT_ICONV_USES= iconv:wchar_t PYTHON_CONFIGURE_ON= --with-python=${PYTHON_CMD} PYTHON_CONFIGURE_OFF= --without-python -PYTHON_USES= python:3.6+ -SOURCE_HIGHLIGHT_WITH= source-highlight +PYTHON_USES= python +SOURCE_HIGHLIGHT_CONFIGURE_ENABLE= source-highlight SOURCE_HIGHLIGHT_LIB_DEPENDS= \ libsource-highlight.so:textproc/source-highlight SYSTEM_ICONV_USES= iconv -SYSTEM_ZLIB_WITH= system-zlib +SYSTEM_ZLIB_CONFIGURE_WITH= system-zlib TUI_CONFIGURE_ENABLE= tui +XXHASH_CONFIGURE_OFF= --with-xxhash=no +XXHASH_LIB_DEPENDS= libxxhash.so:devel/xxhash + +ALL_TARGET= all-gdb .include <bsd.port.pre.mk> @@ -164,40 +140,40 @@ do-install: ${INSTALL_PROGRAM} ${INSTALL_WRKSRC}/gdb/gdb \ ${STAGEDIR}${PREFIX}/bin/gdb${VER} ${INSTALL_MAN} ${WRKSRC}/gdb/doc/gdb.1 \ - ${STAGEDIR}${MAN1PREFIX}/man/man1/gdb${VER}.1 - (cd ${INSTALL_WRKSRC}/gdb/data-directory ; \ - ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} install-syscalls ) + ${STAGEDIR}${PREFIX}/share/man/man1/gdb${VER}.1 + (cd ${INSTALL_WRKSRC}/gdb/data-directory ; ${SETENVI} ${WRK_ENV} \ + ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} install-syscalls ) do-install-KGDB-on: ${INSTALL_PROGRAM} ${INSTALL_WRKSRC}/gdb/kgdb \ ${STAGEDIR}${PREFIX}/bin/kgdb${VER} ${INSTALL_MAN} ${FILESDIR}/kgdb/kgdb.1 \ - ${STAGEDIR}${MAN1PREFIX}/man/man1/kgdb${VER}.1 + ${STAGEDIR}${PREFIX}/share/man/man1/kgdb${VER}.1 do-install-TUI-on: ${LN} -sf gdb${VER} ${STAGEDIR}${PREFIX}/bin/gdbtui${VER} do-install-GDB_LINK-on: ${LN} -sf gdb${VER} ${STAGEDIR}${PREFIX}/bin/gdb - ${LN} -sf gdb${VER}.1 ${STAGEDIR}${MAN1PREFIX}/man/man1/gdb.1 + ${LN} -sf gdb${VER}.1 ${STAGEDIR}${PREFIX}/share/man/man1/gdb.1 .if ${PORT_OPTIONS:MKGDB} ${LN} -sf kgdb${VER} ${STAGEDIR}${PREFIX}/bin/kgdb - ${LN} -sf kgdb${VER}.1 ${STAGEDIR}${MAN1PREFIX}/man/man1/kgdb.1 + ${LN} -sf kgdb${VER}.1 ${STAGEDIR}${PREFIX}/share/man/man1/kgdb.1 .endif do-install-PYTHON-on: - (cd ${INSTALL_WRKSRC}/gdb ; \ - ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} install-python ) - (cd ${INSTALL_WRKSRC}/gdb/data-directory ; \ - ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} install-python ) + (cd ${INSTALL_WRKSRC}/gdb ; ${SETENVI} ${WRK_ENV} \ + ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} install-python ) + (cd ${INSTALL_WRKSRC}/gdb/data-directory ; ${SETENVI} ${WRK_ENV} \ + ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} install-python ) @(cd ${STAGEDIR}${PREFIX}/share/gdb/python && \ ${PYTHON_CMD} -m compileall .) . for f in gdb gdb/command gdb/function gdb/printer @(cd ${STAGEDIR}${PREFIX}/share/gdb/python/${f} ; ${CHMOD} 644 *.py* ) . endfor .if exists(/usr/lib/libc++.so.1) || exists(/lib/libc++.so.1) - @(cd ${WRKSRC_libcxx} ; \ - ${SETENV} ${MAKE_ENV} ${MAKE} ${MAKE_ARGS} \ + @(cd ${WRKSRC_libcxx} ; ${SETENVI} ${WRK_ENV} \ + ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} \ LIBCXX_DIR="${LIBCXX_DIR}" install ) @(cd ${STAGEDIR}${PREFIX}/share/gdb/auto-load/${LIBCXX_DIR} && \ ${PYTHON_CMD} -m compileall .) @@ -205,10 +181,15 @@ do-install-PYTHON-on: ${PYTHON_CMD} -m compileall .) .endif +# DO NOT try and add rules here to strip .go files, no matter how loudly +# testport / stage-qa shouts at you about it, because .go files (which are +# compiled bytecode) are not intended to be stripped and doing so causes +# breakage at run time. + do-install-GUILE-on: - (cd ${INSTALL_WRKSRC}/gdb ; \ - ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} install-guile ) - (cd ${INSTALL_WRKSRC}/gdb/data-directory ; \ - ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} install-guile ) + (cd ${INSTALL_WRKSRC}/gdb ; ${SETENVI} ${WRK_ENV} \ + ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} install-guile ) + (cd ${INSTALL_WRKSRC}/gdb/data-directory ; ${SETENVI} ${WRK_ENV} \ + ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} install-guile ) .include <bsd.port.post.mk> |