Skip Menu |

This queue is for tickets about the TaskForest CPAN distribution.

Report information
The Basics
Id: 64587
Status: new
Priority: 0/
Queue: TaskForest

People
Owner: Nobody in particular
Requestors: nkadel [...] gmail.com
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: 1.37
Fixed in: (no value)



The requirements in META.yml seem to be too aggressive. This causes difficulty compiling on RHEL 5, which can be overcome by ignoring dependencies, but that makes RPM bundling it awkward. I've included a patch for META.yml, and .SPEC file to go with it.
Subject: perl-TaskForest-1.37.meta.patch
Lower version requirements for compatibility with RHEL 5, which passes almost all tests as is. Nico Kadel-Garcia <nkadel@gmail.com> 2011/01/07 *** TaskForest-1.37/META.yml.meta 2010-03-24 00:15:00.000000000 -0400 --- TaskForest-1.37/META.yml 2011-01-07 14:21:01.348031000 -0500 *************** *** 10,21 **** requires: Config::General: 2.38 DateTime: 0 ! HTTP::Daemon: 5.818 ! HTTP::Request: 5.818 ! HTTP::Response: 5.82 ! HTTP::Status: 5.817 ! Log::Log4perl: 1.16 ! Net::SMTP: 2.31 Test::Simple: 0.44 meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.3.html --- 10,21 ---- requires: Config::General: 2.38 DateTime: 0 ! HTTP::Daemon: 1.36 ! HTTP::Request: 1.40 ! HTTP::Response: 1.53 ! HTTP::Status: 1.28 ! Log::Log4perl: 1.13 ! Net::SMTP: 2.29 Test::Simple: 0.44 meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.3.html
Subject: perl-TaskForest.spec
# # - TaskForest - # This spec file was automatically generated by cpan2rpm [ver: 2.028] # The following arguments were used: # TaskForest-1.37.tar.gz --no-depchk # For more information on cpan2rpm please visit: http://perl.arix.com/ # %define pkgname TaskForest %define filelist %{pkgname}-%{version}-filelist %define NVR %{pkgname}-%{version}-%{release} %define maketest 0 name: perl-TaskForest summary: TaskForest - Simple, powerful task scheduler version: 1.37 release: 0%{?dist} vendor: Aijaz A. Ansari (v-cpan@enoor.com) packager: Nico Kadel-Garcia <nkadel@gmail.com> license: Artistic group: Applications/CPAN url: http://www.cpan.org buildroot: %{_tmppath}/%{name}-%{version}-%(id -u -n) buildarch: noarch prefix: %(echo %{_prefix}) source: TaskForest-%{version}.tar.gz BuildRequires: perl(Config::General) >= 2.38 BuildRequires: perl(DateTime) BuildRequires: perl(Test::Simple) >= 0.44 Patch: perl-TaskForest-1.37.meta.patch # Above patch rolls back these dependencies as described below BuildRequires: perl(HTTP::Daemon) >= 1.36 BuildRequires: perl(HTTP::Request) >= 1.40 BuildRequires: perl(HTTP::Response) >= 1.53 BuildRequires: perl(HTTP::Status) >= 1.28 BuildRequires: perl(Log::Log4perl) >= 1.13 BuildRequires: perl(Net::SMTP) >= 2.29 #BuildRequires: perl(HTTP::Daemon) >= 5.818 #BuildRequires: perl(HTTP::Request) >= 5.818 #BuildRequires: perl(HTTP::Response) >= 5.82 #BuildRequires: perl(HTTP::Status) >= 5.817 #BuildRequires: perl(Log::Log4perl) >= 1.16 #BuildRequires: perl(Net::SMTP) >= 2.31 %description The TaskForest Job Scheduler (TF) is a simple but expressive job scheduling system. A job is defined as any executable program that resides on the file system. Jobs can depend on each other. Jobs can also have start times before which a job may not by run. Jobs can be grouped together into "Families." A family has a start time associated with it before which none of its jobs may run. A family also has a list of days-of-the-week associated with it. Jobs within a family may only run on these days of the week. Jobs and families are given simple names. A family is described in a family file whose name is the family name. Each family file is a text file that contains 1 or more job names. The layout of the job names within a family file determine the dependencies between the jobs (if any). Family names and job names should contain only the characters shown below: ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_ Let's see a few examples. In these examples the dashes (-), pipes (|) and line numbers are not parts of the files. They're only there for illustration purposes. The main script expects environment variables or command line options or configuration file settings that specify the locations of the directory that contain family files, the directory that contains job files, and the directory where the logs will be written. The directory that contains family files should contain only family files. # # This package was generated automatically with the cpan2rpm # utility. To get this software or for more information # please visit: http://perl.arix.com/ # %prep %setup -q -n %{pkgname}-%{version} %patch -p1 -b .meta chmod -R u+w %{_builddir}/%{pkgname}-%{version} %build grep -rsl '^#!.*perl' . | grep -v '.bak$' |xargs --no-run-if-empty \ %__perl -MExtUtils::MakeMaker -e 'MY->fixin(@ARGV)' CFLAGS="$RPM_OPT_FLAGS" %{__perl} Makefile.PL `%{__perl} -MExtUtils::MakeMaker -e ' print qq|PREFIX=%{buildroot}%{_prefix}| if \$ExtUtils::MakeMaker::VERSION =~ /5\.9[1-6]|6\.0[0-5]/ '` %{__make} %if %maketest %{__make} test %endif %install [ "%{buildroot}" != "/" ] && rm -rf %{buildroot} %{makeinstall} `%{__perl} -MExtUtils::MakeMaker -e ' print \$ExtUtils::MakeMaker::VERSION <= 6.05 ? qq|PREFIX=%{buildroot}%{_prefix}| : qq|DESTDIR=%{buildroot}| '` cmd=/usr/share/spec-helper/compress_files [ -x $cmd ] || cmd=/usr/lib/rpm/brp-compress [ -x $cmd ] && $cmd # SuSE Linux if [ -e /etc/SuSE-release -o -e /etc/UnitedLinux-release ] then %{__mkdir_p} %{buildroot}/var/adm/perl-modules %{__cat} `find %{buildroot} -name "perllocal.pod"` \ | %{__sed} -e s+%{buildroot}++g \ > %{buildroot}/var/adm/perl-modules/%{name} fi # remove special files find %{buildroot} -name "perllocal.pod" \ -o -name ".packlist" \ -o -name "*.bs" \ |xargs -i rm -f {} # no empty directories find %{buildroot}%{_prefix} \ -type d -depth \ -exec rmdir {} \; 2>/dev/null %{__perl} -MFile::Find -le ' find({ wanted => \&wanted, no_chdir => 1}, "%{buildroot}"); print "%doc Changes Todo htdocs INSTALL LICENSE README"; for my $x (sort @dirs, @files) { push @ret, $x unless indirs($x); } print join "\n", sort @ret; sub wanted { return if /auto$/; local $_ = $File::Find::name; my $f = $_; s|^\Q%{buildroot}\E||; return unless length; return $files[@files] = $_ if -f $f; $d = $_; /\Q$d\E/ && return for reverse sort @INC; $d =~ /\Q$_\E/ && return for qw|/etc %_prefix/man %_prefix/bin %_prefix/share|; $dirs[@dirs] = $_; } sub indirs { my $x = shift; $x =~ /^\Q$_\E\// && $x ne $_ && return 1 for @dirs; } ' > %filelist [ -z %filelist ] && { echo "ERROR: empty %files listing" exit -1 } %clean [ "%{buildroot}" != "/" ] && rm -rf %{buildroot} %files -f %filelist %defattr(-,root,root) %changelog * Fri Jan 7 2011 nkadel@bosinfdevlvm003 - Initial build. - Roll back dependencies in META.xml with patch for RHEL 5 or earlier. HTTP::Status, Net::SMTP, HTTP::Response, HTTP::Daemon, HTTP::Request, and Log::Log4perl