On Fri, Jul 15, 2011 at 10:58 PM, Nico Kadel-Garcia <[email protected]>wrote:
> On Fri, Jul 15, 2011 at 2:51 PM, Phil Perry <[email protected]> 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. > > Nico, mind to shed more light on how to do this ?
