This support script ends up hardcoding unnecessary rpaths into the libraries. We
will search $libdir automatically so this is just wastes space. There may be some
cases this is necessary but our use cases aren't one of them.

Upstream-Status: Inappropriate

RP 2012/2/23

Index: readline-6.2/support/shobj-conf
===================================================================
--- readline-6.2.orig/support/shobj-conf	2012-02-23 11:06:37.193179379 +0000
+++ readline-6.2/support/shobj-conf	2012-02-23 11:06:50.049178918 +0000
@@ -114,7 +114,7 @@
 	SHOBJ_LD='${CC}'
 	SHOBJ_LDFLAGS='-shared -Wl,-soname,$@'
 
-	SHLIB_XLDFLAGS='-Wl,-rpath,$(libdir) -Wl,-soname,`basename $@ $(SHLIB_MINOR)`'
+	SHLIB_XLDFLAGS='-Wl,-soname,`basename $@ $(SHLIB_MINOR)`'
 	SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)$(SHLIB_MINOR)'
 	;;
 
