Description of problem: Galeon spec mozilla Requires breaks rebuilding in chroot. Requires: mozilla = %(rpm -q mozilla-devel --qf='%%{epoch}:%%{version}' 2>/dev/null) this queries the rpmdb inside the chroot and if there is no mozilla-devel package present resolves out to: mozilla = '' The mozilla version should be hard-coded in the spec file b/c if the mozilla-devel installed in the chroot isn't the one you're intending to build for you will get a faulty build. This is why the above command was removed from the epiphany spec file as well.
I dont see the problem here, because 1. If there's no mozilla-devel installed, the build will fail anyway because the package buildrequires mozilla-devel >= 37:1.7.2, so the package can _requires at runtime_ whatever, it doesnt matter. and because 2. any version mozilla >= 37:1.7.2 is good enough to rebuild galeon. that's why a strict version is not hardcoded.
I think the problem has to do with the .src.rpm being put together outside of the buildroot? https://www.redhat.com/archives/fedora-buildsys-list/2005-May/msg00021.html Does the build system implement this looping algorithm for populating BuildRequires within the buildroot? If the above algorithm is done, then this kind of syntax works in the spec: # Require Binary Compatible glib # returns bogus value if glib2-devel is not installed in order for parsing to succeed # bogus value wont make it into a real package %define glib_ver %([ -a %{_libdir}/pkgconfig/glib-2.0.pc ] && pkg-config --modversion glib-2.0 | cut -d. -f 1,2 || echo -n "999") Requires: glib2 >= %{glib_ver} The || prevents a non-zero return value which causes the intial loop of spec parsing to fail. Subsequent loops correct the value with stuff actually that *should* be in the buildroot.
Any chance that this can be fixed, or a workaround/fix made to the spec file so that galeon can be rebuilt soon? This bug blocks the mozilla upgrade which is a security fix.
the srpm is rebuilt once inside the chroot. and the aforementioned syntax is god-awful-ugly. so why we would want to have that sort of syntax in a specfile is beyond me, even if the buildsystem can deal with it.
Ugly, but it works, and makes it easier to maintain in the long term because you never need to touch it again.
'ugly'... taste and colors. I consider it really readable. I can comment the line in the spec file if you think that make it more `sane'. And as Warren said, this makes the spec file easier to maintain and this is exactly why i'm doing this. If that's not okay anymore, I'll let someone else maintain the package. Just dont hate me because I'm lazy. So, Seth, is the package okay or do we still have a problem ?
I'm not blocking anything from going through. it wouldn't build last time it was tried. I filed the bug b/c when I asked about it on #fedora-devel caillon said that epiphany used to have that same Requires in it and it was removed b/c it was considered wrong.
Could somebody please just fix the spec file to make it build and worry about the niceities later? It's been over two weeks since the mozilla update and this blocks a security update.
No. And i'm dropping galeon support in FE.
Looks like build failed for the same reason as before on ppc because of the spec file problem, compare: http://buildsys.fedoraproject.org/logs//4/1-galeon-1.3.21-9.fc4/ppc/root.log with: http://buildsys.fedoraproject.org/logs//4/525-galeon-1.3.21-12.fc4/ppc/root.log Sorry to hear that you won't maintain galeon anymore, can anybody else pick this up? Why can't we just hardcode the mozilla version for the moment? The spec file will need to be updated for every mozilla release anyway.
Any existing cvsextras member or RH engineer may claim ownership of galeon if they wish.
Seth modified spec file and rebuilt package. Now in repository.
I am not claiming the package. I just wanted the problem to go away.