However, if the programmer knows what he's doing, no shared libraries
will be sought in $ORIGIN/../lib and actually the trampoline executable
will not be needed (and there will be no security considerations to be
careful about).
What do you mean here by "if the programmer knows what he's doing"? Do you
mean, the programmer has a different mechanism for ensuring relocatability,
that does not use the runtime loader for shared libraries? How should that
different mechanism look like?
If the program has no dependent libraries in $ORIGIN/../lib, and only
needs relocatability of *files*. For example, in GNU Smalltalk I wanted
to enable relocatability by default if --disable-shared is given.
Paolo