[opensuse-packaging] How to update lib name in baselib.conf automatically
It seems that baselibs.conf doesn't take macros and with versioned lib names a packager can easily forget to update the library name in baselibs.conf. This is a problem with libraries It also seems that you can't create baselibs.conf at build time either, I tried copying back to SOURCE/ but that results in an empty baselibs.conf. Maybe precheckin_baselibs.sh will work? Any suggestions? Thanks Dave Plater -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Fri, Mar 03, 2017 at 11:34:07AM +0200, Dave Plater wrote:
It seems that baselibs.conf doesn't take macros and with versioned lib names a packager can easily forget to update the library name in baselibs.conf. This is a problem with libraries
It also seems that you can't create baselibs.conf at build time either, I tried copying back to SOURCE/ but that results in an empty baselibs.conf.
Maybe precheckin_baselibs.sh will work?
You get a checkin error if the library does not match. Just do it manually? Ciao, Marcus -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On 03/03/2017 11:46, Marcus Meissner wrote:
On Fri, Mar 03, 2017 at 11:34:07AM +0200, Dave Plater wrote:
It seems that baselibs.conf doesn't take macros and with versioned lib names a packager can easily forget to update the library name in baselibs.conf. This is a problem with libraries
It also seems that you can't create baselibs.conf at build time either, I tried copying back to SOURCE/ but that results in an empty baselibs.conf.
Maybe precheckin_baselibs.sh will work? You get a checkin error if the library does not match.
Just do it manually?
Ciao, Marcus I'm worried about others doing it, I'm working on the library for a bug and the last updater didn't do it. This found it's way to Factory. Anyway I've made a precheckin_baselibs.sh that gets the correct lib name from the source zip file only I've forgotten how to make it run on check in. Thanks Dave P -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
On Fri, 2017-03-03 at 12:08 +0200, Dave Plater wrote:
I'm worried about others doing it, I'm working on the library for a bug and the last updater didn't do it. This found it's way to Factory. Anyway I've made a precheckin_baselibs.sh that gets the correct lib name from the source zip file only I've forgotten how to make it run on check in.
How long ago was that? It's been a long time that I extended the bot to check what is in baselibs.conf is actually built by the .spec file.. so if the lib name changes in the .spec but not in baselibs.conf, it would decline it right away with a message similar to: osc service lr source_validator - package has baselibs.conf: (new or modified) -------------------------------------------------------------- libfdt0 libfdt-devel -------------------------------------------------------------- ###ASK /home/dimstar/Documents/osc/Base:System/dtc/baselibs.conf ERROR: 'libfdt0' referenced in baselibs.conf is not being built the lib in the .spec file is called libfdt1 - so the check properly declined it. None of those pre_checkin scripts are auto-launched on checkin - they are as much a packagers responsibility as is the .spec file and the .changes file. Cheers, Dominique
On Fri, 2017-03-03 at 12:08 +0200, Dave Plater wrote:
I'm worried about others doing it, I'm working on the library for a bug and the last updater didn't do it. This found it's way to Factory. Anyway I've made a precheckin_baselibs.sh that gets the correct lib name from the source zip file only I've forgotten how to make it run on check in. How long ago was that? It's been a long time that I extended the bot to check what is in baselibs.conf is actually built by the .spec file.. so if the lib name changes in the .spec but not in baselibs.conf, it would decline it right away with a message similar to:
osc service lr source_validator - package has baselibs.conf: (new or modified) -------------------------------------------------------------- libfdt0 libfdt-devel -------------------------------------------------------------- ###ASK /home/dimstar/Documents/osc/Base:System/dtc/baselibs.conf ERROR: 'libfdt0' referenced in baselibs.conf is not being built
the lib in the .spec file is called libfdt1 - so the check properly declined it.
None of those pre_checkin scripts are auto-launched on checkin - they are as much a packagers responsibility as is the .spec file and the .changes file.
Cheers, Dominique
On 03/03/2017 12:19, Dominique Leuenberger / DimStar wrote: libcryptopp but it's my mistake baselibs.conf in factory is correct, the cryptopp.pc file contains a previous version. I've changed the soname to fix boo#1027192. The .pc file now gets created in the spec file. %run sh precheckin_baselibs.sh seems to work but it generates macro warnings and appends itself to the description. This isn't in the package I've submitted, I'll leave the precheckin script with a WARNING: note and drop the %run as I don't really know how it works. Regards Dave P -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org
participants (3)
-
Dave Plater
-
Dominique Leuenberger / DimStar
-
Marcus Meissner