[61262] trunk/dports/net/rabbitmq-server

febeling at macports.org febeling at macports.org
Mon Dec 7 04:16:52 PST 2009


Revision: 61262
          http://trac.macports.org/changeset/61262
Author:   febeling at macports.org
Date:     2009-12-07 04:16:49 -0800 (Mon, 07 Dec 2009)
Log Message:
-----------
net/rabbitmq-server: add plugin support; remove python dep for snow leopard; add run-as-root wrapper (on behalf of paperplanes.de:meyer).

Modified Paths:
--------------
    trunk/dports/net/rabbitmq-server/Portfile
    trunk/dports/net/rabbitmq-server/files/rabbitmq-script-wrapper

Added Paths:
-----------
    trunk/dports/net/rabbitmq-server/files/rabbitmq-asroot-script-wrapper

Modified: trunk/dports/net/rabbitmq-server/Portfile
===================================================================
--- trunk/dports/net/rabbitmq-server/Portfile	2009-12-07 10:54:50 UTC (rev 61261)
+++ trunk/dports/net/rabbitmq-server/Portfile	2009-12-07 12:16:49 UTC (rev 61262)
@@ -1,15 +1,15 @@
 # -*- 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$
 
-PortSystem      1.0
-name            rabbitmq-server
-version         1.7.0
-revision        0
-categories      net 
-maintainers     paperplanes.de:meyer rabbitmq.com:tonyg openmaintainer
-platforms       darwin
-description     The RabbitMQ AMQP Server
-long_description    \
+PortSystem 1.0
+name		rabbitmq-server
+version		1.7.0
+revision	1
+categories	net 
+maintainers	paperplanes.de:meyer rabbitmq.com:tobyg openmaintainer
+platforms	darwin
+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.
@@ -23,9 +23,24 @@
     sha1 84fb86d403057bb808c1b51deee0c1fca3bf7bef \
     rmd160 092f90946825cc3eb277019805e24db637a559f4
 
-depends_build   port:erlang port:py25-simplejson
+depends_build   port:erlang
 depends_run     port:erlang
 
+platform darwin 7 {
+    depends_build-append port:py25-simplejson
+    build.args      PYTHON=${prefix}/bin/python2.5
+}
+platform darwin 8 {
+    depends_build-append port:py25-simplejson
+    build.args      PYTHON=${prefix}/bin/python2.5
+}
+platform darwin 9 {
+    depends_build-append port:py25-simplejson
+    build.args      PYTHON=${prefix}/bin/python2.5
+}
+# no need for simplejson on Snow Leopard or higher
+
+
 set serveruser  rabbitmq
 set servergroup rabbitmq
 set serverhome ${prefix}/var/lib/rabbitmq
@@ -34,15 +49,14 @@
 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
 
 use_configure   no
 
 use_parallel_build yes
 
-build.args      PYTHON=${prefix}/bin/python2.5
-
 destroot.destdir \
-    TARGET_DIR=${destroot}${prefix}/lib/erlang/lib/rabbitmq_server-${version} \
+    TARGET_DIR=${destroot}${prefix}/lib/rabbitmq/lib/rabbitmq_server-${version} \
     SBIN_DIR=${sbindir} \
     MAN_DIR=${destroot}${prefix}/share/man
 
@@ -61,36 +75,40 @@
     xinstall -d -g [existsgroup ${servergroup}] -m 775 ${destroot}${mnesiadbdir}
 
     reinplace -E "s:(/etc/rabbitmq/rabbitmq.conf):${prefix}\\1:g" \
-        ${sbindir}/rabbitmq-multi \
-        ${sbindir}/rabbitmq-server \
-        ${sbindir}/rabbitmqctl
+        ${realsbin}/rabbitmq-env
     reinplace -E "s:(CLUSTER_CONFIG_FILE)=/:\\1=${prefix}/:" \
-        ${sbindir}/rabbitmq-multi \
-        ${sbindir}/rabbitmq-server \
-        ${sbindir}/rabbitmqctl
+        ${realsbin}/rabbitmq-multi \
+        ${realsbin}/rabbitmq-server \
+        ${realsbin}/rabbitmqctl
     reinplace -E "s:(LOG_BASE)=/:\\1=${prefix}/:" \
-        ${sbindir}/rabbitmq-multi \
-        ${sbindir}/rabbitmq-server \
-        ${sbindir}/rabbitmqctl
+        ${realsbin}/rabbitmq-multi \
+        ${realsbin}/rabbitmq-server \
+        ${realsbin}/rabbitmqctl
     reinplace -E "s:(MNESIA_BASE)=/:\\1=${prefix}/:" \
-        ${sbindir}/rabbitmq-multi \
-        ${sbindir}/rabbitmq-server \
-        ${sbindir}/rabbitmqctl
+        ${realsbin}/rabbitmq-multi \
+        ${realsbin}/rabbitmq-server \
+        ${realsbin}/rabbitmqctl
     reinplace -E "s:(PIDS_FILE)=/:\\1=${prefix}/:" \
-        ${sbindir}/rabbitmq-multi \
-        ${sbindir}/rabbitmq-server \
-        ${sbindir}/rabbitmqctl
+        ${realsbin}/rabbitmq-multi \
+        ${realsbin}/rabbitmq-server \
+        ${realsbin}/rabbitmqctl
 
     xinstall -m 555 ${filespath}/rabbitmq-script-wrapper \
                 ${wrappersbin}/rabbitmq-multi
+    xinstall -m 555 ${filespath}/rabbitmq-asroot-script-wrapper \
+                ${wrappersbin}/rabbitmq-activate-plugins
 
     reinplace -E "s:/usr/lib/rabbitmq/bin/:${prefix}/lib/rabbitmq/bin/:" \
                 ${wrappersbin}/rabbitmq-multi
     reinplace -E "s:/var/lib/rabbitmq:${prefix}/var/lib/rabbitmq:" \
                 ${wrappersbin}/rabbitmq-multi
+    reinplace -E "s:/usr/lib/rabbitmq/bin/:${prefix}/lib/rabbitmq/bin/:" \
+                ${wrappersbin}/rabbitmq-activate-plugins
+    reinplace -E "s:/var/lib/rabbitmq:${prefix}/var/lib/rabbitmq:" \
+                ${wrappersbin}/rabbitmq-activate-plugins
     file copy ${wrappersbin}/rabbitmq-multi ${wrappersbin}/rabbitmq-server
     file copy ${wrappersbin}/rabbitmq-multi ${wrappersbin}/rabbitmqctl
-
+    file copy ${wrappersbin}/rabbitmq-activate-plugins ${wrappersbin}/rabbitmq-deactivate-plugins
 }
 
 pre-install {

Added: trunk/dports/net/rabbitmq-server/files/rabbitmq-asroot-script-wrapper
===================================================================
--- trunk/dports/net/rabbitmq-server/files/rabbitmq-asroot-script-wrapper	                        (rev 0)
+++ trunk/dports/net/rabbitmq-server/files/rabbitmq-asroot-script-wrapper	2009-12-07 12:16:49 UTC (rev 61262)
@@ -0,0 +1,12 @@
+#!/bin/bash
+cd /var/lib/rabbitmq
+
+SCRIPT=`basename $0`
+
+if [ `id -u` = 0 ] ; then
+    /usr/lib/rabbitmq/bin/${SCRIPT} "$@"
+else
+    echo -e "\nOnly root should run ${SCRIPT}\n"
+    exit 1
+fi
+

Modified: trunk/dports/net/rabbitmq-server/files/rabbitmq-script-wrapper
===================================================================
--- trunk/dports/net/rabbitmq-server/files/rabbitmq-script-wrapper	2009-12-07 10:54:50 UTC (rev 61261)
+++ trunk/dports/net/rabbitmq-server/files/rabbitmq-script-wrapper	2009-12-07 12:16:49 UTC (rev 61262)
@@ -4,10 +4,12 @@
 SCRIPT=`basename $0`
 
 if [ `id -u` = 0 ] ; then
-    exec sudo -u rabbitmq -H /usr/lib/rabbitmq/bin/${SCRIPT} "$@"
+    sudo -u rabbitmq -H /usr/lib/rabbitmq/bin/${SCRIPT} "$@"
+elif [ `id -u` = `id -u rabbitmq` ] ; then
+    /usr/lib/rabbitmq/bin/${SCRIPT} "$@"
 else
     /usr/lib/rabbitmq/bin/${SCRIPT}
-    echo -e "\nOnly root should run ${SCRIPT}\n"
+    echo -e "\nOnly root or rabbitmq should run ${SCRIPT}\n"
     exit 1
 fi
 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20091207/da36a12a/attachment-0001.html>


More information about the macports-changes mailing list