# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4 # $Id: Portfile 120912 2014-06-11 13:10:52Z ciserlohn@macports.org $ PortSystem 1.0 name rabbitmq-server version 3.1.5 revision 1 categories net platforms darwin license MPL-1.1 MIT Apache-2 supported_archs noarch maintainers paperplanes.de:meyer openmaintainer description The RabbitMQ AMQP Server long_description \ RabbitMQ is an implementation of AMQP, the emerging standard for \ high performance enterprise messaging. The RabbitMQ server is a \ robust and scalable implementation of an AMQP broker. homepage http://www.rabbitmq.com/ master_sites http://www.rabbitmq.com/releases/rabbitmq-server/v${version}/ distfiles ${name}-${version}${extract.suffix} \ ${name}-generic-unix-${version}${extract.suffix} checksums \ ${name}-${version}${extract.suffix} \ rmd160 b486ce1289fb721b63d9401b3f9994adeba1c053 \ sha256 c6952bdd0f0d9551fa4a068e65ad6506583a3e81babbb4e4747e0073366a6c35 \ ${name}-generic-unix-${version}${extract.suffix} \ rmd160 84b4cab15893eedfa2fbce80e7dfdbcc9cb4e536 \ sha256 bf76aa8bdb59a412187c66a7a0739f2b18b069fd3af3fc6e1f66b0518d73978f depends_lib port:erlang depends_build port:libxslt \ port:git platform darwin 8 { depends_build-append port:py26-simplejson build.args PYTHON=${prefix}/bin/python2.6 } platform darwin 9 { depends_build-append port:py26-simplejson build.args PYTHON=${prefix}/bin/python2.6 } # no need for simplejson on Snow Leopard or higher set serveruser rabbitmq set servergroup rabbitmq set serverhome ${prefix}/var/lib/rabbitmq set logdir ${prefix}/var/log/rabbitmq set confdir ${prefix}/etc/rabbitmq set mnesiadbdir ${prefix}/var/lib/rabbitmq/mnesia set plistloc ${prefix}/etc/LaunchDaemons/org.macports.rabbitmq-server set sbindir ${destroot}${prefix}/lib/rabbitmq/bin set wrappersbin ${destroot}${prefix}/sbin set realsbin ${destroot}${prefix}/lib/rabbitmq/lib/rabbitmq_server-${version}/sbin set mansrc ${workpath}/rabbitmq_server-${version}/share/man set mandest ${destroot}${prefix}/share/man use_configure no use_parallel_build no build.env-append HOME=${workpath} build.env-append VERSION=${version} destroot.env-append VERSION=${version} destroot.target install_bin destroot.destdir \ TARGET_DIR=${destroot}${prefix}/lib/rabbitmq/lib/rabbitmq_server-${version} \ SBIN_DIR=${sbindir} \ MAN_DIR=${destroot}${prefix}/share/man destroot.keepdirs \ ${destroot}${confdir} \ ${destroot}${logdir} \ ${destroot}${mnesiadbdir} pre-destroot { addgroup ${servergroup} add_users ${serveruser} gid=[existsgroup ${servergroup}] realname=RabbitMQ\ Server home=${serverhome} } post-destroot { xinstall -d -m 775 ${destroot}${confdir} xinstall -d -g [existsgroup ${servergroup}] -m 775 ${destroot}${logdir} xinstall -d -g [existsgroup ${servergroup}] -m 775 ${destroot}${serverhome} xinstall -d -g [existsgroup ${servergroup}] -m 775 ${destroot}${mnesiadbdir} reinplace -E "s:^SYS_PREFIX=\${RABBITMQ_HOME}$:SYS_PREFIX=${prefix}:" \ ${realsbin}/rabbitmq-defaults reinplace -E "s:^SYS_PREFIX=$:SYS_PREFIX=${prefix}:" \ ${realsbin}/rabbitmq-defaults xinstall -m 555 ${filespath}/rabbitmq-script-wrapper \ ${wrappersbin}/rabbitmq-server reinplace -E "s:@MACPORTS_PREFIX@:${prefix}:g" \ ${wrappersbin}/rabbitmq-server reinplace -E "s:/usr/lib/rabbitmq/bin/:${prefix}/lib/rabbitmq/bin/:g" \ ${wrappersbin}/rabbitmq-server reinplace -E "s:/var/lib/rabbitmq:${prefix}/var/lib/rabbitmq:g" \ ${wrappersbin}/rabbitmq-server file copy ${wrappersbin}/rabbitmq-server ${wrappersbin}/rabbitmqctl file copy ${wrappersbin}/rabbitmq-server ${wrappersbin}/rabbitmq-plugins xinstall -m 644 -W ${mansrc}/man1 rabbitmq-server.1.gz rabbitmqctl.1.gz rabbitmq-plugins.1.gz \ ${mandest}/man1/ xinstall -m 644 -W ${mansrc}/man5 rabbitmq-env.conf.5.gz ${mandest}/man5/ } pre-install { system "cd ${destroot}${plistloc}; patch <${filespath}/patch-org.macports.rabbitmq-server.plist.diff" } startupitem.create yes startupitem.init "PATH=${prefix}/bin:${prefix}/sbin:\$PATH; export PATH" startupitem.start "rabbitmq-server 2>&1" startupitem.stop "rabbitmqctl stop 2>&1" startupitem.logfile ${prefix}/var/log/rabbitmq/startupitem.log livecheck.type regex livecheck.url http://www.rabbitmq.com/releases/rabbitmq-server/current/ livecheck.regex "${name}-(\\d+(?:\\.\\d+)*)${extract.suffix}"