aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/tcltk/tcl/tcl-add-soname.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/tcltk/tcl/tcl-add-soname.patch')
-rw-r--r--meta/recipes-devtools/tcltk/tcl/tcl-add-soname.patch50
1 files changed, 50 insertions, 0 deletions
diff --git a/meta/recipes-devtools/tcltk/tcl/tcl-add-soname.patch b/meta/recipes-devtools/tcltk/tcl/tcl-add-soname.patch
new file mode 100644
index 0000000000..9cb816da51
--- /dev/null
+++ b/meta/recipes-devtools/tcltk/tcl/tcl-add-soname.patch
@@ -0,0 +1,50 @@
+Index: unix/configure
+===================================================================
+--- unix.orig/configure
++++ unix/configure
+@@ -6726,6 +6726,7 @@ fi
+ # symbols when dynamically loaded into tclsh.
+ SHLIB_LD_LIBS='${LIBS}'
+ SHLIB_SUFFIX=".so"
++ SHARED_LIB_SUFFIX='${VERSION}\$\{DBGX\}.so.0'
+
+ DL_OBJS="tclLoadDl.o"
+ LD_LIBRARY_PATH_VAR="LIBPATH"
+Index: unix/tcl.m4
+===================================================================
+--- unix.orig/tcl.m4
++++ unix/tcl.m4
+@@ -1424,6 +1424,7 @@ dnl AC_CHECK_TOOL(AR, ar)
+ SHLIB_CFLAGS="-fPIC"
+ SHLIB_LD_LIBS='${LIBS}'
+ SHLIB_SUFFIX=".so"
++ SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}\$\{DBGX\}.so.0'
+
+ CFLAGS_OPTIMIZE="-O2"
+ # egcs-2.91.66 on Redhat Linux 6.0 generates lots of warnings
+@@ -1431,12 +1432,15 @@ dnl AC_CHECK_TOOL(AR, ar)
+ # 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
++ TCL_SHLIB_LD_EXTRAS="-Wl,-soname,\${TCL_LIB_FILE}.0"
++
+ SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS}'
+ DL_OBJS="tclLoadDl.o"
+ DL_LIBS="-ldl"
+ LDFLAGS="$LDFLAGS -Wl,--export-dynamic"
+ AS_IF([test $doRpath = yes], [
+- CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}'])
++ CC_SEARCH_FLAGS=''])
+ LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}
+ AS_IF([test "`uname -m`" = "alpha"], [CFLAGS="$CFLAGS -mieee"])
+ AS_IF([test $do64bit = yes], [
+@@ -2079,7 +2083,7 @@ dnl # preprocessing tests use only CPPFL
+
+ AS_IF([test "${SHARED_BUILD}" = 1 -a "${SHLIB_SUFFIX}" != ""], [
+ LIB_SUFFIX=${SHARED_LIB_SUFFIX}
+- MAKE_LIB='${SHLIB_LD} -o [$]@ ${OBJS} ${SHLIB_LD_LIBS} ${TCL_SHLIB_LD_EXTRAS} ${TK_SHLIB_LD_EXTRAS} ${LD_SEARCH_FLAGS}'
++ MAKE_LIB='${SHLIB_LD} -o $@ ${OBJS} ${SHLIB_LD_LIBS} ${TCL_SHLIB_LD_EXTRAS} ${TK_SHLIB_LD_EXTRAS} ${LD_SEARCH_FLAGS}'
+ INSTALL_LIB='$(INSTALL_LIBRARY) $(LIB_FILE) "$(LIB_INSTALL_DIR)"/$(LIB_FILE)'
+ ], [
+ LIB_SUFFIX=${UNSHARED_LIB_SUFFIX}