Improve ELF shared library handling

Pass in -rpath-link option to the linker so that blkid will build
correctly on systems that don't have libcom_err.so.2 installed.

Fix debugfs to only try to link with -ldl when building without shared
libraries; with ELF shared libraries, the library which requires -ldl
(libss.so) can required the library dependency itself.

Fix how we build tune2fs.static so that we use @LDFLAG_STATIC@, via
$(LDFLAGS_STATIC), instead of hard-coding the use of -static.

Addresses-Sourceforge-Bug: #2088537

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
diff --git a/configure b/configure
index 5cf203e..0e3bdbe 100755
--- a/configure
+++ b/configure
@@ -684,6 +684,8 @@
 LIB_EXT
 STATIC_LIB_EXT
 PROFILED_LIB_EXT
+LDFLAG_DYNAMIC
+PRIVATE_LIBS_CMT
 TEST_IO_CMT
 DEBUGFS_CMT
 IMAGER_CMT
@@ -3842,6 +3844,8 @@
 
 
 E2_PKG_CONFIG_STATIC=--static
+LDFLAG_DYNAMIC=
+PRIVATE_LIBS_CMT=
 # Check whether --enable-elf-shlibs was given.
 if test "${enable_elf_shlibs+set}" = set; then
   enableval=$enable_elf_shlibs; if test "$enableval" = "no"
@@ -3861,6 +3865,8 @@
 	esac
 	BINARY_TYPE=elfbin
 	LIB_EXT=.so
+	PRIVATE_LIBS_CMT=#
+	LDFLAG_DYNAMIC='-Wl,-rpath-link,$(top_builddir)/lib'
 	{ echo "$as_me:$LINENO: result: Enabling ELF shared libraries" >&5
 echo "${ECHO_T}Enabling ELF shared libraries" >&6; }
 fi
@@ -3962,6 +3968,8 @@
 
 
 
+
+
 # Check whether --enable-jbd-debug was given.
 if test "${enable_jbd_debug+set}" = set; then
   enableval=$enable_jbd_debug; if test "$enableval" = "no"
@@ -15902,8 +15910,8 @@
 LIB_EXT!$LIB_EXT$ac_delim
 STATIC_LIB_EXT!$STATIC_LIB_EXT$ac_delim
 PROFILED_LIB_EXT!$PROFILED_LIB_EXT$ac_delim
-TEST_IO_CMT!$TEST_IO_CMT$ac_delim
-DEBUGFS_CMT!$DEBUGFS_CMT$ac_delim
+LDFLAG_DYNAMIC!$LDFLAG_DYNAMIC$ac_delim
+PRIVATE_LIBS_CMT!$PRIVATE_LIBS_CMT$ac_delim
 _ACEOF
 
   if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 73; then
@@ -15977,6 +15985,8 @@
 ac_delim='%!_!# '
 for ac_last_try in false false false false false :; do
   cat >conf$$subs.sed <<_ACEOF
+TEST_IO_CMT!$TEST_IO_CMT$ac_delim
+DEBUGFS_CMT!$DEBUGFS_CMT$ac_delim
 IMAGER_CMT!$IMAGER_CMT$ac_delim
 RESIZER_CMT!$RESIZER_CMT$ac_delim
 FSCK_PROG!$FSCK_PROG$ac_delim
@@ -16060,7 +16070,7 @@
 LTLIBOBJS!$LTLIBOBJS$ac_delim
 _ACEOF
 
-  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 81; then
+  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 83; then
     break
   elif $ac_last_try; then
     { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
@@ -16508,4 +16518,3 @@
 fi
 
 if test -f util/gen-tarball; then chmod +x util/gen-tarball; fi
-