blob: 5575f818070b7dabe5c23054afc0a7427ac40d1d (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
PORTNAME= fish
DISTVERSION= 4.0.2
CATEGORIES= shells
MASTER_SITES= https://github.com/fish-shell/fish-shell/releases/download/${PORTVERSION}/
PATCH_SITES= https://github.com/fish-shell/fish-shell/pull/
# https://github.com/fish-shell/fish-shell/pull/11486
PATCHFILES+= 11486.patch:-p1
MAINTAINER= asomers@FreeBSD.org
COMMENT= User friendly command line shell
WWW= https://fishshell.com/
LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/COPYING
BUILD_DEPENDS= ${RUST_DEFAULT}>=1.70.0:lang/${RUST_DEFAULT}
LIB_DEPENDS= libpcre2-32.so:devel/pcre2
# The python dependency is only needed by shebangfix. At runtime python is
# only needed by some optional scripts that aren't in PATH.
USES= cargo cmake cpe localbase ncurses python:env shebangfix tar:xz
DISTFILES+= ${DISTNAME}${EXTRACT_SUFX}
CPE_VENDOR= fishshell
SHEBANG_FILES= share/tools/*.py share/tools/web_config/webconfig.py
# We need USES=cargo for fetching crates. But the actual build is done by
# cmake.
CARGO_BUILD= no
CARGO_INSTALL= no
CONFLICTS_INSTALL= comms/mlan3
MANDIRS= ${DATADIR}/man
PORTDOCS= *
OPTIONS_DEFINE= DOCS MANPAGES NLS
OPTIONS_DEFAULT= MANPAGES NLS
OPTIONS_SUB= yes
DOCS_BUILD_DEPENDS= sphinx-build:textproc/py-sphinx@${PY_FLAVOR}
DOCS_CMAKE_BOOL= BUILD_DOCS
DOCS_VARS= MAKE_JOBS_UNSAFE=yes
NLS_USES= gettext
NLS_CMAKE_BOOL= WITH_GETTEXT
.include <bsd.port.pre.mk>
.if ${NCURSESBASE:M${LOCALBASE}}
CMAKE_ARGS+= -DCURSES_NEED_NCURSES=TRUE
.endif
post-install:
@${MV} ${STAGEDIR}${ETCDIR}/config.fish ${STAGEDIR}${ETCDIR}/config.fish.sample
post-install-DOCS-on:
@${RM} ${STAGEDIR}${DOCSDIR}/.buildinfo
post-install-DOCS-off:
# required because fish always installs documentation
@${ECHO_MSG} "====> DOCS disable; removing documentation"
@${RM} -r ${STAGEDIR}${DOCSDIR}
post-install-MANPAGES-off:
# required because fish always installs manual pages
@${ECHO_MSG} "====> MANPAGES disable; removing manual pages"
for dir in ${MANDIRS:S/^/${STAGEDIR}/} ; do \
${FIND} $$dir -type f -delete ; \
done
@${RM} -r ${STAGEDIR}${DATADIR}/man
.include <bsd.port.post.mk>
|