Changeset View
Changeset View
Standalone View
Standalone View
devel/gdb/Makefile
Show All 26 Lines | |||||
EXCLUDE= dejagnu expect sim texinfo intl | EXCLUDE= dejagnu expect sim texinfo intl | ||||
EXTRACT_AFTER_ARGS= ${EXCLUDE:S/^/--exclude /} | EXTRACT_AFTER_ARGS= ${EXCLUDE:S/^/--exclude /} | ||||
VER= ${PORTVERSION:S/.//g} | VER= ${PORTVERSION:S/.//g} | ||||
PLIST_SUB= VER=${VER} | PLIST_SUB= VER=${VER} | ||||
ONLY_FOR_ARCHS= i386 amd64 powerpc powerpc64 # untested elsewhere, might work | ONLY_FOR_ARCHS= i386 amd64 powerpc powerpc64 # untested elsewhere, might work | ||||
OPTIONS_DEFINE= DEBUG EXPAT GDB_LINK GUILE PYTHON THREADS TUI | OPTIONS_DEFINE= DEBUG EXPAT GDB_LINK GUILE KGDB PYTHON THREADS TUI | ||||
OPTIONS_DEFAULT= GDB_LINK THREADS TUI PORT_READLINE | OPTIONS_DEFAULT= GDB_LINK THREADS TUI PORT_READLINE | ||||
emaste: Is there a reason not to include KGDB support by default? In a subsequent change perhaps? | |||||
Not Done Inline ActionsJust an abundance of caution. It will need to be the default before we can remove the base system gdb. Also, we should probably only remove the base system gdb for platforms that 1) support devel/gdb with kgdb, and 2) support lldb in the base system. However, once kgdb in here has had a bit more testing that will be true for at least amd64 and i386. Eventually we might dispense with requirement 2) if we require external toolchains for say, sparc64. jhb: Just an abundance of caution. It will need to be the default before we can remove the base… | |||||
OPTIONS_SINGLE= READLINE | OPTIONS_SINGLE= READLINE | ||||
OPTIONS_SINGLE_READLINE= BASE_READLINE BUNDLED_READLINE PORT_READLINE | OPTIONS_SINGLE_READLINE= BASE_READLINE BUNDLED_READLINE PORT_READLINE | ||||
GDB_LINK_DESC= Create ${PREFIX}/bin/gdb symlink | GDB_LINK_DESC= Create ${PREFIX}/bin/gdb symlink | ||||
KGDB_DESC= Kernel Debugging Support | |||||
BASE_READLINE_DESC= from base system (experimental) | BASE_READLINE_DESC= from base system (experimental) | ||||
BUNDLED_READLINE_DESC= from gdb distfile | BUNDLED_READLINE_DESC= from gdb distfile | ||||
PORT_READLINE_DESC= from devel/readline port | PORT_READLINE_DESC= from devel/readline port | ||||
TUI_DESC= Text User Interface enabled | TUI_DESC= Text User Interface enabled | ||||
OPTIONS_SUB= yes | OPTIONS_SUB= yes | ||||
BASE_READLINE_USES= readline | BASE_READLINE_USES= readline | ||||
Show All 20 Lines | |||||
.if ${ARCH} == "amd64" | .if ${ARCH} == "amd64" | ||||
CONFIGURE_TARGET= x86_64-portbld-freebsd${OSREL} | CONFIGURE_TARGET= x86_64-portbld-freebsd${OSREL} | ||||
.endif | .endif | ||||
post-patch: | post-patch: | ||||
@${REINPLACE_CMD} -e 's|$$| [GDB v${PORTVERSION} for FreeBSD]|' \ | @${REINPLACE_CMD} -e 's|$$| [GDB v${PORTVERSION} for FreeBSD]|' \ | ||||
${WRKSRC}/gdb/version.in | ${WRKSRC}/gdb/version.in | ||||
.if ${PORT_OPTIONS:MTHREADS} | |||||
post-patch-THREADS-on: | |||||
@${CP} ${FILESDIR}/fbsd-threads.c ${WRKSRC}/gdb/ | @${CP} ${FILESDIR}/fbsd-threads.c ${WRKSRC}/gdb/ | ||||
@${PATCH} ${PATCH_ARGS} < ${FILESDIR}/extrapatch-threads | @${PATCH} ${PATCH_ARGS} < ${FILESDIR}/extrapatch-threads | ||||
.endif | |||||
.if ${PORT_OPTIONS:MKGDB} | |||||
@${CP} -r ${FILESDIR}/kgdb/*.[ch] ${WRKSRC}/gdb/ | |||||
@${PATCH} ${PATCH_ARGS} < ${FILESDIR}/extrapatch-kgdb | |||||
.if ${PORT_OPTIONS:MTHREADS} | |||||
@${PATCH} ${PATCH_ARGS} < \ | |||||
${FILESDIR}/extrapatch-kgdb-configure.tgt-threads | |||||
.else | |||||
@${PATCH} ${PATCH_ARGS} < \ | |||||
${FILESDIR}/extrapatch-kgdb-configure.tgt-plain | |||||
.endif | |||||
.endif | |||||
do-install: | do-install: | ||||
${INSTALL_PROGRAM} ${WRKSRC}/gdb/gdb \ | ${INSTALL_PROGRAM} ${WRKSRC}/gdb/gdb \ | ||||
${STAGEDIR}${PREFIX}/bin/gdb${VER} | ${STAGEDIR}${PREFIX}/bin/gdb${VER} | ||||
${INSTALL_MAN} ${WRKSRC}/gdb/doc/gdb.1 \ | ${INSTALL_MAN} ${WRKSRC}/gdb/doc/gdb.1 \ | ||||
${STAGEDIR}${MAN1PREFIX}/man/man1/gdb${VER}.1 | ${STAGEDIR}${MAN1PREFIX}/man/man1/gdb${VER}.1 | ||||
do-install-KGDB-on: | |||||
${INSTALL_PROGRAM} ${WRKSRC}/gdb/kgdb \ | |||||
${STAGEDIR}${PREFIX}/bin/kgdb${VER} | |||||
do-install-TUI-on: | do-install-TUI-on: | ||||
${LN} -sf gdb${VER} ${STAGEDIR}${PREFIX}/bin/gdbtui${VER} | ${LN} -sf gdb${VER} ${STAGEDIR}${PREFIX}/bin/gdbtui${VER} | ||||
do-install-GDB_LINK-on: | do-install-GDB_LINK-on: | ||||
${LN} -sf gdb${VER} ${STAGEDIR}${PREFIX}/bin/gdb | ${LN} -sf gdb${VER} ${STAGEDIR}${PREFIX}/bin/gdb | ||||
.if ${PORT_OPTIONS:MKGDB} | |||||
${LN} -sf kgdb${VER} ${STAGEDIR}${PREFIX}/bin/kgdb | |||||
.endif | |||||
do-install-PYTHON-on: | do-install-PYTHON-on: | ||||
(cd ${WRKSRC}/gdb; ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} install-python ) | (cd ${WRKSRC}/gdb; ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} install-python ) | ||||
(cd ${WRKSRC}/gdb/data-directory ; \ | (cd ${WRKSRC}/gdb/data-directory ; \ | ||||
${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} install-python ) | ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} install-python ) | ||||
. for f in gdb gdb/command gdb/function | . for f in gdb gdb/command gdb/function | ||||
@(cd ${STAGEDIR}${PREFIX}/share/gdb${VER}/python/${f} ; ${CHMOD} 644 *.py* ) | @(cd ${STAGEDIR}${PREFIX}/share/gdb${VER}/python/${f} ; ${CHMOD} 644 *.py* ) | ||||
. endfor | . endfor | ||||
do-install-GUILE-on: | do-install-GUILE-on: | ||||
(cd ${WRKSRC}/gdb; ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} install-guile ) | (cd ${WRKSRC}/gdb; ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} install-guile ) | ||||
(cd ${WRKSRC}/gdb/data-directory ; \ | (cd ${WRKSRC}/gdb/data-directory ; \ | ||||
${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} install-guile ) | ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} install-guile ) | ||||
.include <bsd.port.mk> | .include <bsd.port.mk> |
Is there a reason not to include KGDB support by default? In a subsequent change perhaps?