diff --git a/x11/foot/Makefile b/x11/foot/Makefile index a65befb1390e..c317792eec99 100644 --- a/x11/foot/Makefile +++ b/x11/foot/Makefile @@ -1,101 +1,104 @@ PORTNAME= foot DISTVERSION= 1.12.0 CATEGORIES= x11 MASTER_SITES= https://codeberg.org/dnkl/${PORTNAME}/archive/${DISTVERSIONFULL}${EXTRACT_SUFX}?dummy=/ +PATCH_SITES= https://codeberg.org/dnkl/${PORTNAME}/commit/ +PATCHFILES+= 8ceb6e45a49e.patch:-p1 # unbreak PGO + MAINTAINER= jbeich@FreeBSD.org COMMENT= Fast, lightweight and minimalistic Wayland terminal emulator LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= evdev-proto>0:devel/evdev-proto \ tllist>=1.0.4:devel/tllist \ wayland-protocols>0:graphics/wayland-protocols LIB_DEPENDS= libepoll-shim.so:devel/libepoll-shim \ libwayland-client.so:graphics/wayland \ libfcft.so:x11-fonts/fcft \ libfontconfig.so:x11-fonts/fontconfig \ libxkbcommon.so:x11/libxkbcommon USES= compiler:c11 meson pkgconfig xorg USE_XORG= pixman WRKSRC= ${WRKDIR}/${PORTNAME} OPTIONS_DEFINE= DOCS LTO NOTIFY PGO UTF8PROC XDG OPTIONS_DEFAULT=LTO NOTIFY PGO UTF8PROC XDG OPTIONS_EXCLUDE+= ${CC:T:Mgcc*:C/.+/LTO/} # undefined reference to `xstrdup' OPTIONS_EXCLUDE_powerpc64= ${"${/usr/bin/ld:L:tA}"==/usr/bin/ld.lld:?LTO:} # https://github.com/llvm/llvm-project/issues/46697 OPTIONS_EXCLUDE_FreeBSD_12= ${WAYLAND_DISPLAY:UPGO} # ./pgo hangs DOCS_BUILD_DEPENDS= scdoc:textproc/scdoc DOCS_MESON_ENABLED= docs LTO_MESON_TRUE= b_lto NOTIFY_RUN_DEPENDS= notify-send:devel/libnotify PGO_USES= python:build PGO_MESON_ON= -Db_pgo=generate PGO_CFLAGS= ${PGO_CFLAGS_${CHOSEN_COMPILER_TYPE}} PGO_CFLAGS_clang= -Wno-ignored-optimization-argument # meson -Db_pgo=use PGO_SCRIPT_ARGS= --colors-regular --colors-bright --colors-256 --colors-rgb \ --scroll --scroll-region \ --attr-bold --attr-italic --attr-underline \ --sixel UTF8PROC_DESC= Grapheme clustering using libutf8proc UTF8PROC_LIB_DEPENDS= libutf8proc.so:textproc/utf8proc UTF8PROC_MESON_ENABLED= grapheme-clustering XDG_DESC= Open files with xdg-open XDG_RUN_DEPENDS= xdg-open:devel/xdg-utils .if exists(/usr/bin/tic) # Add site- suffix to avoid conflict with terminfo-db (part of ncurses) MESON_ARGS+= -Dcustom-terminfo-install-location="${PLIST_FILES:M*terminfo*:[1]:H:H}" PKGMESSAGE= ${NONEXISTENT} PLIST_FILES+= share/site-terminfo/${PORTNAME:C,^.,&/&,} \ share/site-terminfo/${PORTNAME:C,^.,&/&,}-direct .else MESON_ARGS+= -Dterminfo=disabled -Ddefault-terminfo=xterm-256color .endif post-patch: # Respect PREFIX for system-wide config @${REINPLACE_CMD} -e 's,/etc,${PREFIX}&,' \ ${WRKSRC}/config.c \ ${WRKSRC}/doc/${PORTNAME}.1.scd \ ${WRKSRC}/doc/${PORTNAME}.ini.5.scd # Let @sample handle default files under etc/ @${REINPLACE_CMD} -e "/install.*sysconfdir/s/'[^']*/&', rename: &.sample/1" \ ${WRKSRC}/meson.build .if !defined(DEFAULT_POST_BUILD) post-build-PGO-on: (cd ${BUILD_WRKSRC} && ./tests/test-config) # -Wbackend-plugin/-Wmissing-profile (cd ${BUILD_WRKSRC} && ./${PORTNAME}client --version) # -Wbackend-plugin/-Wmissing-profile .if defined(WAYLAND_DISPLAY) # Likely a local build, so optimize for the current config (cd ${BUILD_WRKSRC} && LC_ALL=en_US.UTF-8 ./${PORTNAME} ${PYTHON_CMD} \ ${WRKSRC}/scripts/generate-alt-random-writes.py \ ${PGO_SCRIPT_ARGS}) .else (cd ${BUILD_WRKSRC} && ./${PORTNAME} --version) # -Wbackend-plugin/-Wmissing-profile (cd ${BUILD_WRKSRC} && ${PYTHON_CMD} \ ${WRKSRC}/scripts/generate-alt-random-writes.py \ --seed=${:!${AWK} '/TIMESTAMP/ { print \$3 }' ${DISTINFO_FILE}!} \ --rows=67 --cols=135 \ ${PGO_SCRIPT_ARGS} \ pgo-input && ./pgo pgo-input) .endif @if [ ${CHOSEN_COMPILER_TYPE} = clang ]; then \ llvm-profdata merge -o ${BUILD_WRKSRC}/default.profdata \ ${BUILD_WRKSRC}/default*.profraw; \ fi ${RM} ${BUILD_COOKIE} ${CONFIGURE_CMD} configure -Db_pgo=use ${BUILD_WRKSRC} ${MAKE} -C${.CURDIR} build DEFAULT_POST_BUILD=1 .endif .include diff --git a/x11/foot/distinfo b/x11/foot/distinfo index d88b0d386c86..a4d9a122e311 100644 --- a/x11/foot/distinfo +++ b/x11/foot/distinfo @@ -1,3 +1,5 @@ TIMESTAMP = 1650640481 SHA256 (foot-1.12.0.tar.gz) = d8c27f735d2f361ee627cce282bee2462545f4df9532ee6ac28fd86a193404fa SIZE (foot-1.12.0.tar.gz) = 482717 +SHA256 (8ceb6e45a49e.patch) = 822c0ea023751a5bf2a14f81e51c8e4529f54702d11b83651c22ccf4b8970249 +SIZE (8ceb6e45a49e.patch) = 1047 diff --git a/x11/foot/files/patch-pgo b/x11/foot/files/patch-pgo deleted file mode 100644 index 5db3774cb486..000000000000 --- a/x11/foot/files/patch-pgo +++ /dev/null @@ -1,30 +0,0 @@ -FAILED: pgo -ld: error: undefined symbol: key_binding_unref_term ->>> referenced by ld-temp.o ->>> lto.tmp:(term_destroy) - -ld: error: undefined symbol: key_binding_new_for_term ->>> referenced by ld-temp.o ->>> lto.tmp:(term_init) -cc: error: linker command failed with exit code 1 (use -v to see invocation) - ---- pgo/pgo.c.orig 2022-04-22 15:14:41 UTC -+++ pgo/pgo.c -@@ -193,6 +193,17 @@ key_binding_for( - return &kbd; - } - -+void -+key_binding_new_for_term(struct key_binding_manager *mgr, -+ const struct terminal *term) -+{ -+} -+void -+key_binding_unref_term(struct key_binding_manager *mgr, -+ const struct terminal *term) -+{ -+} -+ - int - main(int argc, const char *const *argv) - {