Name: perl-Net-AMQP-RabbitMQ Version: 1.400000 Release: 1%{?dist} Summary: Interact with RabbitMQ over AMQP using librabbitmq # amqp_*.c: MIT (bundled from rabbitmq-0.7.1) # threads.c: MIT (bundled from rabbitmq-0.7.1) # rabbitmq-include: MIT (bundled from rabbitmq-0.7.1) # ppport.h: GPL+ or Artistic # perl_math_int64.c: Public Domain (bundled from Math-Int64-0.49_1) # perl_math_int64.h: Public Domain (bundled from Math-Int64-0.49_1) # RabbitMQ.pm: MPLv1.1 # Makefile.PL: MPLv1.1 # LICENSE-MIT: MPLv1.1 # LICENSE: This is MPLv1.1 ## Not in the binary package # inc/Devel/CheckLib.pm: GPL+ or Artistic # rabbitmq-include/win32/msinttypes/stdint.h: BSD (bundled from # rabbitmq-0.7.1) License: MPLv1.1 and MIT and (GPL+ or Artistic) Group: Development/Libraries URL: http://search.cpan.org/dist/Net-AMQP-RabbitMQ/ Source0: http://www.cpan.org/modules/by-module/Net/Net-AMQP-RabbitMQ-%{version}.tar.gz # Unbundle rabbitmq # Patch0: Net-AMQP-RabbitMQ-1.400000-Unbundle-rabbitmq.patch BuildRequires: coreutils BuildRequires: findutils BuildRequires: gcc BuildRequires: make BuildRequires: perl BuildRequires: perl-devel BuildRequires: perl(Config) # Devel::CheckLib not used after unbundling rabbitmq BuildRequires: perl(ExtUtils::MakeMaker) >= 5.16 BuildRequires: perl(lib) BuildRequires: perl(utf8) BuildRequires: perl(strict) BuildRequires: perl(warnings) BuildRequires: pkgconfig(librabbitmq) >= 0.7.1 BuildRequires: sed # Optional features: # openssl-devel not used after unbundling rabbitmq # Run-time: # Math::Int64 loaded from XS BuildRequires: perl(Math::Int64) >= 0.34 BuildRequires: perl(Scalar::Util) BuildRequires: perl(XSLoader) # Tests BuildRequires: perl(Carp) BuildRequires: perl(FindBin) BuildRequires: perl(overload) BuildRequires: perl(Test::More) BuildRequires: perl(Time::HiRes) # Optional tests: BuildRequires: perl(JSON) BuildRequires: perl(LWP::UserAgent) BuildRequires: rabbitmq-server Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version)) %description This is a fork of Net::RabbitMQ. It provides a simple wrapper around the librabbitmq library that allows connecting, declaring exchanges and queues, binding and unbinding queues, publishing, consuming and receiving events. This Perl module only works with the AMQP 0.9.1 protocol. %prep %setup -q -n Net-AMQP-RabbitMQ-%{version} %patch0 -p1 # Remove bundled modules rm -r ./inc sed -i -e '/^inc\//d' MANIFEST # Remove bundled rabbitmq rm -r amqp_* rabbitmq-include sed -i -e '/^amqp_/d' -e '/^rabbitmq-include\//d' MANIFEST # FIXME: Unbundle perl_math_int64 # Remove on-line tests rm t/030_ssl.t sed -i -e '/t\/030_ssl\.t/d' MANIFEST %build perl Makefile.PL INSTALLDIRS=vendor OPTIMIZE="$RPM_OPT_FLAGS" make %{?_smp_mflags} %install make pure_install DESTDIR=$RPM_BUILD_ROOT find $RPM_BUILD_ROOT -type f -name .packlist -exec rm -f {} \; %{_fixperms} $RPM_BUILD_ROOT/* %check # Start rabbitmq server mkdir $RPM_BUILD_ROOT/{etc,lib,log} export RABBITMQ_ENABLED_PLUGINS_FILE=$RPM_BUILD_ROOT/etc/enabled_plugins export RABBITMQ_MNESIA_BASE=$RPM_BUILD_ROOT/lib export RABBITMQ_LOG_BASE=$RPM_BUILD_ROOT/log # rabbitmq_management plugin required for t/024_boolean_header_fields.t # connecting to TCP/15672 port. /usr/lib/rabbitmq/bin/rabbitmq-plugins enable rabbitmq_management /usr/lib/rabbitmq/bin/rabbitmq-server & # rabbitmqctl wait does not work while ! grep -q 'Server startup complete' $RPM_BUILD_ROOT/log/*.log; do sleep 1 done # Perform tests # See for default credentials. MQHOST=localhost MQUSERNAME=guest MQPASSWORD=guest make test || RETVAL=$? # Stop the rabbitmq server /usr/lib/rabbitmq/bin/rabbitmqctl stop # An epmd process keeps running, no way how to kill only the one spawned by # the rabbitmq-server script. rm -Rf $RPM_BUILD_ROOT/{etc,lib,log} exit $RETVAL %files %license LICENSE LICENSE-MIT %doc Changes %{perl_vendorarch}/auto/* %{perl_vendorarch}/Net* %{_mandir}/man3/* %changelog * Thu Dec 03 2015 Petr Pisar - 1.400000-1 - 1.400000 bump * Wed Jan 14 2015 David Dick - 0.008000-1 - Initial release