diff options
Diffstat (limited to 'meta/recipes-devtools/tcltk')
4 files changed, 219 insertions, 0 deletions
diff --git a/meta/recipes-devtools/tcltk/tcl/fix-configure.patch b/meta/recipes-devtools/tcltk/tcl/fix-configure.patch new file mode 100644 index 0000000000..8b2654bae0 --- /dev/null +++ b/meta/recipes-devtools/tcltk/tcl/fix-configure.patch | |||
@@ -0,0 +1,44 @@ | |||
1 | Index: unix/tcl.m4 | ||
2 | =================================================================== | ||
3 | --- tcl8.4.11/unix.orig/tcl.m4 | ||
4 | +++ tcl8.4.11/unix/tcl.m4 | ||
5 | @@ -845,7 +845,7 @@ AC_DEFUN(SC_CONFIG_CFLAGS, [ | ||
6 | # results, and the version is kept in special file). | ||
7 | |||
8 | if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then | ||
9 | - system=MP-RAS-`awk '{print $3}' /etc/.relid'` | ||
10 | + system=MP-RAS-`awk '{print $3}' /etc/.relid` | ||
11 | fi | ||
12 | if test "`uname -s`" = "AIX" ; then | ||
13 | system=AIX-`uname -v`.`uname -r` | ||
14 | @@ -2250,7 +2250,7 @@ AC_DEFUN(SC_BLOCKING_STYLE, [ | ||
15 | # results, and the version is kept in special file). | ||
16 | |||
17 | if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then | ||
18 | - system=MP-RAS-`awk '{print $3}' /etc/.relid'` | ||
19 | + system=MP-RAS-`awk '{print $3}' /etc/.relid` | ||
20 | fi | ||
21 | if test "`uname -s`" = "AIX" ; then | ||
22 | system=AIX-`uname -v`.`uname -r` | ||
23 | Index: unix/configure | ||
24 | =================================================================== | ||
25 | --- tcl8.4.11/unix.orig/configure | ||
26 | +++ tcl8.4.11/unix/configure | ||
27 | @@ -2130,7 +2130,7 @@ echo "configure:2121: checking system ve | ||
28 | # results, and the version is kept in special file). | ||
29 | |||
30 | if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then | ||
31 | - system=MP-RAS-`awk '{print }' /etc/.relid'` | ||
32 | + system=MP-RAS-`awk '{print }' /etc/.relid` | ||
33 | fi | ||
34 | if test "`uname -s`" = "AIX" ; then | ||
35 | system=AIX-`uname -v`.`uname -r` | ||
36 | @@ -7608,7 +7608,7 @@ echo "configure:7600: checking FIONBIO v | ||
37 | # results, and the version is kept in special file). | ||
38 | |||
39 | if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then | ||
40 | - system=MP-RAS-`awk '{print }' /etc/.relid'` | ||
41 | + system=MP-RAS-`awk '{print }' /etc/.relid` | ||
42 | fi | ||
43 | if test "`uname -s`" = "AIX" ; then | ||
44 | system=AIX-`uname -v`.`uname -r` | ||
diff --git a/meta/recipes-devtools/tcltk/tcl/fix_non_native_build_issue.patch b/meta/recipes-devtools/tcltk/tcl/fix_non_native_build_issue.patch new file mode 100644 index 0000000000..b2d98c131c --- /dev/null +++ b/meta/recipes-devtools/tcltk/tcl/fix_non_native_build_issue.patch | |||
@@ -0,0 +1,63 @@ | |||
1 | Index: unix/Makefile.in | ||
2 | =================================================================== | ||
3 | --- unix.orig/Makefile.in | ||
4 | +++ unix/Makefile.in | ||
5 | @@ -622,20 +622,20 @@ ro-test: tcltest | ||
6 | shell: tclsh | ||
7 | @LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \ | ||
8 | TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \ | ||
9 | - ./tclsh $(SCRIPT) | ||
10 | + tclsh $(SCRIPT) | ||
11 | |||
12 | # This target can be used to run tclsh inside either gdb or insight | ||
13 | gdb: tclsh | ||
14 | @echo "set env @LD_LIBRARY_PATH_VAR@=\"`pwd`:$${@LD_LIBRARY_PATH_VAR@}\"" > gdb.run | ||
15 | @echo "set env TCL_LIBRARY=${TCL_BUILDTIME_LIBRARY}" >> gdb.run | ||
16 | - $(GDB) ./tclsh --command=gdb.run | ||
17 | + $(GDB) tclsh --command=gdb.run | ||
18 | rm gdb.run | ||
19 | |||
20 | # This target can be used to run tclsh inside ddd | ||
21 | ddd: tclsh | ||
22 | @echo "set env @LD_LIBRARY_PATH_VAR@=\"`pwd`:$${@LD_LIBRARY_PATH_VAR@}\"" > gdb.run | ||
23 | @echo "set env TCL_LIBRARY=${TCL_BUILDTIME_LIBRARY}" >> gdb.run | ||
24 | - $(DDD) -command=gdb.run ./tclsh | ||
25 | + $(DDD) -command=gdb.run tclsh | ||
26 | rm gdb.run | ||
27 | |||
28 | VALGRINDARGS=--tool=memcheck --num-callers=8 --leak-resolution=high --leak-check=yes --show-reachable=yes -v | ||
29 | @@ -648,7 +648,7 @@ valgrind: tclsh tcltest | ||
30 | valgrindshell: tclsh | ||
31 | @LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \ | ||
32 | TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \ | ||
33 | - valgrind $(VALGRINDARGS) ./tclsh $(SCRIPT) | ||
34 | + valgrind $(VALGRINDARGS) tclsh $(SCRIPT) | ||
35 | |||
36 | # The following target outputs the name of the top-level source directory for | ||
37 | # Tcl (it is used by Tk's configure script, for example). The .NO_PARALLEL | ||
38 | @@ -817,14 +817,14 @@ install-tzdata: tclsh | ||
39 | @echo "Installing time zone data" | ||
40 | @@LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \ | ||
41 | TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \ | ||
42 | - ./tclsh $(TOOL_DIR)/installData.tcl \ | ||
43 | + tclsh $(TOOL_DIR)/installData.tcl \ | ||
44 | $(TOP_DIR)/library/tzdata "$(SCRIPT_INSTALL_DIR)"/tzdata | ||
45 | |||
46 | install-msgs: tclsh | ||
47 | @echo "Installing message catalogs" | ||
48 | @@LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \ | ||
49 | TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \ | ||
50 | - ./tclsh $(TOOL_DIR)/installData.tcl \ | ||
51 | + tclsh $(TOOL_DIR)/installData.tcl \ | ||
52 | $(TOP_DIR)/library/msgs "$(SCRIPT_INSTALL_DIR)"/msgs | ||
53 | |||
54 | install-doc: doc | ||
55 | @@ -1764,7 +1764,7 @@ html-tk: tclsh | ||
56 | BUILD_HTML = \ | ||
57 | @@LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \ | ||
58 | TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \ | ||
59 | - ./tclsh $(TOOL_DIR)/tcltk-man2html.tcl --htmldir="$(HTML_INSTALL_DIR)" \ | ||
60 | + tclsh $(TOOL_DIR)/tcltk-man2html.tcl --htmldir="$(HTML_INSTALL_DIR)" \ | ||
61 | --srcdir=$(TOP_DIR)/.. $(BUILD_HTML_FLAGS) | ||
62 | |||
63 | # | ||
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 @@ | |||
1 | Index: unix/configure | ||
2 | =================================================================== | ||
3 | --- unix.orig/configure | ||
4 | +++ unix/configure | ||
5 | @@ -6726,6 +6726,7 @@ fi | ||
6 | # symbols when dynamically loaded into tclsh. | ||
7 | SHLIB_LD_LIBS='${LIBS}' | ||
8 | SHLIB_SUFFIX=".so" | ||
9 | + SHARED_LIB_SUFFIX='${VERSION}\$\{DBGX\}.so.0' | ||
10 | |||
11 | DL_OBJS="tclLoadDl.o" | ||
12 | LD_LIBRARY_PATH_VAR="LIBPATH" | ||
13 | Index: unix/tcl.m4 | ||
14 | =================================================================== | ||
15 | --- unix.orig/tcl.m4 | ||
16 | +++ unix/tcl.m4 | ||
17 | @@ -1424,6 +1424,7 @@ dnl AC_CHECK_TOOL(AR, ar) | ||
18 | SHLIB_CFLAGS="-fPIC" | ||
19 | SHLIB_LD_LIBS='${LIBS}' | ||
20 | SHLIB_SUFFIX=".so" | ||
21 | + SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}\$\{DBGX\}.so.0' | ||
22 | |||
23 | CFLAGS_OPTIMIZE="-O2" | ||
24 | # egcs-2.91.66 on Redhat Linux 6.0 generates lots of warnings | ||
25 | @@ -1431,12 +1432,15 @@ dnl AC_CHECK_TOOL(AR, ar) | ||
26 | # get rid of the warnings. | ||
27 | #CFLAGS_OPTIMIZE="${CFLAGS_OPTIMIZE} -D__NO_STRING_INLINES -D__NO_MATH_INLINES" | ||
28 | |||
29 | + # following line added by CW for Debian GNU/Linux | ||
30 | + TCL_SHLIB_LD_EXTRAS="-Wl,-soname,\${TCL_LIB_FILE}.0" | ||
31 | + | ||
32 | SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS}' | ||
33 | DL_OBJS="tclLoadDl.o" | ||
34 | DL_LIBS="-ldl" | ||
35 | LDFLAGS="$LDFLAGS -Wl,--export-dynamic" | ||
36 | AS_IF([test $doRpath = yes], [ | ||
37 | - CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}']) | ||
38 | + CC_SEARCH_FLAGS='']) | ||
39 | LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS} | ||
40 | AS_IF([test "`uname -m`" = "alpha"], [CFLAGS="$CFLAGS -mieee"]) | ||
41 | AS_IF([test $do64bit = yes], [ | ||
42 | @@ -2079,7 +2083,7 @@ dnl # preprocessing tests use only CPPFL | ||
43 | |||
44 | AS_IF([test "${SHARED_BUILD}" = 1 -a "${SHLIB_SUFFIX}" != ""], [ | ||
45 | LIB_SUFFIX=${SHARED_LIB_SUFFIX} | ||
46 | - MAKE_LIB='${SHLIB_LD} -o [$]@ ${OBJS} ${SHLIB_LD_LIBS} ${TCL_SHLIB_LD_EXTRAS} ${TK_SHLIB_LD_EXTRAS} ${LD_SEARCH_FLAGS}' | ||
47 | + MAKE_LIB='${SHLIB_LD} -o $@ ${OBJS} ${SHLIB_LD_LIBS} ${TCL_SHLIB_LD_EXTRAS} ${TK_SHLIB_LD_EXTRAS} ${LD_SEARCH_FLAGS}' | ||
48 | INSTALL_LIB='$(INSTALL_LIBRARY) $(LIB_FILE) "$(LIB_INSTALL_DIR)"/$(LIB_FILE)' | ||
49 | ], [ | ||
50 | LIB_SUFFIX=${UNSHARED_LIB_SUFFIX} | ||
diff --git a/meta/recipes-devtools/tcltk/tcl_8.5.8.bb b/meta/recipes-devtools/tcltk/tcl_8.5.8.bb new file mode 100644 index 0000000000..880340067c --- /dev/null +++ b/meta/recipes-devtools/tcltk/tcl_8.5.8.bb | |||
@@ -0,0 +1,62 @@ | |||
1 | DESCRIPTION = "Tool Command Language" | ||
2 | LICENSE = "tcl" | ||
3 | SECTION = "devel/tcltk" | ||
4 | HOMEPAGE = "http://tcl.sourceforge.net" | ||
5 | DEPENDS = "tcl-native" | ||
6 | LIC_CHKSUM_FILES = "file://../license.terms;md5=7b4d3c71b2d9a8c1b373609867975570 \ | ||
7 | file://../compat/license.terms;md5=7b4d3c71b2d9a8c1b373609867975570 \ | ||
8 | file://../library/license.terms;md5=7b4d3c71b2d9a8c1b373609867975570 \ | ||
9 | file://../macosx/license.terms;md5=7b4d3c71b2d9a8c1b373609867975570 \ | ||
10 | file://../tests/license.terms;md5=7b4d3c71b2d9a8c1b373609867975570 \ | ||
11 | file://../win/license.terms;md5=7b4d3c71b2d9a8c1b373609867975570 \ | ||
12 | " | ||
13 | |||
14 | PR = "r2" | ||
15 | |||
16 | BASE_SRC_URI = "${SOURCEFORGE_MIRROR}/tcl/tcl${PV}-src.tar.gz \ | ||
17 | file://tcl-add-soname.patch" | ||
18 | |||
19 | SRC_URI = "${BASE_SRC_URI} \ | ||
20 | file://fix_non_native_build_issue.patch" | ||
21 | |||
22 | SRC_URI_virtclass-native = "${BASE_SRC_URI}" | ||
23 | |||
24 | S = "${WORKDIR}/tcl${PV}/unix" | ||
25 | |||
26 | inherit autotools | ||
27 | |||
28 | DEPENDS_virtclass-native = "" | ||
29 | |||
30 | EXTRA_OECONF = "--enable-threads" | ||
31 | |||
32 | do_configure() { | ||
33 | gnu-configize | ||
34 | oe_runconf | ||
35 | } | ||
36 | |||
37 | do_compile_prepend() { | ||
38 | echo > ../compat/fixstrtod.c | ||
39 | } | ||
40 | |||
41 | do_install() { | ||
42 | autotools_do_install | ||
43 | oe_libinstall -so libtcl8.5 ${STAGING_LIBDIR} | ||
44 | ln -sf ./tclsh8.5 ${D}${bindir}/tclsh | ||
45 | sed -i "s+${WORKDIR}+${STAGING_INCDIR}+g" tclConfig.sh | ||
46 | sed -i "s,-L${libdir},," tclConfig.sh | ||
47 | install -d ${STAGING_BINDIR_CROSS}/ | ||
48 | install -m 0755 tclConfig.sh ${STAGING_BINDIR_CROSS} | ||
49 | cd .. | ||
50 | for dir in compat generic unix | ||
51 | do | ||
52 | install -d ${STAGING_INCDIR}/tcl${PV}/$dir | ||
53 | install -m 0644 $dir/*.h ${STAGING_INCDIR}/tcl${PV}/$dir/ | ||
54 | done | ||
55 | } | ||
56 | |||
57 | PACKAGES =+ "${PN}-lib" | ||
58 | FILES_${PN}-lib = "${libdir}/libtcl8.5.so.*" | ||
59 | FILES_${PN} += "${libdir}/tcl8.5" | ||
60 | FILES_${PN}-dev += "${libdir}/tclConfig.sh" | ||
61 | |||
62 | BBCLASSEXTEND = "native" | ||