summaryrefslogtreecommitdiffstats
path: root/www/helma/Makefile
blob: 67f0094682985b5c94bc3495c1f47ad8caf2ae92 (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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
# New ports collection makefile for:	helma
# Date created:		2008-06-22
# Whom:			Bernhard Froehlich <decke@bluelife.at>
#
# $FreeBSD$
#

PORTNAME=	helma
PORTVERSION=	1.6.3
CATEGORIES=	www java
MASTER_SITES=	http://adele.helma.org/download/helma/${PORTVERSION}/
DISTFILES=	helma-${PORTVERSION}.tar.gz helma-${PORTVERSION}-src.tar.gz

MAINTAINER=	decke@bluelife.at
COMMENT=	A Web application framework for fast and efficient scripting

WRKBASE=	${WRKDIR}/${PORTNAME}-${PORTVERSION}
WRKSRC=		${WRKBASE}
DATADIR=	${JAVASHAREDIR}/${PORTNAME}

USE_RC_SUBR=	helma
USE_JAVA=	yes
JAVA_VERSION=	1.4+
USE_ANT=	yes
ALL_TARGET=	clean jar

DBDIR?=		/var/db/${PORTNAME}
LOGDIR?=	/var/log/${PORTNAME}
HELMA_USER=	${WWWOWN}
HELMA_GROUP=	${WWWGRP}
HELMA_CONFIG=	${WRKBASE}/scripts/helma.conf
APPFILES=	apps modules
ETCFILES=	apps.properties db.properties server.properties scripts/helma.conf
DATAFILES=	lib launcher.jar
DOCFILES=	docs licenses README.txt

PLIST_SUB=	DBDIR="${DBDIR}" \
		LOGDIR="${LOGDIR}" \
		HELMA_USER="${HELMA_USER}" \
		HELMA_GROUP="${HELMA_GROUP}"

OPTIONS=	MYSQL "Install MySQL Connector for Java" off

.include <bsd.port.pre.mk>

.if defined(WITH_MYSQL)
RUN_DEPENDS+=	${JAVALIBDIR}/mysql-connector-java.jar:${PORTSDIR}/databases/mysql-connector-java
PLIST_SUB+=	MYSQL=""
.else
PLIST_SUB+=	MYSQL="@comment "
.endif

post-patch:
	@${REINPLACE_CMD} -e 's|JAVA_HOME=/usr/lib/j2sdk1.5-sun|JAVA_HOME=${JAVA_HOME}|' \
		${HELMA_CONFIG}
	@${REINPLACE_CMD} -e 's|HELMA_INSTALL=/usr/local/helma/helma-1.6.x|HELMA_INSTALL=${DATADIR}|' \
		${HELMA_CONFIG}
	@${REINPLACE_CMD} -e 's|HELMA_HOME=\$$HELMA_INSTALL|HELMA_HOME=${WWWDIR}|' \
		${HELMA_CONFIG}
	@${REINPLACE_CMD} -e 's|HELMA_USER=helma|HELMA_USER=${HELMA_USER}|' \
		${HELMA_CONFIG}
	@${REINPLACE_CMD} -e 's|HELMA_LOG=\$$HELMA_HOME/log/helma-out.log|HELMA_LOG=${LOGDIR}/helma-out.log|' \
		${HELMA_CONFIG}
	@${ECHO_CMD} "HELMA_CONFIG=${ETCDIR}" >> \
		${HELMA_CONFIG}

	@${ECHO_CMD} "" >> \
		${WRKBASE}/server.properties
	@${ECHO_CMD} "# custom directories" >> \
		${WRKBASE}/server.properties
	@${ECHO_CMD} "hopHome = ${WWWDIR}" >> \
		${WRKBASE}/server.properties
	@${ECHO_CMD} "appHome = ${WWWDIR}/apps" >> \
		${WRKBASE}/server.properties
	@${ECHO_CMD} "appsPropFile = ${ETCDIR}/apps.properties" >> \
		${WRKBASE}/server.properties
	@${ECHO_CMD} "dbPropFile = ${ETCDIR}/db.properties" >> \
		${WRKBASE}/server.properties
	@${ECHO_CMD} "dbHome = ${DBDIR}" >> \
		${WRKBASE}/server.properties
	@${REINPLACE_CMD} -e 's|# logDir = console|logDir = ${LOGDIR}|' \
		${WRKBASE}/server.properties

do-install:
	${INSTALL_SCRIPT} ${FILESDIR}/helma.sh.in ${PREFIX}/bin/helma

	${MKDIR} ${WWWDIR} && \
	(cd ${WRKBASE} && ${COPYTREE_SHARE} "${APPFILES}" ${WWWDIR} \
		"! -name *.html ! -name helma-*.jar ! -name .jsdoc") && \
	${CHOWN} -R ${HELMA_USER}:${HELMA_GROUP} ${WWWDIR}

	${MKDIR} ${DATADIR} && \
	(cd ${WRKBASE} && ${COPYTREE_SHARE} "${DATAFILES}" ${DATADIR} \
		"! -name *.html ! -name helma-*.jar ! -name .jsdoc")

	${MKDIR} ${LOGDIR} && \
	${CHOWN} -R ${HELMA_USER}:${HELMA_GROUP} ${LOGDIR}

	${MKDIR} ${DBDIR} && \
	${CHOWN} -R ${HELMA_USER}:${HELMA_GROUP} ${DBDIR}

	${MKDIR} ${ETCDIR}; \
	for f in ${ETCFILES}; do \
		${INSTALL_DATA} ${WRKBASE}/$$f ${ETCDIR}/$${f##*/}.sample; \
		if [ ! -f ${ETCDIR}/$${f##*/} ]; then \
		${CP} -p ${ETCDIR}/$${f##*/}.sample ${ETCDIR}/$${f##*/}; \
		fi; \
	done

.if !defined(NOPORTDOCS)
	${MKDIR} ${DOCSDIR} && \
	(cd ${WRKBASE} && ${COPYTREE_SHARE} "${DOCFILES}" ${DOCSDIR})

	${MKDIR} ${DOCSDIR}/docs/api/jala && \
	(cd ${WRKBASE}/modules/jala/docs && ${COPYTREE_SHARE} \* ${DOCSDIR}/docs/api/jala)
.endif

.if defined(WITH_MYSQL)
	${LN} -sf ${JAVALIBDIR}/mysql-connector-java.jar ${DATADIR}/lib/ext/mysql-connector-java.jar
.endif

.include <bsd.port.post.mk>
OpenPOWER on IntegriCloud