blob: 4b13bb9088f5907bb3368df49c3959eb58f2fa85 (
plain)
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
|
PORTNAME= gitaly
DISTVERSIONPREFIX= v
DISTVERSION= 16.11.2
PORTREVISION= 1
CATEGORIES= devel
MAINTAINER= mfechner@FreeBSD.org
COMMENT= Smart reverse proxy for GitLab
WWW= https://gitlab.com/gitlab-org/gitaly
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
# define dependencies that are required for build and run under MY_DEPENDS
MY_DEPENDS= git>=2.43.0:devel/git
BUILD_DEPENDS= bash>0:shells/bash \
${LOCALBASE}/bin/cmake:devel/cmake-core \
pcre2>0:devel/pcre2 \
http-parser>0:www/http-parser \
${MY_DEPENDS}
RUN_DEPENDS= ${MY_DEPENDS}
USES= cpe gmake go:modules,no_targets,1.22 iconv pkgconfig ssl
CPE_VENDOR= gitlab
USE_GITLAB= yes
GL_ACCOUNT= gitlab-org
MAKE_ENV= GOFLAGS="${GO_BUILDFLAGS}"
# make sure to pass go build options into make process
MAKE_ENV+= ${GO_ENV}
# for go dependencies
# Gitlab hosts there dependencies on their own platform and not on go-proxy
# so we download the required go.mod file from gitlab
# lines are taken from go.mk
# ---------------------------
FETCH_DEPENDS= ${GO_CMD}:${GO_PORT}
MASTER_SITES+= https://gitlab.com/gitlab-org/gitaly/-/raw/v${DISTVERSION}/
DISTFILES+= go.mod
DIST_SUBDIR= go/${PKGORIGIN:S,/,_,g}/${DISTNAME}
EXTRACT_ONLY+= ${DISTFILES:N*.mod\:*:N*.mod:C/:.*//}
_USES_fetch+= 800:go-post-fetch
go-post-fetch:
@${ECHO_MSG} "===> Fetching ${GO_MODNAME} dependencies";
@(cd ${DISTDIR}/${DIST_SUBDIR}; \
[ -e go.mod ] || ${RLN} ${GO_MODFILE} go.mod; \
${SETENV} ${GO_ENV} GOPROXY=${GO_GOPROXY} ${GO_CMD} mod download -x all)
# ---------------------------
post-patch:
${REINPLACE_CMD} -e "s|%%PREFIX%%|${PREFIX}|" ${WRKSRC}/config.toml.example
${MV} ${WRKSRC}/config.toml.example ${WRKSRC}/config.toml.sample
do-install:
${MKDIR} ${STAGEDIR}${DATADIR}
${MKDIR} ${STAGEDIR}${DATADIR}/bin
${FIND} ${WRKSRC} -name '*.orig' -delete
(cd ${WRKSRC}/_build/bin/ && ${COPYTREE_BIN} . ${STAGEDIR}${DATADIR}/bin && \
cd ${WRKSRC} && ${COPYTREE_SHARE} config.toml.sample ${STAGEDIR}${DATADIR})
post-install:
${FIND} -s ${STAGEDIR}${DATADIR} -not -type d | ${SORT} | \
${SED} -e 's#^${STAGEDIR}${PREFIX}/##' | \
${SED} -E -e '/sample$$/ s#^#@sample #; \
/gitlab-shell-hook$$/ s#^#@(,,755) #; \
s#${DATADIR_REL}/bin#@(,,555) ${DATADIR_REL}/bin#; ' >> ${TMPPLIST}
.include <bsd.port.mk>
|