If src and binary rpm files are built (via "rpm -ba") with some build
options explicitly turned on, the src rpm subsequently reports these options
as "on" (via "rpm -qpi" or "rpm -qp --provides") even though the spec file
has them defaulted to "off".

Case in point: I started with perl-dbi-20040108-20040108.src.rpm as my base
package. "rpm -qip --provides" reports all options turned off:
> rpm -qip --provides perl-dbi-20040108-20040108.src.rpm
Name        : perl-dbi                     Relocations: (not relocateable)
Version     : 20040108                          Vendor: Perl Community
Release     : 20040108                      Build Date: Thu Jan  8 15:09:03
2004
Install Date: (not installed)               Build Host: dv1.dev.de.cw.net
Group       : Language                      Source RPM: (none)
Size        : 1295730                          License: GPL/Artistic
Signature   : (none)
Packager    : The OpenPKG Project
URL         : http://www.cpan.org/
Summary     : Perl Modules for use with DBI API
Description :
    Various modules for using the DBI API of Perl:
    - DBI (1.40)
    - SQL::Statement (1.005)
    - DBD::AnyData (0.06)
    - DBD::Sprite (0.47)
    - DBD::SQLite (0.29)
    - DBD::mysql (2.9003) [no]
    - DBD::Pg (1.31) [no]
    - DBD::Oracle (1.14) [no]
    - DBD::ODBC (1.06) [no]
perl-dbi::with_dbd_mysql = no
perl-dbi::with_dbd_pg = no
perl-dbi::with_dbd_oracle = no
perl-dbi::with_dbd_odbc = no

I then "installed" the source package, made some changes to the spec file
(though not to the option defaults), and rebuilt it with the following
command:
rpm -ba perl-dbi.spec --define "with_dbd_oracle yes" --define "with_dbd_odbc
yes"

Now executing "rpm -qip --provides" on the resulting src rpm yields the
following:
> rpm -qip --provides perl-dbi-20040114-20040114.src.rpm
Name        : perl-dbi                     Relocations: (not relocateable)
Version     : 20040114                          Vendor: Perl Community
Release     : 20040114                      Build Date: Wed Jan 14 15:55:36
2004
Install Date: (not installed)               Build Host:
geraldine.Princeton.EDU
Group       : Language                      Source RPM: (none)
Size        : 1295757                          License: GPL/Artistic
Signature   : (none)
Packager    : The OpenPKG Project
URL         : http://www.cpan.org/
Summary     : Perl Modules for use with DBI API
Description :
    Various modules for using the DBI API of Perl:
    - DBI (1.40)
    - SQL::Statement (1.005)
    - DBD::AnyData (0.06)
    - DBD::Sprite (0.47)
    - DBD::SQLite (0.29)
    - DBD::mysql (2.9003) [no]
    - DBD::Pg (1.31) [no]
    - DBD::Oracle (1.14) [yes]
    - DBD::ODBC (1.06) [yes]
perl-dbi::with_dbd_mysql = no
perl-dbi::with_dbd_pg = no
perl-dbi::with_dbd_oracle = yes
perl-dbi::with_dbd_odbc = yes

There are also a few packages on the openpkg ftp site that show this
problem:
openpkg-import-20031027-20031027.src.rpm
perl-dbi-20031129-20031129.src.rpm (now obsolete)

I think that the src rpm should only report the spec file option defaults,
and not the set of options that the binary rpm was built with.

Dennis

Dennis McRitchie
Research & Academic Applications Support (RAAS)
Academic Services Department
Office of Information Technology
Princeton University

______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
Developer Communication List                   [EMAIL PROTECTED]

Reply via email to