diff options
Diffstat (limited to 'meta/packages/tcltk/tcl/tcl-add-soname.patch')
-rw-r--r-- | meta/packages/tcltk/tcl/tcl-add-soname.patch | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/meta/packages/tcltk/tcl/tcl-add-soname.patch b/meta/packages/tcltk/tcl/tcl-add-soname.patch new file mode 100644 index 0000000000..38762644cd --- /dev/null +++ b/meta/packages/tcltk/tcl/tcl-add-soname.patch | |||
@@ -0,0 +1,72 @@ | |||
1 | --- clean/tcl8.4.19/unix/configure 2008-04-17 21:29:49.000000000 +0100 | ||
2 | +++ tcl8.4.19/unix/configure 2009-11-13 11:46:36.000000000 +0000 | ||
3 | @@ -3065,6 +3065,7 @@ | ||
4 | SHLIB_CFLAGS="-fPIC" | ||
5 | SHLIB_LD_LIBS='${LIBS}' | ||
6 | SHLIB_SUFFIX=".so" | ||
7 | + SHARED_LIB_SUFFIX='${VERSION}\$\{DBGX\}.so.0' | ||
8 | |||
9 | CFLAGS_OPTIMIZE=-O2 | ||
10 | # egcs-2.91.66 on Redhat Linux 6.0 generates lots of warnings | ||
11 | @@ -3072,12 +3073,15 @@ | ||
12 | # get rid of the warnings. | ||
13 | #CFLAGS_OPTIMIZE="${CFLAGS_OPTIMIZE} -D__NO_STRING_INLINES -D__NO_MATH_INLINES" | ||
14 | |||
15 | + # following line added by CW for Debian GNU/Linux | ||
16 | + TCL_SHLIB_LD_EXTRAS="-Wl,-soname,\${TCL_LIB_FILE}" | ||
17 | + | ||
18 | if test "$have_dl" = yes; then | ||
19 | SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS}' | ||
20 | DL_OBJS="tclLoadDl.o" | ||
21 | DL_LIBS="-ldl" | ||
22 | LDFLAGS="$LDFLAGS -Wl,--export-dynamic" | ||
23 | - CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' | ||
24 | + CC_SEARCH_FLAGS="" | ||
25 | LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS} | ||
26 | else | ||
27 | ac_safe=`echo "dld.h" | sed 'y%./+-%__p_%'` | ||
28 | @@ -4299,7 +4303,7 @@ | ||
29 | |||
30 | if test "${SHARED_BUILD}" = "1" && test "${SHLIB_SUFFIX}" != "" ; then | ||
31 | LIB_SUFFIX=${SHARED_LIB_SUFFIX} | ||
32 | - MAKE_LIB='${SHLIB_LD} -o $@ ${OBJS} ${SHLIB_LD_LIBS} ${TCL_SHLIB_LD_EXTRAS} ${TK_SHLIB_LD_EXTRAS} ${LD_SEARCH_FLAGS}' | ||
33 | + MAKE_LIB='${SHLIB_LD} -o $@ ${OBJS} ${SHLIB_LD_LIBS} ${TCL_SHLIB_LD_EXTRAS} ${TK_SHLIB_LD_EXTRAS} ${LD_SEARCH_FLAGS} ; ln -s $(LIB_FILE) `basename $(LIB_FILE) .so.0`\${SHLIB_SUFFIX}' | ||
34 | INSTALL_LIB='$(INSTALL_LIBRARY) $(LIB_FILE) $(LIB_INSTALL_DIR)/$(LIB_FILE)' | ||
35 | else | ||
36 | LIB_SUFFIX=${UNSHARED_LIB_SUFFIX} | ||
37 | --- clean/tcl8.4.19/unix/tcl.m4 2008-04-17 21:29:49.000000000 +0100 | ||
38 | +++ tcl8.4.19/unix/tcl.m4 2009-11-13 11:53:57.000000000 +0000 | ||
39 | @@ -1337,6 +1337,7 @@ | ||
40 | SHLIB_CFLAGS="-fPIC" | ||
41 | SHLIB_LD_LIBS='${LIBS}' | ||
42 | SHLIB_SUFFIX=".so" | ||
43 | + SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}\$\{DBGX\}.so.0' | ||
44 | |||
45 | CFLAGS_OPTIMIZE=-O2 | ||
46 | # egcs-2.91.66 on Redhat Linux 6.0 generates lots of warnings | ||
47 | @@ -1344,12 +1345,15 @@ | ||
48 | # get rid of the warnings. | ||
49 | #CFLAGS_OPTIMIZE="${CFLAGS_OPTIMIZE} -D__NO_STRING_INLINES -D__NO_MATH_INLINES" | ||
50 | |||
51 | + # following line added by CW for Debian GNU/Linux | ||
52 | + TCL_SHLIB_LD_EXTRAS="-Wl,-soname,\${TCL_LIB_FILE}.0" | ||
53 | + | ||
54 | if test "$have_dl" = yes; then | ||
55 | SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS}' | ||
56 | DL_OBJS="tclLoadDl.o" | ||
57 | DL_LIBS="-ldl" | ||
58 | LDFLAGS="$LDFLAGS -Wl,--export-dynamic" | ||
59 | - CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' | ||
60 | + CC_SEARCH_FLAGS="" | ||
61 | LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS} | ||
62 | else | ||
63 | AC_CHECK_HEADER(dld.h, [ | ||
64 | @@ -2117,7 +2121,7 @@ | ||
65 | |||
66 | if test "${SHARED_BUILD}" = "1" && test "${SHLIB_SUFFIX}" != "" ; then | ||
67 | LIB_SUFFIX=${SHARED_LIB_SUFFIX} | ||
68 | - MAKE_LIB='${SHLIB_LD} -o [$]@ ${OBJS} ${SHLIB_LD_LIBS} ${TCL_SHLIB_LD_EXTRAS} ${TK_SHLIB_LD_EXTRAS} ${LD_SEARCH_FLAGS}' | ||
69 | + MAKE_LIB='${SHLIB_LD} -o $@ ${OBJS} ${SHLIB_LD_LIBS} ${TCL_SHLIB_LD_EXTRAS} ${TK_SHLIB_LD_EXTRAS} ${LD_SEARCH_FLAGS} ; ln -s $(LIB_FILE) `basename $(LIB_FILE) .so.0`\${SHLIB_SUFFIX}' | ||
70 | INSTALL_LIB='$(INSTALL_LIBRARY) $(LIB_FILE) $(LIB_INSTALL_DIR)/$(LIB_FILE)' | ||
71 | else | ||
72 | LIB_SUFFIX=${UNSHARED_LIB_SUFFIX} | ||