https://bugzilla.redhat.com/show_bug.cgi?id=1342160
Bug ID: 1342160 Summary: perl-BSSolv-0.01-11.git1e18c32.fc25 FTBFS: BSSolv.xs:19:22: fatal error: repo_deb.h: No such file or directory Product: Fedora Version: rawhide Component: perl-BSSolv Assignee: strzibny@gmail.com Reporter: ppisar@redhat.com QA Contact: extras-qa@fedoraproject.org CC: perl-devel@lists.fedoraproject.org, strzibny@gmail.com
perl-BSSolv-0.01-11.git1e18c32.fc25 fails to build in F25:
+ make -j4 Running Mkbootstrap for BSSolv () "/usr/bin/perl" "/usr/share/perl5/vendor_perl/ExtUtils/xsubpp" -typemap '/usr/share/perl5/ExtUtils/typemap' -typemap '/builddir/build/BUILD/perl-BSSolv-0.01/typemap' BSSolv.xs > BSSolv.xsc chmod 644 "BSSolv.bs" "/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- BSSolv.bs blib/arch/auto/BSSolv/BSSolv.bs 644 cp BSSolv.pm blib/lib/BSSolv.pm mv BSSolv.xsc BSSolv.c gcc -c -I/usr/include/solv -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -DVERSION="0.01" -DXS_VERSION="0.01" -fPIC "-I/usr/lib64/perl5/CORE" BSSolv.c BSSolv.xs:19:22: fatal error: repo_deb.h: No such file or directory #include "repo_deb.h" ^ compilation terminated. Makefile:334: recipe for target 'BSSolv.o' failed
Difference between working and failing build root is:
libsolv-devel 0.6.21-1.fc25 > 0.6.21-2.fc25 libsolv 0.6.21-1.fc25 > 0.6.21-2.fc25 curl 7.49.0-1.fc25 > 7.49.1-1.fc25 python3-setuptools 20.9.0-1.fc25 > 21.2.2-1.fc25 shadow-utils 2:4.2.1-9.fc25 > 2:4.2.1-10.fc25 libcurl 7.49.0-1.fc25 > 7.49.1-1.fc25
This is probably caused by libsolve change http://pkgs.fedoraproject.org/cgit/rpms/libsolv.git/commit/?id=93e79d1e8a7e2ae0afce54f588af9a727f184171 "Modify enabled/disabled features".
https://bugzilla.redhat.com/show_bug.cgi?id=1342160
Petr Pisar ppisar@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |ignatenko@redhat.com Flags| |needinfo?(ignatenko@redhat. | |com)
--- Comment #1 from Petr Pisar ppisar@redhat.com --- Igor, disabling support for Debian repositories in libsolv was intentional?
https://bugzilla.redhat.com/show_bug.cgi?id=1342160
Igor Gnatenko ignatenko@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |ppisar@redhat.com Flags|needinfo?(ignatenko@redhat. |needinfo?(ppisar@redhat.com |com) |)
--- Comment #2 from Igor Gnatenko ignatenko@redhat.com --- (In reply to Petr Pisar from comment #1)
Igor, disabling support for Debian repositories in libsolv was intentional?
hm, actually yes. Didn't know that it would affect any packages.. Should I enable it back? Which distversions?
https://bugzilla.redhat.com/show_bug.cgi?id=1342160
Petr Pisar ppisar@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Flags|needinfo?(ppisar@redhat.com | |) |
--- Comment #3 from Petr Pisar ppisar@redhat.com --- perl-BSSolv as it is now in all Fedora versions, requires support for Debian and Arch repositories.
I can disable the support in perl-BSSolv. But I don't know what's the point of removing the support. While perl-BSSolv is not used by anything in Fedora now, I believe upstream uses it in the OpenSuse Build Service to support non-RPM distributions.
But how can I figure out at compile time what support is available? I can see the current /usr/include/solv/pool.h still declares DISTTYPE_DEB and DISTTYPE_ARCH. Shouls they be removed from libsolv? I see perl-BSSolv uses "#ifdef DISTTYPE_DEB" at some places (but not everywhere, that causes the build failure). Would it be feasible for libsolv to use the DISTTYPE_* symbols for communicating the support for optional features?
https://bugzilla.redhat.com/show_bug.cgi?id=1342160
Michael Schröder mls@suse.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |mls@suse.de
--- Comment #4 from Michael Schröder mls@suse.de --- You can't use DISTTYPE_DEB to check for the repo_deb functions. DISTTYPE_DEB selects debian semanics in the pool (i.e. core libsolv). The repo_deb functions are the debian package format parser functions, them come from the "extras" part of libsolv. So those two have nothing in common.
As the requirements of OBS are somewhat different from normal system use, SUSE builds perl-BSSolv with a bundled libsolv version. This is against Fedora packaging policy, so you would need to get an exception if you want to go that route.
Alternatively you have to convince Igor to enable the needed parts in the system's libsolv. Those are ENABLE_DEBIAN, DENABLE_ARCHREPO, ENABLE_LZMA_COMPRESSION, MULTI_SEMANTICS.
https://bugzilla.redhat.com/show_bug.cgi?id=1342160
Petr Pisar ppisar@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |CLOSED Resolution|--- |RAWHIDE Assignee|strzibny@gmail.com |ppisar@redhat.com Last Closed| |2016-06-06 07:56:48
--- Comment #5 from Petr Pisar ppisar@redhat.com --- I applied patch to perl-BSSolv that builds the support for Debian and Arch packages only if libsolv provides the header files.
It would be great if Igor justified why Fedora decided not to support them. It makes Fedora less useful.
https://bugzilla.redhat.com/show_bug.cgi?id=1342160
--- Comment #6 from Igor Gnatenko ignatenko@redhat.com --- (In reply to Petr Pisar from comment #5)
I applied patch to perl-BSSolv that builds the support for Debian and Arch packages only if libsolv provides the header files.
It would be great if Igor justified why Fedora decided not to support them. It makes Fedora less useful.
Actually I thought that we don't have tools in Fedora which uses deb/arch features. I can enable those features if you want ;)
Shall I?
https://bugzilla.redhat.com/show_bug.cgi?id=1342160
--- Comment #7 from Petr Pisar ppisar@redhat.com --- If enabling it does not have any serious drawbacks, then please reenable it.
https://bugzilla.redhat.com/show_bug.cgi?id=1342160
--- Comment #8 from Igor Gnatenko ignatenko@redhat.com --- (In reply to Petr Pisar from comment #7)
If enabling it does not have any serious drawbacks, then please reenable it.
hm, should I enable it for Fedora only or for RHEL8+ also?
https://bugzilla.redhat.com/show_bug.cgi?id=1342160
--- Comment #9 from Petr Pisar ppisar@redhat.com --- I have no idea about RHEL8+ requirements. I think Fedora is enough.
https://bugzilla.redhat.com/show_bug.cgi?id=1342160
--- Comment #10 from Igor Gnatenko ignatenko@redhat.com --- commit 44efe14df605d3c1fdd7326505b6a70f6b3d02f2 Author: Igor Gnatenko ignatenko@redhat.com Date: Mon Jun 6 15:09:15 2016 +0200
Enable deb/arch support for non-rhel distros
Signed-off-by: Igor Gnatenko ignatenko@redhat.com
https://bugzilla.redhat.com/show_bug.cgi?id=1342160
Petr Pisar ppisar@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed In Version| |perl-BSSolv-0.01-13.git1e18 | |c32.fc25
--- Comment #11 from Petr Pisar ppisar@redhat.com --- Thanks. I rebuilt perl-BSSolv again to regain support for the formats.
perl-devel@lists.fedoraproject.org