blob: b52a5c78317ec9290ebc9c371cf6e8a1bf765f5e (
plain) (
blame)
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
123
124
125
126
127
128
129
|
# ports collection makefile for: jboss2
# Date created: 16 April 2002
# Whom: Ernst de Haan <znerd@FreeBSD.org>
#
# $FreeBSD$
#
PORTNAME= ${APP_TITLE:L}
PORTVERSION= 3.2.3
CATEGORIES= java
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR= ${PORTNAME}
DISTNAME= ${PORTNAME}-${PORTVERSION}-src
MAINTAINER= jonc@chen.org.nz
COMMENT= JBoss 3, an open-source J2EE application server
USE_JAVA= 1.3+
USE_REINPLACE= YES
USE_BZIP2= YES
.if !defined(NOPORTDOCS)
PORTDOCS= *
.endif
APP_HOME?= ${PREFIX}/${PKGBASE}${PORTVERSION:R}
DOCSDIR= ${PREFIX}/share/doc/${PKGBASE}${PORTVERSION:R}
LOG_DIR= ${APP_HOME}/log
PLIST_SUB+= T=${APP_HOME:S/^${PREFIX}\///}
APP_TITLE= JBoss
APP_SHORTNAME= ${PORTNAME}${PORTVERSION:R:R}
CONTROL_SCRIPT_NAME= ${APP_SHORTNAME}ctl
CONTROL_SCRIPT= ${PREFIX}/bin/${CONTROL_SCRIPT_NAME}
CONTROL_SCRIPT_MANPAGE_TITLE= ${CONTROL_SCRIPT_NAME:U}
STARTUP_ORDER= 020
STARTUP_SCRIPT_NAME= ${APP_SHORTNAME}.sh
STARTUP_SCRIPT= ${PREFIX}/etc/rc.d/${STARTUP_ORDER}.${STARTUP_SCRIPT_NAME}
USER= www
GROUP= www
STDOUT_LOG= ${LOG_DIR}/stdout.log
STDERR_LOG= ${LOG_DIR}/stderr.log
AUTO_START?= NO
STOP_TIMEOUT?= 5
PID_FILE= /var/run/${APP_SHORTNAME}.pid
JAR_FILE= bin/run.jar
DAEMONCTL_DIR= ${PORTSDIR}/www/jakarta-tomcat4/files
DAEMONCTL_FILES=daemonctl.c daemonctl.1 startup.sh
MAN1= ${CONTROL_SCRIPT_NAME}.1
JBOSSOUTPUT= ${WRKSRC}/build/output/${PORTNAME}-${PORTVERSION}
.include <bsd.port.pre.mk>
do-configure:
@(cd ${DAEMONCTL_DIR} && ${CP} ${DAEMONCTL_FILES} ${WRKDIR})
@(cd ${WRKDIR} && ${REINPLACE_CMD} \
-e "s|%%APP_HOME%%|${APP_HOME}|g;" \
-e "s|%%APP_SHORTNAME%%|${APP_SHORTNAME}|g;" \
-e "s|%%APP_TITLE%%|${APP_TITLE}|g;" \
-e "s|%%CONTROL_SCRIPT%%|${CONTROL_SCRIPT}|g;" \
-e "s|%%CONTROL_SCRIPT_MANPAGE_TITLE%%|${CONTROL_SCRIPT_MANPAGE_TITLE}|g;" \
-e "s|%%CONTROL_SCRIPT_NAME%%|${CONTROL_SCRIPT_NAME}|g;" \
-e "s|%%GROUP%%|${GROUP}|g;" \
-e "s|%%JAR_ARGS%%||g;" \
-e "s|%%JAVA_ARGS%%||g;" \
-e "s|%%JAVA_CMD%%|bin/java|g;" \
-e "s|%%JAVA_HOME%%|${JAVA_HOME}|g;" \
-e "s|%%JAR_FILE%%|${JAR_FILE}|g;" \
-e "s|%%LOG_DIR%%|${LOG_DIR}|g;" \
-e "s|%%PID_FILE%%|${PID_FILE}|g;" \
-e "s|%%PORTNAME%%|${PORTNAME}|g;" \
-e "s|%%PORTVERSION%%|${PORTVERSION}|g;" \
-e "s|%%PREFIX%%|${PREFIX}|g;" \
-e "s|%%STARTUP_SCRIPT_NAME%%|${STARTUP_SCRIPT_NAME}|g;" \
-e "s|%%STDERR_LOG%%|${STDERR_LOG}|g;" \
-e "s|%%STDOUT_LOG%%|${STDOUT_LOG}|g;" \
-e "s|%%STOP_TIMEOUT%%|${STOP_TIMEOUT}|g;" \
-e "s|%%USER%%|${USER}|g;" ${DAEMONCTL_FILES})
post-configure:
@${ECHO_CMD} "Installation settings:"
@${ECHO_CMD} " Destination directory: ${APP_HOME}"
@${ECHO_CMD} " Control program location: ${CONTROL_SCRIPT}"
@${ECHO_CMD} " Startup script location: ${STARTUP_SCRIPT}"
@${ECHO_CMD} " Location of JDK: ${JAVA_HOME}"
@${ECHO_CMD} " Location of Java port: ${JAVA_PORT}"
@${ECHO_CMD} " Using Jikes: ${WITH_JIKES}"
@${ECHO_CMD} " Running as (user/group): ${USER}/${GROUP}"
@${ECHO_CMD} " HTTP port: ${HTTP_PORT}"
@${ECHO_CMD} " RMI port: ${RMI_PORT}"
@${ECHO_CMD} " Logfile stdout: ${STDOUT_LOG}"
@${ECHO_CMD} " Logfile stderr: ${STDERR_LOG}"
@${ECHO_CMD} " Starting after install: ${AUTO_START}"
@${ECHO_CMD} " Stop time-out: ${STOP_TIMEOUT} sec."
do-build:
(cd ${WRKDIR} && ${CC} ${CFLAGS} -o ${CONTROL_SCRIPT_NAME} daemonctl.c)
(cd ${WRKSRC}/build && ${SETENV} JAVA_HOME=${JAVA_HOME} PATH=${PATH}:${JAVA_HOME}/bin ${SH} build.sh)
pre-install:
@PKG_PREFIX=${PREFIX} ${SH} pkg-install ${PKGNAME} PRE-INSTALL
do-install:
${MKDIR} ${APP_HOME} && ${CHOWN} ${USER}:${GROUP} ${APP_HOME}
${MKDIR} ${LOG_DIR} && ${CHOWN} ${USER}:${GROUP} ${LOG_DIR}
(cd ${JBOSSOUTPUT} && ${FIND} bin client lib server |\
${CPIO} -pdmu -R ${USER}:${GROUP} ${APP_HOME})
${INSTALL} -o ${USER} -g ${GROUP} -m 06754\
${WRKDIR}/${CONTROL_SCRIPT_NAME} ${CONTROL_SCRIPT}
${INSTALL_SCRIPT} ${WRKDIR}/startup.sh ${STARTUP_SCRIPT}
${INSTALL} -o ${USER} -g ${GROUP} -m 0640 /dev/null ${STDOUT_LOG}
${INSTALL} -o ${USER} -g ${GROUP} -m 0640 /dev/null ${STDERR_LOG}
${INSTALL} -o ${USER} -g ${GROUP} -m 0640 /dev/null ${PID_FILE}
${INSTALL_MAN} ${WRKDIR}/daemonctl.1 ${MANPREFIX}/man/man1/${CONTROL_SCRIPT_NAME}.1
.if !defined(NOPORTDOCS)
${MKDIR} ${DOCSDIR}
${CP} -r ${JBOSSOUTPUT}/docs/* ${DOCSDIR}
.endif
post-install:
@${ECHO_CMD} "${PKGNAME} has been installed in ${APP_HOME}."
@${ECHO_CMD} "If a user should be able to use ${CONTROL_SCRIPT_NAME}, put it in the group ${GROUP}."
@${ECHO_CMD} "Use 'man ${CONTROL_SCRIPT_NAME}' for information about starting and stopping ${PORTNAME}."
.if ${AUTO_START} == "YES"
@${CONTROL_SCRIPT} start || true
.endif
.include <bsd.port.post.mk>
|