diff --git a/sysutils/tmux/Makefile b/sysutils/tmux/Makefile index 0e0c0280a234..4ae211a218d3 100644 --- a/sysutils/tmux/Makefile +++ b/sysutils/tmux/Makefile @@ -1,73 +1,73 @@ PORTNAME= tmux PORTVERSION= 3.3a -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= sysutils MASTER_SITES= https://github.com/tmux/tmux/releases/download/${PORTVERSION}/ DISTFILES= ${DISTNAME}${EXTRACT_SUFX} MAINTAINER= mat@FreeBSD.org COMMENT= Terminal Multiplexer WWW= https://tmux.github.io/ LICENSE= ISCL GPLv2 LICENSE_COMB= multi LICENSE_FILE_ISCL= ${WRKSRC}/COPYING LICENSE_FILE_GPLv2= ${WRKSRC_bash}/COPYING LICENSE_DISTFILES_ISCL= ${DISTNAME}${EXTRACT_SUFX} LICENSE_DISTFILES_GPLv2= ${DISTFILE_bash} -USES= cpe ncurses pkgconfig +USES= cpe ncurses:port pkgconfig CPE_VENDOR= tmux_project USE_GITHUB= nodefault GH_TUPLE= imomaliev:tmux-bash-completion:f5d5323:bash GNU_CONFIGURE= yes GNU_CONFIGURE_MANPREFIX=${PREFIX}/share CONFIGURE_ARGS= --enable-utempter \ --sysconfdir=${PREFIX}/etc CONFLICTS_INSTALL= tmux23 PLIST_FILES= bin/tmux \ etc/bash_completion.d/tmux \ share/man/man1/tmux.1.gz PORTDOCS= CHANGES README PORTEXAMPLES= * OPTIONS_DEFINE= DOCS EXAMPLES LIBEVENT_STATIC UTF8PROC LIBEVENT_STATIC_DESC= Build with static libevent UTF8PROC_DESC= Build with utf8proc support UTF8PROC_USES= localbase LIBEVENT_STATIC_BUILD_DEPENDS= ${LOCALBASE}/lib/libevent.a:devel/libevent LIBEVENT_STATIC_LIB_DEPENDS_OFF= libevent.so:devel/libevent LIBEVENT_STATIC_VARS= LESTATIC=${LOCALBASE}/lib/libevent.a UTF8PROC_LIB_DEPENDS= libutf8proc.so:textproc/utf8proc UTF8PROC_CONFIGURE_ENABLE= utf8proc post-patch: @${REINPLACE_CMD} -e 's|/etc/tmux.conf|${PREFIX}/etc/tmux.conf|g' ${WRKSRC}/CHANGES \ ${WRKSRC}/tmux.h post-configure-LIBEVENT_STATIC-on: ${REINPLACE_CMD} -e '/LIBS/s|-levent[^[:blank:]]*|${LESTATIC}|' \ ${WRKSRC}/${MAKEFILE} post-install: @${MKDIR} ${STAGEDIR}${PREFIX}/etc/bash_completion.d ${INSTALL_DATA} ${WRKSRC_bash}/completions/tmux ${STAGEDIR}${PREFIX}/etc/bash_completion.d/tmux post-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} (cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR}) post-install-EXAMPLES-on: @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} ${INSTALL_DATA} ${WRKSRC}/example* ${STAGEDIR}${EXAMPLESDIR} .include diff --git a/sysutils/tmux/files/patch-to-fix-crash-due-to-change-to-ncurses.patch b/sysutils/tmux/files/patch-to-fix-crash-due-to-change-to-ncurses.patch new file mode 100644 index 000000000000..00922273763c --- /dev/null +++ b/sysutils/tmux/files/patch-to-fix-crash-due-to-change-to-ncurses.patch @@ -0,0 +1,63 @@ +diff --git tty-term.c tty-term.c +index fdf0c4fa..873e1ce2 100644 +--- tty-term.c ++++ tty-term.c +@@ -762,33 +762,53 @@ tty_term_string(struct tty_term *term, enum tty_code_code code) + const char * + tty_term_string1(struct tty_term *term, enum tty_code_code code, int a) + { +- return (tparm((char *) tty_term_string(term, code), a, 0, 0, 0, 0, 0, 0, 0, 0)); ++ const char *x = tty_term_string(term, code), *s; ++ s = tiparm_s(1, 0, x, a); ++ if (s == NULL) ++ fatalx("could not expand %s", tty_term_codes[code].name); ++ return (s); + } + + const char * + tty_term_string2(struct tty_term *term, enum tty_code_code code, int a, int b) + { +- return (tparm((char *) tty_term_string(term, code), a, b, 0, 0, 0, 0, 0, 0, 0)); ++ const char *x = tty_term_string(term, code), *s; ++ s = tiparm_s(2, 0, x, a, b); ++ if (s == NULL) ++ fatalx("could not expand %s", tty_term_codes[code].name); ++ return (s); + } + + const char * + tty_term_string3(struct tty_term *term, enum tty_code_code code, int a, int b, + int c) + { +- return (tparm((char *) tty_term_string(term, code), a, b, c, 0, 0, 0, 0, 0, 0)); ++ const char *x = tty_term_string(term, code), *s; ++ s = tiparm_s(3, 0, x, a, b, c); ++ if (s == NULL) ++ fatalx("could not expand %s", tty_term_codes[code].name); ++ return (s); + } + + const char * + tty_term_ptr1(struct tty_term *term, enum tty_code_code code, const void *a) + { +- return (tparm((char *) tty_term_string(term, code), (long)a, 0, 0, 0, 0, 0, 0, 0, 0)); ++ const char *x = tty_term_string(term, code), *s; ++ s = tiparm_s(1, 1, x, a); ++ if (s == NULL) ++ fatalx("could not expand %s", tty_term_codes[code].name); ++ return (s); + } + + const char * + tty_term_ptr2(struct tty_term *term, enum tty_code_code code, const void *a, + const void *b) + { +- return (tparm((char *) tty_term_string(term, code), (long)a, (long)b, 0, 0, 0, 0, 0, 0, 0)); ++ const char *x = tty_term_string(term, code), *s; ++ s = tiparm_s(2, 3, x, a, b); ++ if (s == NULL) ++ fatalx("could not expand %s", tty_term_codes[code].name); ++ return (s); + } + + int