Bug 182461 - Build Sprog for FC-4
Summary: Build Sprog for FC-4
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: Sprog
Version: 4
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Gavin Henry
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 182455 182458 182459
Blocks:
TreeView+ depends on / blocked
 
Reported: 2006-02-22 18:20 UTC by Alex Lancaster
Modified: 2007-11-30 22:11 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2006-03-02 15:13:09 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Alex Lancaster 2006-02-22 18:20:01 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20060202 Galeon/2.0.0

Description of problem:
Build for FC-4.  This is a just a tracker to make sure it gets built.  I see that a CVS branch is pending.

Version-Release number of selected component (if applicable):


How reproducible:
Always

Steps to Reproduce:
1. yum install Sprog


  

Actual Results:  Should be installed.

Expected Results:  Wasn't.

Additional info:

Comment 1 Alex Lancaster 2006-02-26 23:00:07 UTC
I see you tried building this for FC-4:

http://buildsys.fedoraproject.org/build-status/job.psp?email=ghenry@suretecsystems.com&uid=5294

but surely this can't work until perl-Imager is rebuilt for FC-4: bug #182459.

And I just noticed that perl-Imager, or probably perl(Imager) isn't in the list
of BuildRequires for FC-4, that seems like a bug.

Comment 2 Alex Lancaster 2006-02-26 23:03:42 UTC
Also it isn't in the BuildRequires for the devel package either:

http://cvs.fedora.redhat.com/viewcvs/rpms/Sprog/devel/Sprog.spec?root=extras&rev=1.3&view=auto

Remember if it needs it for compilation, it must be in the BuildRequires
*explicitly*.  I don't know how it could have worked for the devel build because
it should have failed compilation if it didn't find the perl-Imager package. 
Strange.

Comment 3 Gavin Henry 2006-02-26 23:10:47 UTC
Just have perl_Imager test 30 to fix now. Leaving for tomorrow. 23:15 here.

Cheers Alex.

Gavin.

Comment 4 Alex Lancaster 2006-02-26 23:12:43 UTC
Hmm,  I notice that on the install instructions:

http://sprog.sourceforge.net/install/index.html

it doesn't require perl-Imager, but I guess your old RPMs that I found here:

http://sourceforge.net/mailarchive/forum.php?thread_id=8984913&forum_id=43519

were built against them.  Does sprog need perl-Imager?

Comment 5 Alex Lancaster 2006-02-28 23:43:50 UTC
Sprog-0.14-9.fc4 failed build:

http://buildsys.fedoraproject.org/build-status/job.psp?email=ghenry@suretecsystems.com&uid=5299

From here:

http://cvs.fedora.redhat.com/viewcvs/rpms/Sprog/FC-4/Sprog.spec?root=extras&rev=1.3&view=auto

it looks like we can remove perl(Imager), maybe it will work then.

Comment 6 Gavin Henry 2006-03-01 08:24:10 UTC
Trying.

Comment 7 Michael Schwendt 2006-03-01 08:28:50 UTC
Well, there's at least one Perl module in Sprog which wants perl-Imager:

  lib/Sprog/Gear/ImageBorder.pm:use Imager;

Earlier FC-4 builds of Sprog failed because they didn't BuildRequires
perl(Time::HiRes). The changed package in FE CVS should build.


Comment 8 Alex Lancaster 2006-03-01 10:17:44 UTC
Looks like it successfully built in FC-4, and I noticed from:

http://buildsys.fedoraproject.org/logs/fedora-4-extras/5609-Sprog-0.14-10.fc4/noarch/build.log

that the package generates a Requires: perl(Imager) as Michael points out in
comment #7 that Sprog needs because of the "use Imager;" in that Perl module. 
But Gavin removed the perl(Imager) from the BuildRequires, and if it really does
need perl(Imager) to run, then how does actually build without it?  

Does the buildsystem not actually check whether all the "use foobar;"  modules
actually exist?

Comment 9 Alex Lancaster 2006-03-01 10:36:31 UTC
It looks like perl-Imager is required, because if I try and remove perl-Imager
on devel, it will also remove Sprog (see below).  So should it be re-added as a
BuildRequires, or added as a manual Requires as described here:

http://fedoraproject.org/wiki/Packaging/Perl ?

(I don't really know enough about perl module packaging to be sure)

Currently it appears to only depend implicitly on perl-Imager and if perl-Imager
is not present there is no way for the build system to know that.

sudo yum remove perl-Imager
Password:
Loading "installonlyn" plugin
Setting up Remove Process
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Package perl-Imager.i386 0:0.47-1.fc5 set to be erased
--> Running transaction check
Setting up repositories
development                                                          [1/3]
development               100% |=========================| 1.1 kB    00:00
livna                                                                [2/3]
livna                     100% |=========================|  951 B    00:00
extras-development                                                   [3/3]
extras-development        100% |=========================| 1.1 kB    00:00
Reading repository metadata in from local files
--> Processing Dependency: perl(Imager) for package: Sprog
--> Restarting Dependency Resolution with new changes.
--> Populating transaction set with selected packages. Please wait.
---> Package Sprog.noarch 0:0.14-10.fc5 set to be erased
--> Running transaction check

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size
=============================================================================
Removing:
 perl-Imager             i386       0.47-1.fc5       installed         1.2 M
Removing for dependencies:
 Sprog                   noarch     0.14-10.fc5      installed         604 k

Transaction Summary
=============================================================================
Install      0 Package(s)
Update       0 Package(s)
Remove       2 Package(s)
Is this ok [y/N]: n
Exiting on user Command


Comment 10 Gavin Henry 2006-03-01 12:16:20 UTC
Seemed to have work:

http://buildsys.fedoraproject.org/logs/fedora-4-extras/5609-Sprog-0.14-10.fc4/

Comment 11 Michael Schwendt 2006-03-01 12:24:37 UTC
perl-Imager is a run-time requirement, not a build-time requirement.

However, if any of Sprog's tests at build-time rely on perl-Imager being
installed, it would need to become a BuildRequires. 

Further, mentioning this dependency on perl-Imager in Sprog.spec would
be beneficial.

Comment 12 Alex Lancaster 2006-03-01 12:25:30 UTC
Yes, although if I understand what's going on with the perl-Imager Requires
correctly is that you should probably add back the BuildRequires for
perl(Imager) because although you can build without it, Sprog will either fail
to install (or worse fail at run-time) because of comment #7.   

If you specify BuildRequires at build-time, it ensures that perl-Imager is
available in the repo, which means that the build will correctly halt if no
perl-Imager is present in the repo, because it wouldn't install without it.

Confusing, isn't it?  That's the problem with Perl modules. But I *think* that's
what's going.

Comment 13 Alex Lancaster 2006-03-01 12:27:48 UTC
(In reply to comment #11)
> perl-Imager is a run-time requirement, not a build-time requirement.
> 
> However, if any of Sprog's tests at build-time rely on perl-Imager being
> installed, it would need to become a BuildRequires. 

I don't think Sprog checks the Imager part, but nevertheless it would fail at
run-time if not present.
 
> Further, mentioning this dependency on perl-Imager in Sprog.spec would
> be beneficial.

So should it be a BuildRequires or just a regular Requires?



Comment 14 Alex Lancaster 2006-03-02 15:13:09 UTC
Sprog builds and installs fine now for FC-4.  Closing bug.


Note You need to log in before you can comment on or make changes to this bug.