Tue May 9 23:23:37 2023 UTC ()
shells/fish: fix ncurses linkage, from Chavdar Ivanov and RVP in PR 57365

Only add -lterminfo when using base curses on NetBSD, not ncurses.
Also put it in LIBS, not LDFLAGS :-)

The previous behavior gives a bad build, but only with non-default
settings, so I'm not bumping the revision.

XXX: the magic to add -lterminfo probably belongs in curses.bl3.mk


(dholland)
diff -r1.42 -r1.43 pkgsrc/shells/fish/Makefile

cvs diff -r1.42 -r1.43 pkgsrc/shells/fish/Makefile (expand / switch to unified diff)

--- pkgsrc/shells/fish/Makefile 2023/03/29 09:39:02 1.42
+++ pkgsrc/shells/fish/Makefile 2023/05/09 23:23:37 1.43
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1# $NetBSD: Makefile,v 1.42 2023/03/29 09:39:02 wiz Exp $ 1# $NetBSD: Makefile,v 1.43 2023/05/09 23:23:37 dholland Exp $
2 2
3DISTNAME= fish-3.6.1 3DISTNAME= fish-3.6.1
4CATEGORIES= shells 4CATEGORIES= shells
5MASTER_SITES= ${MASTER_SITE_GITHUB:=fish-shell/} 5MASTER_SITES= ${MASTER_SITE_GITHUB:=fish-shell/}
6GITHUB_PROJECT= fish-shell 6GITHUB_PROJECT= fish-shell
7GITHUB_RELEASE= ${PKGVERSION_NOREV} 7GITHUB_RELEASE= ${PKGVERSION_NOREV}
8EXTRACT_SUFX= .tar.xz 8EXTRACT_SUFX= .tar.xz
9 9
10MAINTAINER= pkgsrc-users@NetBSD.org 10MAINTAINER= pkgsrc-users@NetBSD.org
11HOMEPAGE= http://www.fishshell.com/ 11HOMEPAGE= http://www.fishshell.com/
12COMMENT= User friendly command line shell for UNIX-like operating systems 12COMMENT= User friendly command line shell for UNIX-like operating systems
13LICENSE= gnu-gpl-v2 13LICENSE= gnu-gpl-v2
14 14
@@ -18,44 +18,52 @@ CMAKE_ARGS+= -DIntl_INCLUDE_DIR=${PREFI @@ -18,44 +18,52 @@ CMAKE_ARGS+= -DIntl_INCLUDE_DIR=${PREFI
18CMAKE_ARGS+= -DCMAKE_INSTALL_SYSCONFDIR=${PKG_SYSCONFDIR} 18CMAKE_ARGS+= -DCMAKE_INSTALL_SYSCONFDIR=${PKG_SYSCONFDIR}
19CMAKE_ARGS+= -DBUILD_DOCS=OFF 19CMAKE_ARGS+= -DBUILD_DOCS=OFF
20 20
21PKG_SHELL= bin/fish 21PKG_SHELL= bin/fish
22 22
23.include "../../mk/bsd.prefs.mk" 23.include "../../mk/bsd.prefs.mk"
24 24
25.if ${OPSYS} == "NetBSD" && exists(/usr/include/execinfo.h) 25.if ${OPSYS} == "NetBSD" && exists(/usr/include/execinfo.h)
26CPPFLAGS+= -DHAVE_BACKTRACE 26CPPFLAGS+= -DHAVE_BACKTRACE
27CPPFLAGS+= -DHAVE_BACKTRACE_SYMBOLS 27CPPFLAGS+= -DHAVE_BACKTRACE_SYMBOLS
28CXXFLAGS.NetBSD+= -fpermissive 28CXXFLAGS.NetBSD+= -fpermissive
29LDFLAGS+= -lexecinfo 29LDFLAGS+= -lexecinfo
30.endif 30.endif
31LDFLAGS.NetBSD+= -lterminfo 
32 31
33# Upstream intentionally omits open.1 on Darwin, but adds realpath.1 32# Upstream intentionally omits open.1 on Darwin, but adds realpath.1
34PLIST_VARS+= open realpath 33PLIST_VARS+= open realpath
35.if ${OPSYS} == "Darwin" 34.if ${OPSYS} == "Darwin"
36PLIST.realpath= yes 35PLIST.realpath= yes
37.else 36.else
38PLIST.open= yes 37PLIST.open= yes
39.endif 38.endif
40 39
41EGDIR= ${PREFIX}/share/examples/fish 40EGDIR= ${PREFIX}/share/examples/fish
42CONF_FILES= ${EGDIR}/config.fish ${PKG_SYSCONFDIR}/fish/config.fish 41CONF_FILES= ${EGDIR}/config.fish ${PKG_SYSCONFDIR}/fish/config.fish
43OWN_DIRS+= ${PKG_SYSCONFDIR}/fish/functions 42OWN_DIRS+= ${PKG_SYSCONFDIR}/fish/functions
44OWN_DIRS+= ${PKG_SYSCONFDIR}/fish/conf.d 43OWN_DIRS+= ${PKG_SYSCONFDIR}/fish/conf.d
45OWN_DIRS+= ${PKG_SYSCONFDIR}/fish/completions 44OWN_DIRS+= ${PKG_SYSCONFDIR}/fish/completions
46 45
47REPLACE_PYTHON= share/tools/create_manpage_completions.py 46REPLACE_PYTHON= share/tools/create_manpage_completions.py
48 47
49# Avoid C++ <version> issues. 48# Avoid C++ <version> issues.
50post-extract: 49post-extract:
51 ${MV} ${WRKSRC}/version ${WRKSRC}/version.txt 50 ${MV} ${WRKSRC}/version ${WRKSRC}/version.txt
52 51
 52# At least on NetBSD (likely elsewhere in the long run too), when
 53# using base curses explicitly also link against terminfo. This is
 54# needed by search changes in binutils 2.39. Skip if using ncurses as
 55# ncurses has its own arrangements. XXX: this should really be wedged
 56# into the buildlink magic.
 57.include "../../mk/curses.buildlink3.mk"
 58.if ${CURSES_TYPE} == "curses"
 59LIBS.NetBSD+= -lterminfo
 60.endif
 61
53.include "../../devel/cmake/build.mk" 62.include "../../devel/cmake/build.mk"
54.include "../../devel/pcre2/buildlink3.mk" 63.include "../../devel/pcre2/buildlink3.mk"
55.include "../../devel/gettext-lib/buildlink3.mk" 64.include "../../devel/gettext-lib/buildlink3.mk"
56.include "../../devel/gettext-tools/buildlink3.mk" 65.include "../../devel/gettext-tools/buildlink3.mk"
57.include "../../lang/python/application.mk" 66.include "../../lang/python/application.mk"
58.include "../../sysutils/desktop-file-utils/desktopdb.mk" 67.include "../../sysutils/desktop-file-utils/desktopdb.mk"
59.include "../../mk/atomic64.mk" 68.include "../../mk/atomic64.mk"
60.include "../../mk/curses.buildlink3.mk" 
61.include "../../mk/bsd.pkg.mk" 69.include "../../mk/bsd.pkg.mk"