Package: lsb-rpm
Version: 4.4.1-14.1
Severity: grave
Justification: renders package unusable

Packages created by lsb-rpm don't pass the checks that the lsbpkgchk
program (from the lsb-pkgchk3 package, or directly from LSB website,
http://ftp.freestandards.org/pub/lsb/test_suites/released-3.1.0/binary/application/lsb-pkgchk-3.1.1-1.i486.rpm)
does.

Additionally, according to some anonymous pretending to be Jeff
Johnson on the linux.org.ru site,

(http://www.linux.org.ru/jump-message.jsp?msgid=2391597&cid=2394613)
"The LSB format is not used by any version of rpm since rpm-3.0.5 and
LSB packages cannot be produced by any version of rpm currently used in
Linux."

(http://www.linux.org.ru/jump-message.jsp?msgid=2391597&cid=2394781)
"unmodified rpm-4.4.2.1 cannot produce LSB "standard" packages" (and
debian doesn't apply patches that affect the output format)

I don't know whether the comments above come actually from Jeff Johnson
and whether they are true, but the "lsbpkgchk" messages do have the
ultimate authority.

Testcase: try bulding something simple, like Bison.

First, edit the /usr/lib/rpm/rpmrc file so that the "buildarchtranslate"
statements point to i486 (as mandated by LSB) instead of i386.

Second, put bison-2.3.tar.bz2 (from GNU) to /usr/src/rpm/SOURCES/ and
create the following spec file (save as bison.spec):

----- 8< -----
Summary: Generates parsers
Name: bison
Version: 2.3
Release: 1
Group: Base
License: GPL
Distribution: LeafOS
Vendor: LeafOS
Packager: LeafOS
URL: http://www.gnu.org/software/bison/
Source0: http://ftp.gnu.org/gnu/bison/bison-%{version}.tar.bz2
BuildRoot: %{_tmppath}/%{name}-root
Requires: lsb = 3.1, lsb-core-ia32 >= 3.0

%description
Bison generates, from a series of rules, a program for analyzing the
structure
of text files; Bison is a replacement for Yacc (Yet Another Compiler
Compiler)

%prep
%setup -q

%build
%configure CC=lsbcc3 CXX=lsbc++3
echo '#define YYENABLE_NLS 1' >> config.h
make

%install
rm -rf $RPM_BUILD_ROOT
make DESTDIR=$RPM_BUILD_ROOT install
rm -f $RPM_BUILD_ROOT/usr/share/info/dir

%preun
install-info --delete %{_infodir}/bison.info.gz %{_infodir}/dir

%post
install-info %{_infodir}/bison.info.gz %{_infodir}/dir

%files
%defattr(-,root,root)
/*
%doc AUTHORS COPYING ChangeLog NEWS README THANKS TODO

%clean
rm -rf $RPM_BUILD_ROOT
----- 8< -----

Finally, run these commands:

lsb-rpm -bb bison.spec
lsbpkgchk /usr/src/rpm/RPMS/i486/bison-2.3-1.i486.rpm

and see the following errors:

Error: checkRpmIdx() unexpected Index tag=1140 type=4 offset=d00 count=21
Error: checkRpmIdx() unexpected Index tag=1141 type=4 offset=d84 count=21
Error: checkRpmIdx() unexpected Index tag=1142 type=8 offset=e08 count=7
Error: checkRpmIdx() unexpected Index tag=1143 type=4 offset=eec count=21
Error: checkRpmIdx() unexpected Index tag=1144 type=4 offset=f70 count=21
Error: checkRpmIdx() unexpected Index tag=1145 type=4 offset=ff4 count=1
Error: checkRpmIdx() unexpected Index tag=1147 type=8 offset=ff8 count=21

Since the only purpose of lsb-rpm is to produce LSB-compliant packages
and it fails to do this, I am reporting a grave bug.

-- System Information:
Debian Release: lenny/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: i386 (i686)

Kernel: Linux 2.6.22-3-686 (SMP w/2 CPU cores)
Locale: LANG=ru_RU.UTF-8, LC_CTYPE=ru_RU.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages lsb-rpm depends on:
ii  rpm                           4.4.1-14.1 Red Hat package manager

lsb-rpm recommends no packages.

-- no debconf information

-- 
Alexander E. Patrakov



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to