Patch by Chris Waters removes -rpath from search flags and adds -soname
to library build options.

Also, it fixes Makefile.in to put correct Tk library filename to pkgIndex.tcl

--- tk8.4-8.4.19.orig/unix/configure
+++ tk8.4-8.4.19/unix/configure
@@ -2568,12 +2568,15 @@
 	    # get rid of the warnings.
 	    #CFLAGS_OPTIMIZE="${CFLAGS_OPTIMIZE} -D__NO_STRING_INLINES -D__NO_MATH_INLINES"
 
+	    # following line added by CW for Debian GNU/Linux
+	    TK_SHLIB_LD_EXTRAS="-Wl,-soname,\${TK_LIB_FILE}.0"
+
 	    if test "$have_dl" = yes; then
 		SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS}'
 		DL_OBJS="tclLoadDl.o"
 		DL_LIBS="-ldl"
 		LDFLAGS="$LDFLAGS -Wl,--export-dynamic"
-		CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}'
+		CC_SEARCH_FLAGS=""
 		LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}
 	    else
 		ac_safe=`echo "dld.h" | sed 'y%./+-%__p_%'`
--- tk8.4-8.4.19.orig/unix/Makefile.in
+++ tk8.4-8.4.19/unix/Makefile.in
@@ -635,7 +635,7 @@
 	    relative=`echo | awk '{ORS=" "; split("$(TK_PKG_DIR)",a,"/"); for (f in a) {print ".."}}'`;\
 	    echo "if {[package vcompare [package provide Tcl] $(TCLVERSION)] != 0} { return }";\
 	    echo "package ifneeded Tk $(MAJOR_VERSION).$(MINOR_VERSION)\
-		[list load [file join \$$dir $${relative}$(TK_LIB_FILE)] Tk]";\
+		[list load [file join $(LIB_RUNTIME_DIR) $(TK_LIB_FILE).0] Tk]";\
 	    ) > $(PKG_INDEX); \
 	    fi
 	@echo "Installing $(LIB_FILE) to $(LIB_INSTALL_DIR)/"
--- tk8.4-8.4.19.orig/unix/tcl.m4
+++ tk8.4-8.4.19/unix/tcl.m4
@@ -1346,20 +1346,23 @@
 	    # get rid of the warnings.
 	    #CFLAGS_OPTIMIZE="${CFLAGS_OPTIMIZE} -D__NO_STRING_INLINES -D__NO_MATH_INLINES"
 
+	    # following line added by CW for Debian GNU/Linux
+	    TK_SHLIB_LD_EXTRAS="-Wl,-soname,\${TK_LIB_FILE}.0"
+
 	    if test "$have_dl" = yes; then
 		SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS}'
 		DL_OBJS="tclLoadDl.o"
 		DL_LIBS="-ldl"
 		LDFLAGS="$LDFLAGS -Wl,--export-dynamic"
-		CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}'
-		LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}
+		CC_SEARCH_FLAGS=""
+		LD_SEARCH_FLAGS="${CC_SEARCH_FLAGS}"
 	    else
 		AC_CHECK_HEADER(dld.h, [
 		    SHLIB_LD="ld -shared"
 		    DL_OBJS="tclLoadDld.o"
 		    DL_LIBS="-ldld"
 		    CC_SEARCH_FLAGS=""
-		    LD_SEARCH_FLAGS=""])
+		    LD_SEARCH_FLAGS="${CC_SEARCH_FLAGS}"])
 	    fi
 	    if test "`uname -m`" = "alpha" ; then
 		CFLAGS="$CFLAGS -mieee"