diff options
Diffstat (limited to 'www/rt44/Makefile')
-rw-r--r-- | www/rt44/Makefile | 212 |
1 files changed, 212 insertions, 0 deletions
diff --git a/www/rt44/Makefile b/www/rt44/Makefile new file mode 100644 index 000000000000..f20dd960384c --- /dev/null +++ b/www/rt44/Makefile @@ -0,0 +1,212 @@ +# $FreeBSD$ + +PORTNAME= rt +DISTVERSION= 4.4.0 +CATEGORIES= www +MASTER_SITES= http://download.bestpractical.com/pub/rt/release/ +PKGNAMESUFFIX= 44 + +MAINTAINER= mikael.urankar@gmail.com +COMMENT= RT is an industrial-grade ticketing system written in Perl + +LICENSE= GPLv2 + +CONFLICTS_INSTALL= rt-3.8* rt40-4.0* rt42-4.2* brlcad-[0-9]* + +NO_ARCH= yes + +# See doc/web_deployment.pod for info on the choices of webserver / +# webapp combinations. Note: if using apache, apache-2.4+ is +# recommended. For deployment with nginx, use the SPAWN_FCGI method +# or the builtin webserver with a FCGI handler. +# +# The builtin standalone PSGI based webserver is always available, no +# matter what choice of web deployment platform, or none, that you +# make. Best Practical state that this is really only suitable for +# development usage, although I have heard reports of people using it +# successfully for medium sized deployments. If you only want the +# builtin webserver, simply deselect all of the web options. +# +# See doc/full_text_indexing.pod if you need to set up full text +# indexes on your ticket database. PostgreSQL or Oracle are +# recommended in this case: the MYSQL / SphinxSearch combination +# mentioned in the docs is currently unsupported in the ports, but see +# http://www.infracaninophile.co.uk/articles/sphinxse.html + +OPTIONS_DEFINE= DEVELOPER GD GPG GRAPHVIZ SMIME DOCS +OPTIONS_SINGLE= DB +OPTIONS_SINGLE_DB= MYSQL ORACLE PGSQL SQLITE +OPTIONS_RADIO= WEB +OPTIONS_RADIO_WEB= AP_MODFASTCGI AP_MODPERL LIGHTTPD SPAWN_FCGI + +OPTIONS_DEFAULT= AP_MODFASTCGI GD GPG MYSQL + +USERS?= www +GROUPS?= rt www + +RUN_DEPENDS+= ${LOCALBASE}/bin/jsmin:devel/jsmin + +.include "${.CURDIR}/Makefile.cpan" + +RUN_DEPENDS+= ${CLI_DEPS} \ + ${CORE_DEPS} \ + ${DASHBOARDS_DEPS} \ + ${ICAL_DEPS} \ + ${MAILGATE_DEPS} \ + ${USERLOGO_DEPS} \ + ${HTML_DOC_DEPS} + +USES= cpe perl5 +CPE_VENDOR= bestpractical + +RT_LAYOUT= FreeBSD +RT_ETC_DIR?= etc/${PORTNAME}${PKGNAMESUFFIX} +DOCSDIR= ${PREFIX}/share/doc/${PORTNAME}${PKGNAMESUFFIX} +DATADIR= ${PREFIX}/share/${PORTNAME}${PKGNAMESUFFIX} +RT_ETC_PATH= ${PREFIX}/${RT_ETC_DIR} + +AP_MODPERL_DESC= Deploy with apache and mod_perl +AP_MODPERL_RUN_DEPENDS= ${MODPERL2_DEPS} + +AP_MODFASTCGI_DESC= Deploy with apache and mod_fastcgi +AP_MODFASTCGI_USE= APACHE_RUN=22+ +AP_MODFASTCGI_RUN_DEPENDS= ${LOCALBASE}/${APACHEMODDIR}/mod_fastcgi.so:www/mod_fastcgi \ + ${FASTCGI_DEPS} + +LIGHTTPD_DESC= Deploy with lighttpd and mod_fastcgi +LIGHTTPD_RUN_DEPENDS= ${LOCALBASE}/sbin/lighttpd:www/lighttpd \ + ${FASTCGI_DEPS} + +SPAWN_FCGI_DESC= Deploy with spawn_fcgi +SPAWN_FCGI_RUN_DEPENDS= ${LOCALBASE}/bin/spawn-fcgi:www/spawn-fcgi \ + ${FASTCGI_DEPS} + +MYSQL_RUN_DEPENDS= ${MYSQL_DEPS} + +PGSQL_RUN_DEPENDS= ${PGSQL_DEPS} + +ORACLE_RUN_DEPENDS= ${ORACLE_DEPS} + +SQLITE_RUN_DEPENDS= ${SQLITE_DEPS} + +DEVELOPER_DESC= Configure for Developers +DEVELOPER_RUN_DEPENDS= ${DEVELOPER_DEPS} +DEVELOPER_CONFIGURE_ENABLE= developer + +SMIME_DESC= Enable Secure MIME support +SMIME_RUN_DEPENDS= ${SMIME_DEPS} +SMIME_CONFIGURE_ENABLE= smime + +GRAPHVIZ_RUN_DEPENDS= ${GRAPHVIZ_DEPS} +GRAPHVIZ_CONFIGURE_ENABLE= graphviz + +GPG_DESC= Enable GnuPG support +GPG_RUN_DEPENDS= ${GPG_DEPS} +GPG_CONFIGURE_ENABLE= gpg + +GD_DESC= Enable GD Graphs and Charts +GD_RUN_DEPENDS= ${GD_DEPS} +GD_CONFIGURE_ENABLE= gd + +BUILD_DEPENDS+= ${RUN_DEPENDS} + +.include <bsd.port.options.mk> + +.if !${PORT_OPTIONS:MMYSQL} && !${PORT_OPTIONS:MPGSQL} && \ + ! ${PORT_OPTIONS:MORACLE} && !${PORT_OPTIONS:MSQLITE} +IGNORE= please select one of MYSQL, PGSQL, ORACLE or SQLITE +.endif + +.if ${PORT_OPTIONS:MMYSQL} +DB_TYPE= mysql +.endif + +.if ${PORT_OPTIONS:MPGSQL} +DB_TYPE= Pg +.endif + +.if ${PORT_OPTIONS:MORACLE} +DB_TYPE= Oracle +.endif + +.if ${PORT_OPTIONS:MSQLITE} +DB_TYPE= SQLite +.endif + +.if ${PORT_OPTIONS:MPGSQL} +DB_DBA_USER?= pgsql +.else +DB_DBA_USER?= root +.endif +DB_DBA_PASSWORD?= +DB_USER?= rt_user +DB_PASSWORD?= rt_pass +DB_HOST?= localhost +DB_DATABASE?= rt4 + +WEB_USER?= ${WWWOWN} +WEB_GROUP?= ${WWWGRP} +LIBS_GROUP?= wheel + +HAS_CONFIGURE= yes +NO_BUILD= yes + +CONFIGURE_ARGS+= --enable-layout=${RT_LAYOUT} \ + --with-web-user=${WEB_USER} \ + --with-web-group=${WEB_GROUP} \ + --with-libs-group=${LIBS_GROUP} \ + --with-db-host=${DB_HOST} \ + --with-db-port=${DB_PORT} \ + --with-db-type=${DB_TYPE} \ + --with-db-rt-user=${DB_USER} \ + --with-db-rt-pass=${DB_PASSWORD} \ + --with-db-database=${DB_DATABASE} \ + --with-db-dba=${DB_DBA_USER} + +CONFIGURE_ENV+= PERL=${LOCALBASE}/bin/perl + +PKGMESSAGE= ${WRKDIR}/pkg-message +SUB_FILES= pkg-message +SUB_LIST= RT_ETC_PATH=${RT_ETC_PATH} +PLIST_SUB= RT_ETC_DIR=${RT_ETC_DIR} + +pre-fetch: + @${ECHO} "" + @${ECHO} "Additional database related settings you can use:" + @${ECHO} " DB_HOST=hostname The database host (localhost)" + @${ECHO} " DB_PORT=port The database port" + @${ECHO} " DB_DATABASE=dbname The database name (rt4)" + @${ECHO} "" + @${ECHO} " DB_DBA_USER=username Name of database administrator (root)" + @${ECHO} " DB_DBA_PASSWORD=password Password of database administrator" + @${ECHO} " DB_USER=username Name of database user for RT (rt_user)" + @${ECHO} " DB_PASSWORD=password Name of database password for RT (rt_pass)" +.if ${PORT_OPTIONS:MSQLITE} + @${ECHO} "" + @${ECHO} "SQLITE is not recommended for production use" +.endif + +post-patch: + @${RM} -f ${WRKSRC}/lib/RT.pm.in.orig + @${REINPLACE_CMD} -e 's!%%PREFIX%%!${PREFIX}!g' ${WRKSRC}/config.layout + @${REINPLACE_CMD} -e 's!%%SITE_PERL%%!${PREFIX}/${SITE_PERL_REL}!g' ${WRKSRC}/config.layout + @${REINPLACE_CMD} -e 's!/path/to/your/etc!${RT_ETC_PATH}!g' ${WRKSRC}/etc/RT_SiteConfig.pm + @${REINPLACE_CMD} -e 's!/bin:/usr/bin!/bin:/usr/bin:${LOCALBASE}/bin!' ${WRKSRC}/lib/RT/Interface/CLI.pm && \ + ${RM} ${WRKSRC}/lib/RT/Interface/CLI.pm.bak + +pre-install: + @${RM} -f ${WRKSRC}/lib/RT.pm.in + +post-install: + @${RM} -rf ${STAGEDIR}/${WWWDIR}${PKGNAMESUFFIX} + ${MKDIR} ${STAGEDIR}${DOCSDIR}/upgrade + (cd ${WRKSRC}/etc && \ + ${COPYTREE_SHARE} upgrade ${STAGEDIR}${DOCSDIR} "! -name *\.in") + +.include <bsd.port.pre.mk> + +.if ${PERL_LEVEL} >= 502200 +CORE_DEPS+= p5-CGI>4.0:www/p5-CGI +.endif + +.include <bsd.port.post.mk> |