Bug 242207 - Review Request: arm-gp2x-linux-glibc - Cross Compiled GNU C Library targeted at arm-gp2x-linux
Summary: Review Request: arm-gp2x-linux-glibc - Cross Compiled GNU C Library targeted ...
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
(Show other bugs)
Version: rawhide
Hardware: All Linux
Target Milestone: ---
Assignee: Kevin Kofler
QA Contact: Fedora Package Reviews List
Depends On:
TreeView+ depends on / blocked
Reported: 2007-06-02 07:16 UTC by Hans de Goede
Modified: 2010-09-06 23:43 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2007-08-05 20:34:59 UTC
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
kevin: fedora-review+
kevin: fedora-cvs+

Attachments (Terms of Use)

Description Hans de Goede 2007-06-02 07:16:14 UTC
Spec URL: http://people.atrpms.net/~hdegoede/arm-gp2x-linux-glibc.spec
SRPM URL: http://people.atrpms.net/~hdegoede/arm-gp2x-linux-glibc-2.3.6-2.fc8.src.rpm
This is a Cross Compiled version of the GNU C Library, which can be used to
compile and link binaries for the arm-gp2x-linux platform, instead of for the
native %{_arch} platform.

This packages requires arm-gp2x-linux-gcc - review bug 242206.

Comment 1 Kevin Kofler 2007-07-26 19:41:05 UTC
Reviewing this one.

Comment 2 Kevin Kofler 2007-07-30 23:03:06 UTC
MUST Items:
+ rpmlint output:
  + SRPM has empty output
  + noarch RPM has these:
    W: arm-gp2x-linux-glibc 
devel-file-in-non-devel-package /usr/arm-gp2x-linux/lib/libcrypt.so
    (and many more like this). OK because this is a cross-development package, 
and these are all target development files. It would make no sense to make a 
separate devel vs. runtime part because we aren't going to run ARM GP2X 
binaries on i386/x86_64/ppc/... Fedora anyway.
    E: arm-gp2x-linux-glibc 
arch-independent-package-contains-binary-or-object /usr/arm-gp2x-linux/lib/libBrokenLocale-2.3.6.so
    (and many more like this). Again, this is OK because those are target 
    W: arm-gp2x-linux-glibc non-standard-dir-in-usr arm-gp2x-linux
    This one's OK too for a cross-toolchain package.
+ named and versioned according to the Package Naming Guidelines
+ spec file name matches base package name
+ Packaging Guidelines:
  ! License tag says GPL, actually LGPL, must fix!
  + No known patent problems
  + No emulator, no firmware, no binary-only or prebuilt components
  + Complies with the FHS (with the cross-toolchain exception 
for %{_prefix}/%{target})
  + proper changelog, tags, BuildRoot, Requires, BuildRequires, Summary, 
  + no non-UTF-8 characters
  + relevant documentation is included
  + It would make no sense to use RPM_OPT_FLAGS here because this is a target 
package, which is built using a cross GCC which won't understand stuff 
like -fstack-protector, and for which x86 -march and -mtune switches definitely 
don't make sense. Thus the omission of RPM_OPT_FLAGS is correct.
  + no -debuginfo package because this is noarch
  + no host static libraries nor .la files
    (I think we can give the target static libraries a pass. This isn't a 
Fedora target, so trying to apply our static library policies to the target 
wouldn't make much sense.)
  + no duplicated system libraries
  + no rpaths (no host executables or libraries at all, I also ran readelf -d 
on the target libraries to make sure and there's no rpath there either)
  + no configuration files, so %config guideline doesn't apply
  + no init scripts, so init script guideline doesn't apply
  + no GUI programs, so no .desktop file present or needed
  + no timestamp-clobbering file commands
  + _smp_mflags used
  + scriptlets are valid
  + not a web application, so web application guideline doesn't apply
  + no conflicts
+ complies with all the legal guidelines
+ COPYING.LIB included as %doc
+ spec file written in American English
+ spec file is legible
+ source matches upstream:
  MD5SUM: bfdce99f82d6dbcb64b7f11c05d6bc96
  SHA1SUM: 82d0487419f1bdbf2dee439c344e89d6af47e558
  MD5SUM: d4eeda37472666a15cc1f407e9c987a9
  SHA1SUM: 10190168bf948556afdfff46f87f9208402d810f
  (The applied patches are also well-documented, i.e. where they come from and 
what they fix.)
+ builds on at least one arch (F7 i386 live system)
+ no known non-working arches, so no ExcludeArch needed
+ no missing BR
+ no translations, so translation/locale guidelines don't apply
+ no host shared libraries, so no ldconfig calls needed
+ package not relocatable
! directory ownership:
  %{_prefix}/%{target} and %{_prefix}/%{target}/include are already owned by 
arm-gp2x-linux-kernel-headers which this package Requires, so this package 
shouldn't own them
+ no duplicate files in %files
+ permissions set properly (%defattr present)
+ %clean section present and correct
+ macros used where possible (%configure not used for several reasons, 
including it playing jokes with --target and using host-specific RPM_OPT_FLAGS)
+ no non-code content
+ no large documentation files, so no -doc package needed
+ %doc files not required at runtime
+ no host headers, target headers are OK in this cross-development package
+ no host static libraries, so no -static package needed
+ no .pc files, so no Requires: pkgconfig needed
+ no host shared libraries, so .so symlink guidelines don't apply
+ no -devel package, so the guideline to require the main package in it doesn't 
+ no .la files
+ no GUI programs, so no .desktop file needed
+ buildroot is deleted at the beginning of %install
  (same nitpick about mkdir $RPM_BUILD_ROOT as for arm-gp2x-linux-binutils)
+ all filenames are valid UTF-8

+ license already included upstream
+ no translations for description and summary provided by upstream
* Skipping mock test.
* Skipping the "all architectures" test, I only have i386.
+ package functions as described:
  I installed this, rebuilt arm-gp2x-linux-gcc with %define bootstrap 0 and can 
now compile and link this C program:
  #include <stdio.h>

  int main(void)
    puts("Hello World!");
    return 0;
  I'm not having the same success with C++, but that's probably GCC's fault, so 
I'm posting the problems there to the GCC review.
+ scriptlets are sane
+ no subpackages other than -devel, so "Usually, subpackages other than devel 
should require the base package using a fully versioned dependency." is 
+ no .pc files, so "placement of .pc files" is irrelevant
+ no file dependencies

* fix License to say LGPL, not GPL
* don't own %{_prefix}/%{target} and %{_prefix}/%{target}/include (owned by 

Comment 3 Kevin Kofler 2007-08-03 01:34:08 UTC
> * fix License to say LGPL, not GPL

Actually, please change it to LGPLv2+ while you are at it. :-)

Comment 4 Hans de Goede 2007-08-03 08:21:08 UTC
(In reply to comment #2)
> * fix License to say LGPL, not GPL
> * don't own %{_prefix}/%{target} and %{_prefix}/%{target}/include (owned by 
> arm-gp2x-linux-kernel-headers)

As always, many thanks for the review!

Here is a new version with both fixed:
Spec URL: http://people.atrpms.net/~hdegoede/arm-gp2x-linux-glibc.spec

Comment 5 Kevin Kofler 2007-08-03 11:49:02 UTC
All the issues found in the review have been adressed. => APPROVED

Comment 6 Hans de Goede 2007-08-03 13:06:43 UTC
New Package CVS Request
Package Name:      arm-gp2x-linux-glibc
Short Description: Cross Compiled GNU C Library targeted at arm-gp2x-linux
Owners:            j.w.r.degoede@hhs.nl
Branches:          Fc-6 F-7 devel
InitialCC:         <empty>

Comment 7 Kevin Fenzi 2007-08-03 16:51:36 UTC
cvs done.

Comment 8 Hans de Goede 2007-08-05 20:34:59 UTC
Imported and build, for some unknown reason the first build didn't produce an
rpm (although it succeeded according to koji).

Doing a second build has fixed this, closing.

Comment 9 Hans de Goede 2010-09-06 08:47:33 UTC
Package Change Request
Package Name: arm-gp2x-linux-glibc
New Branches: el6
Owners: jwrdegoede

Comment 10 Kevin Fenzi 2010-09-06 23:43:35 UTC
Git done (by process-git-requests).

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