Files
poky/meta/recipes-devtools/libtool/libtool-2.4.5.inc
Robert Yang 1f53edeaf9 libtool: avoid running automake/autoconf --version
The libtool would be very slow if run "automake/autoconf --version", for
example, when compile xz-native (make -j1, only compile, no confiure or
install):

before patched: 19s
after patched:  11s

Use plain text to instead of running them.

NOTE: it is still a little slower than libtool 2.4.2 when compile
xz-native because of other parts:
make -j1: about 2s slower
make -j32: about 0.4s slower

If we run to do_install:
(PARALLEL_MAKE = "-j32")
libtool 2.4.2:
$ bitbake xz-native -cinstall && bitbake xz-native -ccleansstate && time bitbake xz-native -cinstall
real    0m21.092s
user    0m28.292s
sys     0m3.932s

libtool 2.4.5:
$ bitbake xz-native -cinstall && bitbake xz-native -ccleansstate && time bitbake xz-native -cinstall
real    0m21.380s
user    0m31.140s
sys     0m4.068s

About 0.3s, slightly different.

But when using /bin/bash as CONFIG_SHELL, the new libtool would be much slower:
real    0m23.106s
user    0m44.044s
sys     0m4.280s

About 2s slower, for the big package like cairo, it is more slower (about 6s),
unfortunately, /bin/bash is most default CONFIG_SHELL for the recipes since
configure checks first check bash.

(From OE-Core rev: eb9d896db2fc67bac8efd258744d06fbbee87f06)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-05 09:46:11 +00:00

52 lines
2.0 KiB
PHP

SUMMARY = "Generic library support script"
DESCRIPTION = "This is GNU libtool, a generic library support script. \
Libtool hides the complexity of generating special library types \
(such as shared libraries) behind a consistent interface."
HOMEPAGE = "http://www.gnu.org/software/libtool/libtool.html"
SECTION = "devel"
LICENSE = "GPLv2 & LGPLv2.1"
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://libltdl/COPYING.LIB;md5=4fbd65380cdd255951079008b364516c "
SRC_URI = "${GNU_MIRROR}/libtool/libtool-${PV}.tar.gz \
file://trailingslash.patch \
file://rename-with-sysroot.patch \
file://use-sysroot-in-libpath.patch \
file://fix-final-rpath.patch \
file://fix-rpath.patch \
file://norm-rpath.patch \
file://dont-depend-on-help2man.patch \
file://fix-resolve-lt-sysroot.patch \
file://nohardcodepaths.patch \
file://avoid-running-automake-autoconf-version.patch \
"
SRC_URI[md5sum] = "7d30ed9fa6bb11270ebb31639a37bd54"
SRC_URI[sha256sum] = "509cb49c7de14ce7eaf88993cf09fd4071882699dfd874c2e95b31ab107d6987"
do_compile_prepend () {
# Sometimes this file doesn't get rebuilt, force the issue
rm -f ${S}/build-aux/ltmain.sh
make build-aux/ltmain.sh
./config.status
}
inherit autotools texinfo
EXTRA_AUTORECONF = "--exclude=libtoolize"
DEPENDS = "libtool-native"
PACKAGES =+ "libltdl libltdl-dev libltdl-dbg libltdl-staticdev"
FILES_${PN} += "${datadir}/aclocal"
FILES_${PN}-dev = "${includedir} ${FILES_SOLIBSDEV} ${libdir}/*.la \
${libdir}/*.o ${libdir}/pkgconfig ${datadir}/pkgconfig \
${base_libdir}/*.o ${libdir}/${BPN}/*.la ${base_libdir}/*.la"
#FILES_${PN}-dev := "${@oe_filter_out('${datadir}/aclocal', '${FILES_libtool-dev}', d)}"
FILES_libltdl = "${libdir}/libltdl${SOLIBS}"
FILES_libltdl-dev = "${libdir}/libltdl${SOLIBSDEV} ${includedir}"
FILES_libltdl-staticdev = "${libdir}/libltdl.a"
FILES_libltdl-dbg = "${libdir}/.debug/"
export CONFIG_SHELL="/bin/bash"