Tweak net-im/purple-plugin-pack version 2.8.0
[dports.git] / net-im / openfire / Makefile
1 PORTNAME=       openfire
2 DISTVERSIONPREFIX=      v
3 DISTVERSION=    4.7.3
4 PORTEPOCH=      1
5 CATEGORIES=     net-im java
6
7 MASTER_SITES=   LOCAL/fernape:maven
8
9 MAINTAINER=     nikita@druba.su
10 COMMENT=        Enterprise instant messaging server
11 WWW=            https://www.igniterealtime.org/projects/openfire/index.jsp
12
13 LICENSE=        APACHE20
14 LICENSE_FILE=   ${WRKSRC}/LICENSE.txt
15
16 BUILD_DEPENDS=  mvn:devel/maven
17
18 USES=           cpe
19 CPE_VENDOR=     igniterealtime
20 USE_GITHUB=     YES
21 GH_ACCOUNT=     igniterealtime
22 GH_PROJECT=     Openfire
23 USE_JAVA=       yes
24 JAVA_VERSION=   1.8+
25
26 USE_RC_SUBR=    ${PORTNAME}
27 NO_ARCH=        yes
28 SUB_FILES+=     pkg-message
29
30 INSTALL_WRKSRC= ${WRKSRC}/distribution/target/distribution-base/
31 DATADIR=        ${JAVASHAREDIR}/${PORTNAME}
32 VARLOG=         /var/log/${PORTNAME}
33 VARDB=          /var/db/${PORTNAME}
34 USERS=          ${PORTNAME}
35 GROUPS=         ${USERS}
36 PLIST_SUB+=     VARDB=${VARDB} \
37                 VARLOG=${VARLOG}
38
39 OPTIONS_DEFINE=         DOCS TEST
40 OPTIONS_DEFAULT=        MAVEN_LOCAL
41 OPTIONS_SINGLE=         MAVEN
42 OPTIONS_SINGLE_MAVEN=   MAVEN_LOCAL MAVEN_ONLINE
43
44 MAVEN_DESC=             Source of Maven build plugins
45 MAVEN_LOCAL_DESC=       Use prefetch plugins from FreeBSD repository
46 MAVEN_ONLINE_DESC=      Download last plugins during build process and store them into ~/.m2
47
48 MAVEN_LOCAL_DISTFILES=  FreeBSD-${PORTNAME}-${PORTVERSION}-maven-repository.tar.gz:maven
49
50 MVN=            mvn
51 MVN_TARGET=     package
52
53 .include <bsd.port.options.mk>
54
55 .if ${PORT_OPTIONS:MTEST}
56 MVN_OPTS=       -DskipTests=false
57 .else
58 MVN_OPTS=       -DskipTests=true
59 .endif
60
61 .if ${PORT_OPTIONS:MMAVEN_LOCAL}
62 MVN_OPTS+=      -o -Dmaven.repo.local=${WRKDIR}/m2
63 .endif
64
65 .if ${PORT_OPTIONS:MMAVEN_ONLINE}
66 MVN_OPTS+=      -U
67 .endif
68
69 do-build:
70         ${ECHO_CMD} "cd ${WRKSRC} && ${MVN} ${MVN_OPTS} ${MVN_TARGET}"
71         @(cd ${WRKSRC} && ${MVN} ${MVN_OPTS} ${MVN_TARGET})
72
73 do-install:
74         @${MKDIR} ${STAGEDIR}${DATADIR}/lib
75         @${MKDIR} ${STAGEDIR}${ETCDIR}
76         @${MKDIR} ${STAGEDIR}${VARDB}
77         @${MKDIR} ${STAGEDIR}${VARLOG}
78
79         (cd ${INSTALL_WRKSRC}/lib && ${INSTALL} -m 744 *.jar ${STAGEDIR}${DATADIR}/lib)
80         (cd ${INSTALL_WRKSRC}/lib && ${INSTALL} -m 744 log4j2.xml ${STAGEDIR}${DATADIR}/lib)
81
82         (cd ${INSTALL_WRKSRC}/resources && \
83             ${FIND} . \! -path ./security\* \! -path ./nativeAuth\* | \
84             ${CPIO} -pvdmu -R ${SHAREOWN}:${SHAREGRP} \
85                 ${STAGEDIR}${DATADIR}/resources)
86
87         (cd ${INSTALL_WRKSRC}/plugins/admin && ${FIND} . \
88         | ${CPIO} -pvdmu -R ${SHAREOWN}:${SHAREGRP} ${STAGEDIR}${DATADIR}/plugins/admin)
89
90         ${LN} -sf ${ETCDIR} ${STAGEDIR}${DATADIR}/conf
91         ${LN} -sf ${ETCDIR} ${STAGEDIR}${DATADIR}/resources/security
92         ${LN} -sf ${VARDB} ${STAGEDIR}${DATADIR}/embedded-db
93         ${LN} -sf ${VARLOG} ${STAGEDIR}${DATADIR}/logs
94         ${INSTALL_DATA} ${INSTALL_WRKSRC}/conf/${PORTNAME}.xml \
95                 ${STAGEDIR}${ETCDIR}/${PORTNAME}.xml.sample
96         ${INSTALL_DATA} ${INSTALL_WRKSRC}/conf/security.xml \
97                 ${STAGEDIR}${ETCDIR}/security.xml.sample
98         ${INSTALL_DATA} ${INSTALL_WRKSRC}/conf/crowd.properties \
99                 ${STAGEDIR}${ETCDIR}/crowd.properties.sample
100         ${INSTALL} -m 600 ${INSTALL_WRKSRC}/resources/security/truststore \
101                 ${STAGEDIR}${ETCDIR}/truststore.sample
102         ${INSTALL} -m 600 ${INSTALL_WRKSRC}/resources/security/keystore \
103                 ${STAGEDIR}${ETCDIR}/keystore.sample
104
105 do-install-DOCS-on:
106         ${MKDIR} ${STAGEDIR}${DOCSDIR}
107         (cd ${INSTALL_WRKSRC}/documentation && ${FIND} . \
108         | ${CPIO} -pdmu -R ${SHAREOWN}:${SHAREGRP} ${STAGEDIR}${DOCSDIR} > /dev/null 2>&1 )
109
110 .include <bsd.port.mk>