Files
poky/meta/recipes-devtools/tcltk/tcl_8.6.1.bb
Saul Wold 66f28a9837 tcl: fix tclConfig.sh to point to the correct private headers
When building expect with rm_work enabled, it was not finding the correct private
header files because they were removed from the WORKDIR, this fixes the tclConfig.sh
to point to the sysroot private area instead.

This also fixes the -L directory to point to STAGING_LIBDIR instead if INCDIR!

[YOCTO #5620]

(From OE-Core rev: 300760193c6bcfd20f1d4908f912bebd53e86281)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-05 16:48:21 +00:00

81 lines
2.6 KiB
BlitzBasic

DESCRIPTION = "Tool Command Language"
LICENSE = "BSD-3-Clause"
SECTION = "devel/tcltk"
HOMEPAGE = "http://tcl.sourceforge.net"
DEPENDS = "tcl-native zlib"
LIC_FILES_CHKSUM = "file://../license.terms;md5=3c6f62c07835353e36f0db550ccfb65a \
file://../compat/license.terms;md5=3c6f62c07835353e36f0db550ccfb65a \
file://../library/license.terms;md5=3c6f62c07835353e36f0db550ccfb65a \
file://../macosx/license.terms;md5=3c6f62c07835353e36f0db550ccfb65a \
file://../tests/license.terms;md5=3c6f62c07835353e36f0db550ccfb65a \
file://../win/license.terms;md5=3c6f62c07835353e36f0db550ccfb65a \
"
BASE_SRC_URI = "${SOURCEFORGE_MIRROR}/tcl/tcl${PV}-src.tar.gz \
file://tcl-add-soname.patch"
SRC_URI = "${BASE_SRC_URI} \
file://fix_non_native_build_issue.patch \
file://fix_issue_with_old_distro_glibc.patch \
file://no_packages.patch \
file://tcl-remove-hardcoded-install-path.patch \
file://alter-includedir.patch \
"
SRC_URI[md5sum] = "aae4b701ee527c6e4e1a6f9c7399882e"
SRC_URI[sha256sum] = "16ee769248e64ba1cae6b4834fcc4e4edd7470d881410e8d58f7dd1434343514"
SRC_URI_class-native = "${BASE_SRC_URI}"
S = "${WORKDIR}/tcl${PV}/unix"
VER = "8.6.1"
inherit autotools
DEPENDS_class-native = ""
EXTRA_OECONF = "--enable-threads --disable-rpath --libdir=${libdir}"
do_configure() {
( cd ${S}; gnu-configize )
oe_runconf
}
do_compile_prepend() {
echo > ${S}/../compat/fixstrtod.c
}
do_install() {
autotools_do_install install-private-headers
ln -sf ./tclsh${VER} ${D}${bindir}/tclsh
sed -i "s+-L${B}+-L${STAGING_LIBDIR}+g" tclConfig.sh
sed -i "s+${WORKDIR}+${STAGING_INCDIR}+g" tclConfig.sh
sed -i "s,-L${libdir},-L=${libdir},g" tclConfig.sh
sed -i "s,-I${includedir},-I=${includedir},g" tclConfig.sh
install -d ${D}${bindir_crossscripts}
install -m 0755 tclConfig.sh ${D}${bindir_crossscripts}
install -m 0755 tclConfig.sh ${D}${libdir}
cd ..
for dir in compat generic unix
do
install -d ${D}${includedir}/${BPN}${VER}/$dir
install -m 0644 ${S}/../$dir/*.h ${D}${includedir}/${BPN}${VER}/$dir/
done
}
SYSROOT_PREPROCESS_FUNCS += "tcl_sysroot_preprocess"
tcl_sysroot_preprocess () {
sysroot_stage_dir ${D}${bindir_crossscripts} ${SYSROOT_DESTDIR}${bindir_crossscripts}
}
PACKAGES =+ "tcl-lib"
FILES_tcl-lib = "${libdir}/libtcl8.6.so.*"
FILES_${PN} += "${libdir}/tcl${VER} ${libdir}/tcl8.6 ${libdir}/tcl8"
FILES_${PN}-dev += "${libdir}/tclConfig.sh ${libdir}/tclooConfig.sh"
# isn't getting picked up by shlibs code
RDEPENDS_${PN} += "tcl-lib"
RDEPENDS_${PN}_class-native = ""
BBCLASSEXTEND = "native"