Bug 208009 - Review Request: perl-Wx - Interface to the wxWidgets cross-platform GUI toolkit
Summary: Review Request: perl-Wx - Interface to the wxWidgets cross-platform GUI toolkit
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Jason Tibbitts
QA Contact: Fedora Package Reviews List
URL:
Whiteboard:
Depends On: 208007
Blocks: FE-ACCEPT 208636
TreeView+ depends on / blocked
 
Reported: 2006-09-25 19:59 UTC by Jose Pedro Oliveira
Modified: 2007-11-30 22:11 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2006-10-03 13:40:25 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
Log from failing mock build (3.29 KB, text/plain)
2006-09-26 19:05 UTC, Jason Tibbitts
no flags Details

Description Jose Pedro Oliveira 2006-09-25 19:59:13 UTC
Spec URL:
ftp://perl.di.uminho.pt/pub/fedora/perl-Wx.spec
SRPM URL:
ftp://perl.di.uminho.pt/pub/fedora/perl-Wx-0.57-1.src.rpm

Description:
The Wx module is a wrapper for the wxWidgets (formerly known as
wxWindows) GUI toolkit.

This module comes with extensive documentation in HTML format;
you can download it from http://wxperl.sourceforge.net/.

Note: 
A requirement for perl-PPI-Tester
(perl-Wx -> perl-PPI-Tester)

Comment 1 Jason Tibbitts 2006-09-26 19:00:47 UTC
This failed to build for me in mock.  I have the set of unpushed packages set up
as a repository, and perl-Alien-wxWidgets was installed properly.  Yet:

+ /usr/bin/perl Makefile.PL INSTALLDIRS=vendor 'OPTIMIZE=-O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4
-m64 -mtune=generic'
Warning: prerequisite Alien::wxWidgets 0.15 not found.

and later:

==> Your Makefile has been rebuilt. <==
==> Please rerun the make command.  <==
false
make: *** [Makefile] Error 1
error: Bad exit status from /var/tmp/rpm-tmp.98362 (%build)


I'll attach the full build log.

Comment 2 Jason Tibbitts 2006-09-26 19:05:42 UTC
Created attachment 137162 [details]
Log from failing mock build

Comment 3 Jose Pedro Oliveira 2006-09-28 18:44:47 UTC
Jason,

Could you try to rebuild perl-Wx?
The problem was in perl-Alien-wxWidgets (see bug #208007 comment #2).

Tia,
jpo

Comment 4 Jason Tibbitts 2006-09-30 19:40:12 UTC
The build progresses farther but still fails to complete:

No such 'link' library: 'adv' at
/builddir/build/BUILD/Wx-0.57/build/Wx/build/MakeMaker.pm line 202
Attempt to free unreferenced scalar: SV 0xc90130, Perl interpreter: 0x603010.

wxGTK did install, so libwx_gtk2u_adv-2.6 should be there.

Comment 5 Jose Pedro Oliveira 2006-10-01 00:17:34 UTC
I don't have any problem building perl-Wx for *i386* in mock for FC-5 and FC-6
(and locally) with perl-Alien-wxWidgets-0.21-2.

According to the old build log from comment #2 you seem to be building the
package for x86_64.  I'll try to see if there any differents in the cached build
values stored in perl-Alien-wxWidgets (i386, x86_64, ppc) but I will not be able
to test anything.

Comment 6 Jose Pedro Oliveira 2006-10-01 00:37:12 UTC
The problem appears to be in perl-Alien-wxWidgets: if fails to discover which
libraries should be used for x86_64 (no problem for 32 bits archs).

Files:
.../i386-linux-thread-multi/Alien/wxWidgets/Config/gtk2_2_6_3_uni_gcc_3_4.pm
.../ppc-linux-thread-multi/Alien/wxWidgets/Config/gtk2_2_6_3_uni_gcc_3_4.pm
.../x86_64-linux-thread-multi/Alien/wxWidgets/Config/gtk2_2_6_3_uni_gcc_3_4.pm

The "_libraries" hash entry in the x86_64 config file is empty.




Comment 7 Jose Pedro Oliveira 2006-10-01 00:46:33 UTC
Jason,

Could you post here the output of 
    /usr/bin/wx-config --libs
in a x86_64 system (RPM wxGTK-devel)?

According to the x86_64 build log 
http://buildsys.fedoraproject.org/logs/fedora-development-extras/18550-perl-Alien-wxWidgets-0.21-2.fc6/x86_64/build.log
it appears perl-Alien fails to detect the wxGTK libraries.


Comment 8 Jose Pedro Oliveira 2006-10-01 02:06:30 UTC
perl-Alien-wxWidgets-0.21-3 has just been built.
It now includes a patch that adds /usr/lib64 to the library search path.  

Alien-wxWidgets-0.21/inc/My/Build/Any_wx_config.pm
--------------------------------------------------
    my @paths = ( ( map { s/^-L//; $_ } grep { /^-L/ } split ' ', $libs ),
-                  qw(/usr/local/lib /usr/lib) );
+                  qw(/usr/local/lib /usr/lib /usr/lib64) );



Comment 9 Jason Tibbitts 2006-10-01 16:05:06 UTC
OK, that seems better; the package built OK in mock.  However, rpmlint is a bit
unhappy.  There are the usual devel-file-in-non-devel-package warnings that you
always get with an arch-dependent Perl package, but also:

E: perl-Wx useless-explicit-provides perl(Wx)
  The dependency generator generates two provides:
   perl(Wx)
   perl(Wx) = 0.57
  one of which will need to be filtered.

E: perl-Wx-debuginfo script-without-shebang
/usr/src/debug/Wx-0.57/ext/html/cpp/ht_constants.cpp
E: perl-Wx-debuginfo script-without-shebang
/usr/src/debug/Wx-0.57/ext/stc/cpp/st_constants.cpp
E: perl-Wx-debuginfo script-without-shebang
/usr/src/debug/Wx-0.57/ext/dnd/cpp/dataobject.h
E: perl-Wx-debuginfo script-without-shebang /usr/src/debug/Wx-0.57/cpp/streams.cpp
  For some reason the source files are executable.  A quick chmod in %prep
should fix it up.

Comment 10 Jose Pedro Oliveira 2006-10-01 17:00:35 UTC
(In reply to comment #9)
> 
> E: perl-Wx useless-explicit-provides perl(Wx)
>   The dependency generator generates two provides:
>    perl(Wx)
>    perl(Wx) = 0.57
>   one of which will need to be filtered.

Done (although this should be corrected in the rpm package).
 
> E: perl-Wx-debuginfo script-without-shebang
> /usr/src/debug/Wx-0.57/ext/html/cpp/ht_constants.cpp
> E: perl-Wx-debuginfo script-without-shebang
> /usr/src/debug/Wx-0.57/ext/stc/cpp/st_constants.cpp
> E: perl-Wx-debuginfo script-without-shebang
> /usr/src/debug/Wx-0.57/ext/dnd/cpp/dataobject.h
> E: perl-Wx-debuginfo script-without-shebang /usr/src/debug/Wx-0.57/cpp/streams.cpp
>   For some reason the source files are executable.  A quick chmod in %prep
> should fix it up.

Done.

New release:
ftp://perl.di.uminho.pt/pub/fedora/perl-Wx.spec
ftp://perl.di.uminho.pt/pub/fedora/perl-Wx-0.57-2.src.rpm


Comment 11 Jason Tibbitts 2006-10-01 23:46:04 UTC
* source files match upstream:
   95689cae67e55eb62febe8f41751c1c2  Wx-0.57.tar.gz
* package meets naming and packaging guidelines.
* specfile is properly named, is cleanly written and uses macros consistently.
* dist tag is present.
* build root is correct.
* license field matches the actual license.
* license is open source-compatible.  License text not included upstream.
* latest version is being packaged.
* BuildRequires are proper.
* compiler flags are appropriate.
* %clean is present.
* package builds in mock (development, x86_64n).
* package installs properly
* debuginfo package looks complete.
* rpmlint has only bugus warnings.
* final provides and requires are sane:
   (hilariously huge dependency list snipped)
* %check is present but necessarily disabled in mock.
   I ran the tests manually outside of mock and:
   All tests successful, 12 subtests skipped.
   Files=16, Tests=784,  8 wallclock secs ( 3.56 cusr +  0.55 csys =  4.11 CPU)

   All tests successful.
   Files=4, Tests=19,  2 wallclock secs ( 0.92 cusr +  0.15 csys =  1.07 CPU)

   All tests successful.
   Files=2, Tests=3,  0 wallclock secs ( 0.38 cusr +  0.05 csys =  0.43 CPU)

   All tests successful.
   Files=2, Tests=21,  0 wallclock secs ( 0.60 cusr +  0.06 csys =  0.66 CPU)

   All tests successful.
   Files=1, Tests=1,  1 wallclock secs ( 0.29 cusr +  0.06 csys =  0.35 CPU)

   All tests successful.
   Files=2, Tests=5,  1 wallclock secs ( 0.68 cusr +  0.11 csys =  0.79 CPU)

   All tests successful.
   Files=4, Tests=15,  2 wallclock secs ( 1.63 cusr +  0.20 csys =  1.83 CPU)

   All tests successful.
   Files=2, Tests=10,  0 wallclock secs ( 0.68 cusr +  0.11 csys =  0.79 CPU)

   All tests successful.
   Files=2, Tests=16,  1 wallclock secs ( 0.73 cusr +  0.10 csys =  0.83 CPU)

   All tests successful.
   Files=2, Tests=2,  1 wallclock secs ( 0.63 cusr +  0.12 csys =  0.75 CPU)

   All tests successful.
   Files=2, Tests=5,  0 wallclock secs ( 0.36 cusr +  0.08 csys =  0.44 CPU)

   All tests successful.
   Files=2, Tests=14,  1 wallclock secs ( 0.36 cusr +  0.06 csys =  0.42 CPU)

   All tests successful.
   Files=2, Tests=5,  0 wallclock secs ( 0.53 cusr +  0.06 csys =  0.59 CPU)

   All tests successful.
   Files=2, Tests=4,  0 wallclock secs ( 0.48 cusr +  0.07 csys =  0.55 CPU)

   All tests successful.
   Files=3, Tests=9,  3 wallclock secs ( 1.88 cusr +  0.23 csys =  2.11 CPU)

   All tests successful.
   Files=4, Tests=9,  3 wallclock secs ( 1.08 cusr +  0.16 csys =  1.24 CPU)

   All tests successful.
   Files=1, Tests=1,  0 wallclock secs ( 0.32 cusr +  0.06 csys =  0.38 CPU)

   All tests successful.
   Files=1, Tests=1,  0 wallclock secs ( 0.34 cusr +  0.06 csys =  0.40 CPU)

* no shared libraries are added to the regular linker search paths.
* owns the directories it creates.
* doesn't own any directories it shouldn't.
* no duplicates in %files.
* file permissions are appropriate.
* no scriptlets present.
* code, not content.
* documentation is small, so no -docs subpackage is necessary.
* %docs are not necessary for the proper functioning of the package.
* no headers (except the standard arch-specific Perl module headers)
* no pkgconfig files.
* no libtool .la droppings.

APPROVED

Comment 12 Jose Pedro Oliveira 2006-10-02 19:43:18 UTC
Tibbs,

Thanks for the review.
Package imported and built for FC6.
I will close this ticket as soon as the FC5 build completes (FC5 CVS branch
still pending).

jpo

Comment 13 Jose Pedro Oliveira 2006-10-03 13:40:25 UTC
Also built for FC-5.


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