PORTNAME= gitaly DISTVERSION= 16.6.1 PORTREVISION= 1 DISTVERSIONPREFIX= v 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.42.0:devel/git BUILD_DEPENDS= bash>0:shells/bash \ ${LOCALBASE}/bin/cmake:devel/cmake-core \ ${MY_DEPENDS} RUN_DEPENDS= ${MY_DEPENDS} LIB_DEPENDS= libpcre2-8.so:devel/pcre2 \ libhttp_parser.so:www/http-parser USES= cpe gmake go:modules,no_targets iconv pkgconfig ssl CPE_VENDOR= gitlab MAKE_ENV= GOFLAGS="${GO_BUILDFLAGS}" # make sure to pass go build options into make process MAKE_ENV+= ${GO_ENV} USE_GITLAB= yes GL_ACCOUNT= gitlab-org # 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