3 DISTVERSIONSUFFIX= -darwin-x86_64
5 CATEGORIES= textproc www
6 MASTER_SITES= https://artifacts.elastic.co/downloads/kibana/ \
7 http://artifacts.elastic.co/downloads/kibana/
9 DISTFILES= ${DISTNAME}${EXTRACT_SUFX}
11 MAINTAINER= elastic@FreeBSD.org
12 COMMENT= Browser based analytics and search interface to ElasticSearch
13 WWW= https://www.elastic.co/products/kibana
17 DEPRECATED= Depends on EOL NodeJS 16
18 EXPIRATION_DATE= 2023-10-30
20 BUILD_DEPENDS= npm-node16>=9.7.2:www/npm-node16
21 LIB_DEPENDS= libre2.so:devel/re2 \
23 RUN_DEPENDS= ${LOCALBASE}/bin/node:www/node16
25 USES= compiler:c++17-lang cpe nodejs:16,build,run python:build
29 GH_TUPLE= nodejs:nan:v${_NODE_NAN_VER}:node_nan \
30 uhop:node-re2:${_NODE_RE2_VER}:node_re2
33 USE_RC_SUBR= ${PORTNAME}
37 WWWDIR= ${PREFIX}/www/${PORTNAME}${PKGNAMESUFFIX}
41 SUB_FILES= pkg-deinstall pkg-message
42 SUB_LIST+= BINDIR=${PREFIX}/bin \
43 PKGNAMESUFFIX=${PKGNAMESUFFIX} \
46 WRKSRC= ${WRKDIR}/${PORTNAME}-${DISTVERSION}
48 BINS= kibana-encryption-keys kibana-keystore kibana-plugin \
49 kibana-setup kibana-verification-code
51 #######################################################################
52 # Set node-nan version here
54 # Set node-re version here
56 #######################################################################
58 _NODECMD= ${LOCALBASE}/bin/node --version
59 _DEVDIR:= ${WRKDIR}/.devdir
61 _RE2DIR= ${WRKDIR}/node-re2-${_NODE_RE2_VER}
63 # Extra patch files must be updated whenever node-re2 changes
64 _RE2PATCHES= ${PATCHDIR}/extra-node-re2-binding-gyp.patch
67 _DIR2DEL= node_modules packages src/plugins x-pack/packages
70 .for _dirdel in ${_DIR2DEL}
71 ${FIND} -s ${WRKSRC}/${_dirdel} -type d -empty -delete
73 cd ${_RE2DIR} && ${PATCH} -p0 < ${_RE2PATCHES}
74 ${REINPLACE_CMD} -e "s|%%PREFIX%%|${PREFIX}|g" \
75 -e "s|%%DEVDIR%%|${_DEVDIR}|g" ${_RE2DIR}/binding.gyp
79 _NODEVER=$$(${_NODECMD} | ${SED} -n 's|^v\(.*\)|\1|p') && \
80 ${MKDIR} ${_DEVDIR}/$${_NODEVER}/include && \
81 ${RLN} ${LOCALBASE}/include/node ${_DEVDIR}/$${_NODEVER}/include/node && \
82 ${ECHO} "9" > ${_DEVDIR}/$${_NODEVER}/installVersion \
86 ${MKDIR} ${_DEVDIR}/nan
87 (cd ${WRKDIR}/nan-${_NODE_NAN_VER} && ${COPYTREE_SHARE} . \
89 "! ( -name \.* -or -path *\/test\/* -or -name test )")
91 ${SETENV} HOME=${WRKDIR} \
92 ${LOCALBASE}/lib/node_modules/npm/node_modules/.bin/node-gyp configure \
93 --python=${PYTHON_CMD} \
94 --nodedir=${LOCALBASE} \
99 ${SETENV} HOME=${WRKDIR} \
100 ${LOCALBASE}/lib/node_modules/npm/node_modules/.bin/node-gyp build \
104 ${MKDIR} ${STAGEDIR}${WWWDIR} ${STAGEDIR}${ETCDIR}
105 ${INSTALL_DATA} ${WRKSRC}/config/kibana.yml ${STAGEDIR}${ETCDIR}/kibana.yml.sample
107 ${RM} -r config node optimize && \
108 ${COPYTREE_SHARE} . ${STAGEDIR}${WWWDIR} && \
109 ${COPYTREE_BIN} bin ${STAGEDIR}${WWWDIR})
110 ${INSTALL} -lrs ${STAGEDIR}${ETCDIR} ${STAGEDIR}${WWWDIR}/config
111 ${MKDIR} ${STAGEDIR}${WWWDIR}/node/bin
112 ${LN} -s ${LOCALBASE}/bin/node ${STAGEDIR}${WWWDIR}/node/bin/node
113 ${RM} ${STAGEDIR}${WWWDIR}/node_modules/re2/build/Release/re2.node
114 ${INSTALL_LIB} ${_RE2DIR}/build/Release/re2.node \
115 ${STAGEDIR}${WWWDIR}/node_modules/re2/build/Release/re2.node
117 ${INSTALL} -l rs ${STAGEDIR}${WWWDIR}/bin/${f} ${STAGEDIR}${PREFIX}/bin/${f}
118 ${ECHO} "bin/${f}" >> ${TMPPLIST}
122 ${ECHO} "@sample ${ETCDIR}/kibana.yml.sample" >> ${TMPPLIST}
123 ${FIND} -s ${STAGEDIR}${WWWDIR} -not -type d | ${SORT} | \
124 ${SED} -e 's#^${STAGEDIR}${PREFIX}/##' >> ${TMPPLIST}
125 ${ECHO} "@dir(www,www) ${WWWDIR}/data" >> ${TMPPLIST}
126 ${ECHO} "@dir ${WWWDIR}/plugins" >> ${TMPPLIST}
127 ${ECHO} "@dir ${WWWDIR}/logs" >> ${TMPPLIST}
129 .include <bsd.port.mk>