O problema estava de fato nas minhas configurações do Makefile. Inspecionar a biblioteca com objdump revelou a causa raiz:
$ objdump -p libGL.so.1 |grep SONAME
SONAME libGL.so.1.2.0
ldd mostrou libGL.so.1 e libGL.so.1.2.0 , porque o primeiro foi importado por glxgears e o segundo foi importado pela minha implementação de libGLU , que foi criada com base na versão acelerada por hardware de libGL e, portanto, sabia que seu soname, libGL.so.1.2.0 .
A correção foi mudar o soname com -soname,libGL.so.1 .