On Fri, Jul 15, 2011 at 2:51 PM, Phil Perry <p...@pendre.co.uk> wrote:
> On 15/07/11 19:28, Andrew Z wrote:
>>
>> Hello,
>>  i just got curios (google is not helping me @ the moment)...
>> What is the right way to handle versions of the files during
>> installation and removal of the rpm?
>> Example:
>> ls -l ./
>> <no files>
>>
>> rpm -uhv   lib_andrew-123.rpm:
>>  lib_andrew.so ->  lib_andrew.so.123
>>
>> rpm -uhv   lib_andrew-456.rpm:
>>   lib_andrew.so ->  lib_andrew.so.456
>>
>> ls -l ./
>>  lib_andrew.so ->  lib_andrew.so.456
>> lib_andrew.so.123
>>
>> now, what if i want to remove version 123 ???
>>
>> Andrew
>>
>
> You need to have your SPEC file create the symlinks in the buildroot so that
> they are a part of the package, i.e, the symlinks are owned by the rpm
> package. Then when you uninstall or update the package rpm will
> remove/update the symlinks for you rather than leave them dangling as per
> your example above.

This is normally handled by "autoconf" based installations installing
the software into the RPM build environments "buildroot", and RPM
collecting up a list of the files, based on the SPEC file settings.
RPM is also good about reporting discrepancies.

I've done amazing amounts of turning sloppy, hard coded build
structures into autoconf and RPM compatible structures.

> Take a look in any relevant package SPEC file from the distro for examples
> of how this should be handled.
>

Reply via email to