mirror of
https://git.yoctoproject.org/poky
synced 2026-05-31 12:49:46 +00:00
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: 76e8df78bdb641b045e34dcf01d7b9eb626401dc) Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
9da5a7bedf
commit
c2e4b5d066
@@ -0,0 +1,109 @@
|
|||||||
|
Upstream-Status: inappropriate [embedded specific]
|
||||||
|
|
||||||
|
Fixes tcl target recipe build on old distros which have glibc older than 2.14
|
||||||
|
|
||||||
|
| + echo 'NOTE: make DESTDIR=/srv/home/nitin/builds/build-gcc47/tmp/work/x86_64-poky-linux/tcl-8.5.11-r5/image install'
|
||||||
|
| NOTE: make DESTDIR=/srv/home/nitin/builds/build-gcc47/tmp/work/x86_64-poky-linux/tcl-8.5.11-r5/image install
|
||||||
|
| + make DESTDIR=/srv/home/nitin/builds/build-gcc47/tmp/work/x86_64-poky-linux/tcl-8.5.11-r5/image install
|
||||||
|
| Making directory /srv/home/nitin/builds/build-gcc47/tmp/work/x86_64-poky-linux/tcl-8.5.11-r5/image/usr/lib
|
||||||
|
| Installing message catalogs
|
||||||
|
| Making directory /srv/home/nitin/builds/build-gcc47/tmp/work/x86_64-poky-linux/tcl-8.5.11-r5/image/usr/share/man
|
||||||
|
| 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)
|
||||||
|
| Making directory /srv/home/nitin/builds/build-gcc47/tmp/work/x86_64-poky-linux/tcl-8.5.11-r5/image/usr/bin
|
||||||
|
| make: *** [install-msgs] Error 1
|
||||||
|
|
||||||
|
Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com>
|
||||||
|
2012/04/26
|
||||||
|
|
||||||
|
Index: unix/Makefile.in
|
||||||
|
===================================================================
|
||||||
|
--- unix.orig/Makefile.in
|
||||||
|
+++ unix/Makefile.in
|
||||||
|
@@ -592,12 +592,12 @@ tcltest-real:
|
||||||
|
# % make test TESTFLAGS="-verbose bps -file fileName.test"
|
||||||
|
|
||||||
|
test: tcltest@EXEEXT@
|
||||||
|
- @LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
|
||||||
|
+ @LD_LIBRARY_PATH_VAR@="$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
|
||||||
|
TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \
|
||||||
|
./tcltest@EXEEXT@ $(TOP_DIR)/tests/all.tcl $(TESTFLAGS)
|
||||||
|
|
||||||
|
gdb-test: tcltest@EXEEXT@
|
||||||
|
- @echo "set env @LD_LIBRARY_PATH_VAR@=\"`pwd`:$${@LD_LIBRARY_PATH_VAR@}\"" > gdb.run
|
||||||
|
+ @echo "set env @LD_LIBRARY_PATH_VAR@=\"$${@LD_LIBRARY_PATH_VAR@}\"" > gdb.run
|
||||||
|
@echo "set env TCL_LIBRARY=${TCL_BUILDTIME_LIBRARY}" >> gdb.run
|
||||||
|
@echo "set args $(TOP_DIR)/tests/all.tcl $(TESTFLAGS) -singleproc 1" >> gdb.run
|
||||||
|
$(GDB) ./tcltest@EXEEXT@ --command=gdb.run
|
||||||
|
@@ -605,27 +605,27 @@ gdb-test: tcltest@EXEEXT@
|
||||||
|
|
||||||
|
# Useful target to launch a built tcltest with the proper path,...
|
||||||
|
runtest: tcltest@EXEEXT@
|
||||||
|
- @LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
|
||||||
|
+ @LD_LIBRARY_PATH_VAR@="$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
|
||||||
|
TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \
|
||||||
|
./tcltest@EXEEXT@
|
||||||
|
|
||||||
|
# Useful target for running the test suite with an unwritable current
|
||||||
|
# directory...
|
||||||
|
ro-test: tcltest@EXEEXT@
|
||||||
|
- @LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
|
||||||
|
+ @LD_LIBRARY_PATH_VAR@="$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
|
||||||
|
TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \
|
||||||
|
echo 'exec chmod -w .;package require tcltest;tcltest::temporaryDirectory /tmp;source ../tests/all.tcl;exec chmod +w .' | ./tcltest@EXEEXT@
|
||||||
|
|
||||||
|
# This target can be used to run tclsh from the build directory
|
||||||
|
# via `make shell SCRIPT=/tmp/foo.tcl`
|
||||||
|
shell: ${TCL_EXE}
|
||||||
|
- @LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
|
||||||
|
+ @LD_LIBRARY_PATH_VAR@="$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
|
||||||
|
TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \
|
||||||
|
${TCL_EXE} $(SCRIPT)
|
||||||
|
|
||||||
|
# This target can be used to run tclsh inside either gdb or insight
|
||||||
|
gdb: ${TCL_EXE}
|
||||||
|
- @echo "set env @LD_LIBRARY_PATH_VAR@=\"`pwd`:$${@LD_LIBRARY_PATH_VAR@}\"" > gdb.run
|
||||||
|
+ @echo "set env @LD_LIBRARY_PATH_VAR@=\"$${@LD_LIBRARY_PATH_VAR@}\"" > gdb.run
|
||||||
|
@echo "set env TCL_LIBRARY=${TCL_BUILDTIME_LIBRARY}" >> gdb.run
|
||||||
|
$(GDB) ${TCL_EXE} --command=gdb.run
|
||||||
|
rm gdb.run
|
||||||
|
@@ -633,12 +633,12 @@ gdb: ${TCL_EXE}
|
||||||
|
VALGRINDARGS=--tool=memcheck --num-callers=8 --leak-resolution=high --leak-check=yes --show-reachable=yes -v
|
||||||
|
|
||||||
|
valgrind: ${TCL_EXE} tcltest@EXEEXT@
|
||||||
|
- @LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
|
||||||
|
+ @LD_LIBRARY_PATH_VAR@="$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
|
||||||
|
TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \
|
||||||
|
valgrind $(VALGRINDARGS) ./tcltest@EXEEXT@ $(TOP_DIR)/tests/all.tcl -singleproc 1 $(TESTFLAGS)
|
||||||
|
|
||||||
|
valgrindshell: ${TCL_EXE}
|
||||||
|
- @LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
|
||||||
|
+ @LD_LIBRARY_PATH_VAR@="$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
|
||||||
|
TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \
|
||||||
|
valgrind $(VALGRINDARGS) ${TCL_EXE} $(SCRIPT)
|
||||||
|
|
||||||
|
@@ -802,14 +802,14 @@ install-libraries: libraries $(INSTALL_T
|
||||||
|
|
||||||
|
install-tzdata: ${TCL_EXE}
|
||||||
|
@echo "Installing time zone data"
|
||||||
|
- @@LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
|
||||||
|
+ @@LD_LIBRARY_PATH_VAR@="$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
|
||||||
|
TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \
|
||||||
|
${TCL_EXE} $(TOOL_DIR)/installData.tcl \
|
||||||
|
$(TOP_DIR)/library/tzdata "$(SCRIPT_INSTALL_DIR)"/tzdata
|
||||||
|
|
||||||
|
install-msgs: ${TCL_EXE}
|
||||||
|
@echo "Installing message catalogs"
|
||||||
|
- @@LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
|
||||||
|
+ @@LD_LIBRARY_PATH_VAR@="$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
|
||||||
|
TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \
|
||||||
|
${TCL_EXE} $(TOOL_DIR)/installData.tcl \
|
||||||
|
$(TOP_DIR)/library/msgs "$(SCRIPT_INSTALL_DIR)"/msgs
|
||||||
|
@@ -1733,7 +1733,7 @@ html-tk: ${TCL_EXE}
|
||||||
|
@EXTRA_BUILD_HTML@
|
||||||
|
|
||||||
|
BUILD_HTML = \
|
||||||
|
- @@LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
|
||||||
|
+ @@LD_LIBRARY_PATH_VAR@="$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
|
||||||
|
TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \
|
||||||
|
${TCL_EXE} $(TOOL_DIR)/tcltk-man2html.tcl --htmldir="$(HTML_INSTALL_DIR)" \
|
||||||
|
--srcdir=$(TOP_DIR)/.. $(BUILD_HTML_FLAGS)
|
||||||
@@ -11,13 +11,14 @@ LIC_FILES_CHKSUM = "file://../license.terms;md5=a47a9be26d03f925fc1fbd2784f27e11
|
|||||||
file://../win/license.terms;md5=a47a9be26d03f925fc1fbd2784f27e11 \
|
file://../win/license.terms;md5=a47a9be26d03f925fc1fbd2784f27e11 \
|
||||||
"
|
"
|
||||||
|
|
||||||
PR = "r5"
|
PR = "r6"
|
||||||
|
|
||||||
BASE_SRC_URI = "${SOURCEFORGE_MIRROR}/tcl/tcl${PV}-src.tar.gz \
|
BASE_SRC_URI = "${SOURCEFORGE_MIRROR}/tcl/tcl${PV}-src.tar.gz \
|
||||||
file://tcl-add-soname.patch"
|
file://tcl-add-soname.patch"
|
||||||
|
|
||||||
SRC_URI = "${BASE_SRC_URI} \
|
SRC_URI = "${BASE_SRC_URI} \
|
||||||
file://fix_non_native_build_issue.patch "
|
file://fix_non_native_build_issue.patch \
|
||||||
|
file://fix_issue_with_old_distro_glibc.patch "
|
||||||
|
|
||||||
SRC_URI[md5sum] = "b01a9691c83990b3db0ce62d1012ca67"
|
SRC_URI[md5sum] = "b01a9691c83990b3db0ce62d1012ca67"
|
||||||
SRC_URI[sha256sum] = "8addc385fa6b5be4605e6d68fbdc4c0e674c5af1dc1c95ec5420390c4b08042a"
|
SRC_URI[sha256sum] = "8addc385fa6b5be4605e6d68fbdc4c0e674c5af1dc1c95ec5420390c4b08042a"
|
||||||
|
|||||||
Reference in New Issue
Block a user