On 2019-03-28 08:59, Michael Haubenwallner wrote: > Hi Achim, > > On 3/27/19 8:59 PM, Achim Gratz wrote: >> Michael Haubenwallner writes: >>> As far as I understand, rebasing is about touching already installed >>> dlls as well, which would require to restart all Cygwin processes. >>> As the problem is about some dll built during a larger build job, >>> this is not something that feels useful to me. >> >> That's exactly why I introduced the "--oblivious" option several years >> ago. It'll let you rebase a set of DLL while benefitting from the >> rebase database, but not recording them there, so if you later install >> them properly there will be no collision. I needed this for testing >> newly compiled Perl XS modules, but you seem to have a similar use case. > > What I can see so far is that right now there is only one single rebase > database, in /etc/rebase.db.<arch>. > > However, my 'installed' dlls are not put into /bin, but into the so called > Gentoo "Prefix", e.g. /home/haubi/test-20190327/gentoo-prefix/usr/bin for > example. Remember that there can be multiple independent instances of Gentoo > Prefix, so recording them all into the host /etc/rebase.db is not an option. > > Hence there should be a rebase database per Gentoo Prefix instance, like > /home/haubi/test-20190327/gentoo-prefix/etc/rebase.db.<arch>, to record > my 'installed' dlls, while still loading the /etc/rebase.db.<arch> to avoid > conflicts with cygwin provided dlls. > > And how would one explicitly remove specific entries from the rebase database > when dlls get uninstalled (by either package remove or package upgrade)?
Using rebase -O, --oblivious with -T, --filelist local-test-rebase-db gives you your own local test rebase db - just add all your test dlls into it (sort -u to eliminate dups). -- Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada This email may be disturbing to some readers as it contains too much technical detail. Reader discretion is advised.