summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools
diff options
context:
space:
mode:
authorNitin A Kamble <nitin.a.kamble@intel.com>2012-04-26 22:53:19 (GMT)
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-08-21 10:16:43 (GMT)
commit0a6f9a5f5a584422d24b19fd323bdec711dde3d5 (patch)
treea45abe3e8852bcaacae0ef283582c869252c197b /meta/recipes-devtools
parent7c5318e1a0e69331a727ef679ab7ff172e353862 (diff)
downloadpoky-0a6f9a5f5a584422d24b19fd323bdec711dde3d5.tar.gz
tcl: fix target recipe build issue on older distros
the builddir is put in front of the LD_LIBRARY_PATH, causing dynamically linking of target library with native tclsh. Fix this behavior to cross build tcl correctly. This issue got exposed when eglibc-2.15 was configured for the target. (From OE-Core rev: 8e25fe0ecc3d6fe2d5456b525c5014554bc70cfe) Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools')
-rw-r--r--meta/recipes-devtools/tcltk/tcl/fix_issue_with_old_distro_glibc.patch109
-rw-r--r--meta/recipes-devtools/tcltk/tcl_8.5.11.bb5
2 files changed, 112 insertions, 2 deletions
diff --git a/meta/recipes-devtools/tcltk/tcl/fix_issue_with_old_distro_glibc.patch b/meta/recipes-devtools/tcltk/tcl/fix_issue_with_old_distro_glibc.patch
new file mode 100644
index 0000000..9c295a6
--- /dev/null
+++ b/meta/recipes-devtools/tcltk/tcl/fix_issue_with_old_distro_glibc.patch
@@ -0,0 +1,109 @@
1Upstream-Status: inappropriate [embedded specific]
2
3Fixes tcl target recipe build on old distros which have glibc older than 2.14
4
5| + echo 'NOTE: make DESTDIR=/srv/home/nitin/builds/build-gcc47/tmp/work/x86_64-poky-linux/tcl-8.5.11-r5/image install'
6| NOTE: make DESTDIR=/srv/home/nitin/builds/build-gcc47/tmp/work/x86_64-poky-linux/tcl-8.5.11-r5/image install
7| + make DESTDIR=/srv/home/nitin/builds/build-gcc47/tmp/work/x86_64-poky-linux/tcl-8.5.11-r5/image install
8| Making directory /srv/home/nitin/builds/build-gcc47/tmp/work/x86_64-poky-linux/tcl-8.5.11-r5/image/usr/lib
9| Installing message catalogs
10| Making directory /srv/home/nitin/builds/build-gcc47/tmp/work/x86_64-poky-linux/tcl-8.5.11-r5/image/usr/share/man
11| tclsh: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /srv/home/nitin/builds/build-gcc47/tmp/work/x86_64-poky-linux/tcl-8.5.11-r5/tcl8.5.11/unix/libtcl8.5.so)
12| Making directory /srv/home/nitin/builds/build-gcc47/tmp/work/x86_64-poky-linux/tcl-8.5.11-r5/image/usr/bin
13| make: *** [install-msgs] Error 1
14
15Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com>
162012/04/26
17
18Index: unix/Makefile.in
19===================================================================
20--- unix.orig/Makefile.in
21+++ unix/Makefile.in
22@@ -592,12 +592,12 @@ tcltest-real:
23 # % make test TESTFLAGS="-verbose bps -file fileName.test"
24
25 test: tcltest@EXEEXT@
26- @LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
27+ @LD_LIBRARY_PATH_VAR@="$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
28 TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \
29 ./tcltest@EXEEXT@ $(TOP_DIR)/tests/all.tcl $(TESTFLAGS)
30
31 gdb-test: tcltest@EXEEXT@
32- @echo "set env @LD_LIBRARY_PATH_VAR@=\"`pwd`:$${@LD_LIBRARY_PATH_VAR@}\"" > gdb.run
33+ @echo "set env @LD_LIBRARY_PATH_VAR@=\"$${@LD_LIBRARY_PATH_VAR@}\"" > gdb.run
34 @echo "set env TCL_LIBRARY=${TCL_BUILDTIME_LIBRARY}" >> gdb.run
35 @echo "set args $(TOP_DIR)/tests/all.tcl $(TESTFLAGS) -singleproc 1" >> gdb.run
36 $(GDB) ./tcltest@EXEEXT@ --command=gdb.run
37@@ -605,27 +605,27 @@ gdb-test: tcltest@EXEEXT@
38
39 # Useful target to launch a built tcltest with the proper path,...
40 runtest: tcltest@EXEEXT@
41- @LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
42+ @LD_LIBRARY_PATH_VAR@="$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
43 TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \
44 ./tcltest@EXEEXT@
45
46 # Useful target for running the test suite with an unwritable current
47 # directory...
48 ro-test: tcltest@EXEEXT@
49- @LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
50+ @LD_LIBRARY_PATH_VAR@="$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
51 TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \
52 echo 'exec chmod -w .;package require tcltest;tcltest::temporaryDirectory /tmp;source ../tests/all.tcl;exec chmod +w .' | ./tcltest@EXEEXT@
53
54 # This target can be used to run tclsh from the build directory
55 # via `make shell SCRIPT=/tmp/foo.tcl`
56 shell: ${TCL_EXE}
57- @LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
58+ @LD_LIBRARY_PATH_VAR@="$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
59 TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \
60 ${TCL_EXE} $(SCRIPT)
61
62 # This target can be used to run tclsh inside either gdb or insight
63 gdb: ${TCL_EXE}
64- @echo "set env @LD_LIBRARY_PATH_VAR@=\"`pwd`:$${@LD_LIBRARY_PATH_VAR@}\"" > gdb.run
65+ @echo "set env @LD_LIBRARY_PATH_VAR@=\"$${@LD_LIBRARY_PATH_VAR@}\"" > gdb.run
66 @echo "set env TCL_LIBRARY=${TCL_BUILDTIME_LIBRARY}" >> gdb.run
67 $(GDB) ${TCL_EXE} --command=gdb.run
68 rm gdb.run
69@@ -633,12 +633,12 @@ gdb: ${TCL_EXE}
70 VALGRINDARGS=--tool=memcheck --num-callers=8 --leak-resolution=high --leak-check=yes --show-reachable=yes -v
71
72 valgrind: ${TCL_EXE} tcltest@EXEEXT@
73- @LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
74+ @LD_LIBRARY_PATH_VAR@="$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
75 TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \
76 valgrind $(VALGRINDARGS) ./tcltest@EXEEXT@ $(TOP_DIR)/tests/all.tcl -singleproc 1 $(TESTFLAGS)
77
78 valgrindshell: ${TCL_EXE}
79- @LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
80+ @LD_LIBRARY_PATH_VAR@="$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
81 TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \
82 valgrind $(VALGRINDARGS) ${TCL_EXE} $(SCRIPT)
83
84@@ -802,14 +802,14 @@ install-libraries: libraries $(INSTALL_T
85
86 install-tzdata: ${TCL_EXE}
87 @echo "Installing time zone data"
88- @@LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
89+ @@LD_LIBRARY_PATH_VAR@="$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
90 TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \
91 ${TCL_EXE} $(TOOL_DIR)/installData.tcl \
92 $(TOP_DIR)/library/tzdata "$(SCRIPT_INSTALL_DIR)"/tzdata
93
94 install-msgs: ${TCL_EXE}
95 @echo "Installing message catalogs"
96- @@LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
97+ @@LD_LIBRARY_PATH_VAR@="$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
98 TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \
99 ${TCL_EXE} $(TOOL_DIR)/installData.tcl \
100 $(TOP_DIR)/library/msgs "$(SCRIPT_INSTALL_DIR)"/msgs
101@@ -1733,7 +1733,7 @@ html-tk: ${TCL_EXE}
102 @EXTRA_BUILD_HTML@
103
104 BUILD_HTML = \
105- @@LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
106+ @@LD_LIBRARY_PATH_VAR@="$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
107 TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \
108 ${TCL_EXE} $(TOOL_DIR)/tcltk-man2html.tcl --htmldir="$(HTML_INSTALL_DIR)" \
109 --srcdir=$(TOP_DIR)/.. $(BUILD_HTML_FLAGS)
diff --git a/meta/recipes-devtools/tcltk/tcl_8.5.11.bb b/meta/recipes-devtools/tcltk/tcl_8.5.11.bb
index 09dd155..1d43371 100644
--- a/meta/recipes-devtools/tcltk/tcl_8.5.11.bb
+++ b/meta/recipes-devtools/tcltk/tcl_8.5.11.bb
@@ -11,13 +11,14 @@ LIC_FILES_CHKSUM = "file://../license.terms;md5=a47a9be26d03f925fc1fbd2784f27e11
11 file://../win/license.terms;md5=a47a9be26d03f925fc1fbd2784f27e11 \ 11 file://../win/license.terms;md5=a47a9be26d03f925fc1fbd2784f27e11 \
12 " 12 "
13 13
14PR = "r5" 14PR = "r6"
15 15
16BASE_SRC_URI = "${SOURCEFORGE_MIRROR}/tcl/tcl${PV}-src.tar.gz \ 16BASE_SRC_URI = "${SOURCEFORGE_MIRROR}/tcl/tcl${PV}-src.tar.gz \
17 file://tcl-add-soname.patch" 17 file://tcl-add-soname.patch"
18 18
19SRC_URI = "${BASE_SRC_URI} \ 19SRC_URI = "${BASE_SRC_URI} \
20 file://fix_non_native_build_issue.patch " 20 file://fix_non_native_build_issue.patch \
21 file://fix_issue_with_old_distro_glibc.patch "
21 22
22SRC_URI[md5sum] = "b01a9691c83990b3db0ce62d1012ca67" 23SRC_URI[md5sum] = "b01a9691c83990b3db0ce62d1012ca67"
23SRC_URI[sha256sum] = "8addc385fa6b5be4605e6d68fbdc4c0e674c5af1dc1c95ec5420390c4b08042a" 24SRC_URI[sha256sum] = "8addc385fa6b5be4605e6d68fbdc4c0e674c5af1dc1c95ec5420390c4b08042a"