Bug 226050 - Merge Review: libtool
Summary: Merge Review: libtool
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Karel Klíč
QA Contact: Fedora Package Reviews List
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-01-31 19:28 UTC by Nobody's working on this, feel free to take it
Modified: 2013-03-03 22:59 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2010-05-11 08:14:32 UTC
kklic: fedora-review+


Attachments (Terms of Use)

Description Nobody's working on this, feel free to take it 2007-01-31 19:28:06 UTC
Fedora Merge Review: libtool

http://cvs.fedora.redhat.com/viewcvs/devel/libtool/
Initial Owner: karsten@redhat.com

Comment 1 Karsten Hopp 2007-02-21 15:08:40 UTC
libtool-1.5.22-10 prepared for review

Comment 2 Susi Lehtola 2009-03-27 19:20:58 UTC
Any reason why you're not using %configure?

Comment 3 Karsten Hopp 2009-03-27 22:04:51 UTC
%configure used to copy config.sub and config.guess files from /usr/share/libtool/config into the top source directory. That's not a good idea when you try to build a newer libtooll to update those files...  I haven't checked for a while if %configure still does that, though.

Comment 4 Robert Scheck 2009-03-27 22:10:08 UTC
That behaviour has been removed at Fedora 10 already. Now I've to copy
these files myself into buildroot to get old software rebuilding. So
%configure should work with Fedora >= 10 for you again. Maybe we just
can test it in a scratch build?

Comment 5 Susi Lehtola 2009-03-27 22:25:52 UTC
Hmm, according to the build logs %configure is just a macro that exports compiler flags and calls ./configure with a bunch of arguments that set destinations, for example on rawhide i586 the arguments are

./configure --build=i386-redhat-linux-gnu --host=i386-redhat-linux-gnu --target=i586-redhat-linux-gnu --program-prefix= --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/inf

Comment 6 Michael Schwendt 2009-05-20 10:00:53 UTC
Check out older redhat-rpm-config packages' macros file, e.g. in F8, to see the old definition where it copied files as Karsten says. You can use "rpm --eval %configure", btw.

Comment 7 Susi Lehtola 2009-05-20 10:09:05 UTC
(In reply to comment #6)
> Check out older redhat-rpm-config packages' macros file, e.g. in F8, to see the
> old definition where it copied files as Karsten says.

OK, but that's no problem anymore since rawhide is F12 :)

> You can use "rpm --eval %configure", btw. 

Duh, true.

Comment 8 Karel Klíč 2009-12-10 11:12:39 UTC
[YES] source files match upstream: a4b36980765003b47dd75ac9429f4f11  libtool-2.2.6b.tar.lzma
[YES] package meets naming and versioning guidelines 
[YES] specfile is properly named
[YES] specfile is cleanly written
[???] uses macros consistently: %{name} should be used instead of 
      $PACKAGE and %{_datadir} instead of $datadir
[YES] dist tag is present
[YES] build root is correct
[YES] license field matches the actual license
[YES] license is open source-compatible
[YES] license text included in package
[YES] latest version is being packaged
[???] BuildRequires are proper: no need to include gcc and gcc-c++, because 
      they are added automatically
[YES] compiler flags are appropriate
[YES] %clean is present
[YES] package builds in mock
[YES] debuginfo package looks complete
[NO] rpmlint is silent

$ rpmlint *.rpm
libtool.i686: E: no-binary
libtool.i686: W: file-not-utf8 /usr/share/doc/libtool-2.2.6/ChangeLog.2002
libtool.i686: E: script-without-shebang /usr/share/libtool/config/ltmain.sh
libtool.i686: W: file-not-utf8 /usr/share/doc/libtool-2.2.6/ChangeLog.1998
libtool.i686: W: file-not-utf8 /usr/share/doc/libtool-2.2.6/ChangeLog.1999
libtool.i686: W: file-not-utf8 /usr/share/doc/libtool-2.2.6/ChangeLog.1997
libtool-debuginfo.i686: W: hidden-file-or-dir /usr/src/debug/libtool-2.2.6b/libltdl/.libs
libtool-debuginfo.i686: W: hidden-file-or-dir /usr/src/debug/libtool-2.2.6b/libltdl/.libs
libtool-ltdl.i686: W: shared-lib-calls-exit /usr/lib/libltdl.so.7.2.1 exit@GLIBC_2.0
libtool-ltdl-devel.i686: W: no-documentation
5 packages and 0 specfiles checked; 2 errors, 8 warnings.

[YES] final provides and requires look sane
[OK] %check is present, but "make check" is commented out
[YES] no shared libraries are added to the regular linker search paths in app package
[YES] owns the directories it creates
[YES] doesn't own any directories it shouldn't
[YES] no duplicates in %files
[YES] file permissions are appropriate
[YES] scriptlets ok
[YES] code, not content
[YES] documentation is small, so no -docs subpackage is necessary
[YES] %docs are not necessary for the proper functioning of the package
[YES] no headers
[YES] no pkgconfig files
[YES] no libtool .la droppings
[YES] not a GUI app

Comment 9 Karel Klíč 2010-04-12 14:37:47 UTC
ping

Comment 10 Karsten Hopp 2010-04-12 15:57:56 UTC
>rpmlint i386/*-2.6-19.fc14.i386.rpm.rpm
libtool.i386: W: spelling-error %description -l en_US Autotools -> Auto tools, Auto-tools, Autopilots
libtool.i386: W: spelling-error %description -l en_US Autoconf -> Autocrat, Autocross, Autoclave
libtool.i386: W: spelling-error %description -l en_US Automake -> Automaker, Automate, Auto make
libtool.i386: W: spelling-error %description -l en_US ltdl -> ltd, ltd l, Ltd
libtool.i386: E: no-binary
libtool.i386: E: script-without-shebang /usr/share/libtool/config/ltmain.sh
libtool-debuginfo.i386: E: non-standard-dir-perm /usr/lib/debug 0775L
libtool-debuginfo.i386: W: hidden-file-or-dir /usr/src/debug/libtool-2.2.6b/libltdl/.libs
libtool-debuginfo.i386: W: hidden-file-or-dir /usr/src/debug/libtool-2.2.6b/libltdl/.libs
libtool-debuginfo.i386: E: non-standard-dir-perm /usr/src/debug/libtool-2.2.6b/libltdl/libltdl 0775L
libtool-debuginfo.i386: E: non-standard-dir-perm /usr/src/debug/libtool-2.2.6b/libltdl 0775L
libtool-debuginfo.i386: E: non-standard-dir-perm /usr/src/debug/libtool-2.2.6b/libltdl/loaders 0775L
libtool-ltdl.i386: W: spelling-error Summary(en_US) Runtime -> Run time, Run-time, Untimely
libtool-ltdl.i386: W: spelling-error %description -l en_US runtime -> run time, run-time, untimely
libtool-ltdl.i386: W: spelling-error %description -l en_US Autotools -> Auto tools, Auto-tools, Autopilots
libtool-ltdl.i386: W: spelling-error %description -l en_US Autoconf -> Autocrat, Autocross, Autoclave
libtool-ltdl.i386: W: spelling-error %description -l en_US Automake -> Automaker, Automate, Auto make
libtool-ltdl.i386: W: shared-lib-calls-exit /usr/lib/libltdl.so.7.2.1 exit@GLIBC_2.0
4 packages and 0 specfiles checked; 6 errors, 12 warnings.


The spelling errors can be ignored as spell doesn't know about auto{conf,make} tools and marks their names as errors.

libtool is an arch package as it has some paths to arch dependend gcc stuff in it, it cannot be a noarch package even though it has no binaries. 

I'm not sure about the debuginfo errors/warnings. libtool ships no .libs subdir and doesn't create /usr/lib/debug, so this might be a rpmlint bug. My umask is set to 0002, which is quite common and shouldn't lead to rpmlint errors.
Should rpmlint be run on the debuginfo packages, btw ? I couldn't find anything about it on our wiki.

shared-lib-calls-exit: There's exactly one exit call in libltdl and that one is in the alloc_die_default function with the comment '/* Unless overridden, exit on memory failure.  */' This function isn't called by anything in libtool-* and is used as some kind of template which should be overwritten when required. 
I'd say we can ignore this rpmlint warning, too.

So the real fixes in -19 are the conversion of the changelogs to utf8, the move of some documentation to the ltdl-devel subpackage and the selfchecks are now enabled

Comment 11 Karel Klíč 2010-04-12 16:47:41 UTC
Thank you.
Overall it looks good now.

The .libs directory is created automatically when creating separate debuginfo, and that's ok.

This review can now be closed.


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