Hi, I see minimal build environment always pulling pkgconfig and also we have " There is no need to include the following packages or their dependencies as BuildRequires because they would occur too often." written in packaging guidelines[1]. Does this mean I can recommend in new package reviews or existing package owners to drop BuildRequires: pkgconfig in spec files?
Parag.
[1]https://fedoraproject.org/wiki/Packaging/Guidelines#Exceptions_2
On 06/22/2010 05:55 PM, Parag N(पराग़) wrote:
Hi, I see minimal build environment always pulling pkgconfig and also we have " There is no need to include the following packages or their dependencies as BuildRequires because they would occur too often." written in packaging guidelines[1]. Does this mean I can recommend in new package reviews or existing package owners to drop BuildRequires: pkgconfig in spec files?
No, packages which utilize pkg-config while building should require BR: pkgconfig.
The fact pkgconfig is often indirectly pulled-in (in most cases by other *-devel packages) while building is a just a reflection of the state of these "other packages" were in when they had been built.
Though it's unlikely to happen, they may drop or loose their *.pc's at any time and thus loose this implicit dependency on pkgconfig.
What is supposed to be safe is to drop "Requires: pkgconfig", because today's rpmbuild is supposed to add this dependency automatically.
Ralf
Hi,
On Tue, Jun 22, 2010 at 9:41 PM, Ralf Corsepius rc040203@freenet.de wrote:
On 06/22/2010 05:55 PM, Parag N(पराग़) wrote:
Hi, I see minimal build environment always pulling pkgconfig and also we have " There is no need to include the following packages or their dependencies as BuildRequires because they would occur too often." written in packaging guidelines[1]. Does this mean I can recommend in new package reviews or existing package owners to drop BuildRequires: pkgconfig in spec files?
No, packages which utilize pkg-config while building should require BR: pkgconfig.
The fact pkgconfig is often indirectly pulled-in (in most cases by other *-devel packages) while building is a just a reflection of the state of these "other packages" were in when they had been built.
Though it's unlikely to happen, they may drop or loose their *.pc's at any time and thus loose this implicit dependency on pkgconfig.
What is supposed to be safe is to drop "Requires: pkgconfig", because today's rpmbuild is supposed to add this dependency automatically.
This can confuse packagers if they forgot to add BR: pkgconfig( I know there comes reviewer's job to check it), but koji build still succeeds as pkgconfig already present in build environment and guidelines only said packages installed in buildroot are not needed to be BR in spec.
Parag.
Parag N(पराग़) wrote, at 06/23/2010 12:55 AM +9:00:
Hi, I see minimal build environment always pulling pkgconfig and also we have " There is no need to include the following packages or their dependencies as BuildRequires because they would occur too often." written in packaging guidelines[1]. Does this mean I can recommend in new package reviews or existing package owners to drop BuildRequires: pkgconfig in spec files?
Parag.
[1]https://fedoraproject.org/wiki/Packaging/Guidelines#Exceptions_2
While currently I have no strong positive or negative opinion for this, I just note that the reason that currently even minimal buildroot always pulls pkgconfig in is because rpm-build package has explicit "Requires: pkgconfig" . See:
* Wed Dec 03 2008 Panu Matilainen pmatilai@redhat.com - make rpm-build require pkgconfig (#473978)
Regards, Mamoru
Mamoru Tasaka wrote:
Parag N(पराग़) wrote, at 06/23/2010 12:55 AM +9:00:
Hi, I see minimal build environment always pulling pkgconfig and also we have " There is no need to include the following packages or their dependencies as BuildRequires because they would occur too often." written in packaging guidelines[1]. Does this mean I can recommend in new package reviews or existing package owners to drop BuildRequires: pkgconfig in spec files?
Parag.
[1]https://fedoraproject.org/wiki/Packaging/Guidelines#Exceptions_2
While currently I have no strong positive or negative opinion for this, I just note that the reason that currently even minimal buildroot always pulls pkgconfig in is because rpm-build package has explicit "Requires: pkgconfig" . See:
- Wed Dec 03 2008 Panu Matilainen pmatilai@redhat.com
- make rpm-build require pkgconfig (#473978)
Ok, for posterity I personally would've prefered the second option: - All packages creating .pc file should have "_Build_Requires pkgconfig"
But what is done is done. If rpm-build is going to Requires: pkgconfig going forward, then we may as well add this one to the exceptions list.
-- Rex
On 06/22/2010 07:48 PM, Rex Dieter wrote:
Mamoru Tasaka wrote:
Parag N(पराग़) wrote, at 06/23/2010 12:55 AM +9:00:
Hi, I see minimal build environment always pulling pkgconfig and also we have " There is no need to include the following packages or their dependencies as BuildRequires because they would occur too often." written in packaging guidelines[1]. Does this mean I can recommend in new package reviews or existing package owners to drop BuildRequires: pkgconfig in spec files?
Parag.
[1]https://fedoraproject.org/wiki/Packaging/Guidelines#Exceptions_2
While currently I have no strong positive or negative opinion for this, I just note that the reason that currently even minimal buildroot always pulls pkgconfig in is because rpm-build package has explicit "Requires: pkgconfig" . See:
- Wed Dec 03 2008 Panu Matilainenpmatilai@redhat.com
- make rpm-build require pkgconfig (#473978)
Ok, for posterity I personally would've prefered the second option:
- All packages creating .pc file should have "_Build_Requires pkgconfig"
Not quite: "All packages _using_ *.pc's need to have BuildRequires: pkgconfig" would have been correct.
pkg-config is not being used to create *.pc's, it's being used to check other package's setups (aka. configuration).
But what is done is done. If rpm-build is going to Requires: pkgconfig going forward, then we may as well add this one to the exceptions list.
The fact rpm-build Requires: pkgconfig is a random coincidence, not a feature. It's simply that current rpmbuild uses pkg-config inside of its *.pc tracking, Though it's unlikely to happen, it may switch to using a different implementation at any time.
Ralf
packaging@lists.fedoraproject.org