Commit Graph

15 Commits

Author SHA1 Message Date
Serhii Popovych e44946bff1 autoconf: Adjust shebang lines to remove interpreter path hardcode
If build host perl (and other tools) is old and we use some kind
of toolchain to provide recent perl/python/etc to the OE build
we still locked to use build host perl due to hardcoded shebang
lines in autoconf scripts.

Behaviour was observed with Enterprise Linux 6 and devtoolset
toolchain from SCL (Software Collections) used to provide recent
version of perl (not provided with default buildtools-tarball).

Pass /usr/bin/env perl in ac_cv_path_PERL configuration variables
for class-native and class-nativesdk. Use patch to autoconf to replace
-w option in shebang line with modern way to enable warnings on perl
(i.e. "use warnings").

Also add nativesdk-m4 and nativesdk-gnu-config to RDEPENDS to bring
runtime dependencies inline with other targets.

Note that ac_cv_path_PERL must be valid perl interpreter path
since configure will check perl version and Flock implementation.
It is not possible currently to use nativeperl from native
sysroot because autoconf does not DEPENDS on perl-native (and
doing so fails due to circular dependencies). Only possible
solution is to overwrite shebangs with nativeperl somewhere at
do_install() and update RDEPENDS for class-native. Or add perl
symlinks to nativeperl in sysroot.

For now it seems good to use perl found by /usr/bin/env from
autoconf-native.

Cc: XE-Linux <xe-linux-external@cisco.com>
(From OE-Core rev: 443d2d31732fa5700aa00ff020a0d79ab245c114)

Signed-off-by: Serhii Popovych <spopovyc@cisco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 23:28:20 +01:00
Khem Raj c9786e1e12 autoconf: Fix AC_HEADER_MAJOR with glibc 2.25
Backport the patch from master for 2.69

(From OE-Core rev: 83081afc08695ea42046208ca8ab077e482d3018)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-12-20 15:22:16 +00:00
Ross Burton f52cc8bdef autoconf: remove upstreamed patch
(From OE-Core rev: 3d4834860c0e9c2635c248d498d02160cbedebde)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-09-08 00:32:43 +01:00
Richard Purdie 98dcdcb47c autoconf: Disable macro which causes excessive delays when using dash as sh
At the start of every configure script, the check for solaris 'print' causes
significant problems on a linux machine with dash as /bin/sh since it triggers
the execution of "print" which on some linux systems is a perl script which is
part of mailcap. Worse, this perl script calls "which file" and if successful
ignores the path file was found in and just runs "file" without a path. Each
execution causes PATH to be searched. In something like gettext with multiple
configure scripts, this is worth something like 30,000 syscalls of which 3,000
are execs.

Simply assuming the shell's printf function works cuts out all the fork overhead
and when parallel tasks are running, this overhead appears to be significant.

(From OE-Core rev: 421eb8fce9856c63bf62fc3a61fe39d1e5253ff8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-14 22:30:56 +00:00
Khem Raj 1ee97d844f autoconf: Add musl support
Support musl triplets

(From OE-Core rev: d3609be6f3c59ef5d213d85b44dd1ac2058632bd)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-12 23:42:54 +00:00
Ross Burton 931fd019bf autoconf: remove automake patch enforcing --foreign
Since 2004 we've been carrying a patch[1] make autoreconf pass --foreign to
automake.  Presumably at the time this was due to many upstreams using
hand-coded bootstrap scripts that passed --foreign manually, but we were using
autoreconf.  These days many projects have added foreign to AM_INIT_AUTOMAKE and
use autoreconf directly, so this patch isn't as critical as it used to be.

(From OE-Core rev: 74b05bba64589da0e4439a4293559ad9670104bd)

Signed-off-by: Ross Burton <ross.burton@intel.com>

[1] oe-classic 2ab2a92eadaf2f80410d8746099f8a9b1b81ff91
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-07-29 09:58:26 +01:00
Ross Burton e2485940f9 autoconf: don't disable the autoheader warnings
The usual autoheader warning is due to AC_DEFINE variables not having a
description.  This results in no variable being defined in config.h, which leads
to code behaving as if the test failed when it actually succeeded.

This patch was introduced to OpenEmbedded back in 2004:

http://git.openembedded.org/openembedded/commit/?id=5eab06d132cb2895fd579f5cedffbb54c27794f8

There is no rationale for the patch so I suspect this is due to the warnings
being fatal and the submitter not understanding that the problem is more than
cosmetic.

(From OE-Core rev: de5fb9d7f60763082327ddeca71842c00a2fa23e)

(From OE-Core rev: dd9c3d7bc946ff44e0ca90f4e345711d6ad21728)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-06-06 09:26:39 +01:00
Richard Purdie 96e488b76a python3/gcc/autoconf: Fix Upstream-Status in some patches I authored
(From OE-Core rev: 337798fa5c0a1d1e745a143f6a9f398b07f0628f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-05-07 15:14:34 +01:00
Radu Patriu bb3927d919 autoconf: new autotest/testsuite option to enable automake test result format
lib/autotest/general.m4: added "--am-fmt | -A" command line parameter
for testsuite script to enable "RESULT: testname" output format; to be
used by yocto ptest packages directly or with autoconf TESTSUITEFLAGS.

(From OE-Core rev: 9d288e5afd6696cc519574470c7d47ca55403d27)

Signed-off-by: Radu Patriu <radu.patriu@enea.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-30 10:10:32 +01:00
Robert Yang 484727e25f autoconf: remove path_prog_fixes.patch
The path_prog_fixes.patch was used for fixing the perl path, but the
do_install_append() can do it, so remove this patch.

(From OE-Core rev: 117861aba856bb7ad67c3e7f3635556589474369)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-06 11:13:59 +00:00
Chong Lu 511997535f meta/*: remove unnecessary patches
The following patches are found, but not used by any recipe, so we should
remove them.

	meta/recipes-connectivity/avahi/files/fix_for_automake_1.11.2.patch
	meta/recipes-connectivity/dhcp/dhcp/fix-client-path.patch
	meta/recipes-connectivity/libnss-mdns/files/alignment-fix.patch
	meta/recipes-core/dbus/dbus-1.6.10/test-run-path.patch
	meta/recipes-core/gettext/gettext-0.16.1/fixchicken.patch
	meta/recipes-core/gettext/gettext-0.16.1/getline.m4.patch
	meta/recipes-core/systemd/systemd/use-rootlibdir.patch
	meta/recipes-core/util-linux/util-linux/remove-lscpu.patch
	meta/recipes-core/util-linux/util-linux/remove_sigsetmark.patch
	meta/recipes-core/util-linux/util-linux/uclibc-compile.patch
	meta/recipes-devtools/autoconf/autoconf/autoconf-x.patch
	meta/recipes-devtools/btrfs-tools/btrfs-tools/btrfs-progs-fix-parallel-build.patch
	meta/recipes-devtools/btrfs-tools/btrfs-tools/btrfs-progs-fix-parallel-build2.patch
	meta/recipes-devtools/cdrtools/cdrtools-native/no_usr_src.patch
	meta/recipes-devtools/elfutils/elfutils-0.155/elfutils-robustify.patch
	meta/recipes-devtools/gdb/gdb/libiberty-cross.patch
	meta/recipes-devtools/perl/perl-5.14.3/asm-pageh-fix.patch
	meta/recipes-devtools/python/python-native/sys_platform_is_now_always_linux2.patch
	meta/recipes-devtools/python/python-pygobject/generate-constants.patch
	meta/recipes-devtools/qemu/files/3f08ffb4a4741d147634761dc053ed386243a0de.patch
	meta/recipes-devtools/qemu/files/enable-i386-linux-user.patch
	meta/recipes-devtools/qemu/files/init-info.patch
	meta/recipes-devtools/rpm/rpm/rpm_fix_for_automake-1.12.patch
	meta/recipes-devtools/tcf-agent/tcf-agent/fix_tcf-agent.init.patch
	meta/recipes-extended/iputils/files/arping-break-libsysfs-dependency.patch
	meta/recipes-extended/libarchive/libarchive/0003-Patch-from-upstream-rev-2516.patch
	meta/recipes-extended/procps/procps-3.2.8/pagesz-not-constant.patch
	meta/recipes-gnome/gtk+/gtk+-2.24.22/no-demos.patch
	meta/recipes-gnome/libglade/libglade-2.6.4/no-deprecation.patch
	meta/recipes-graphics/mesa/mesa/0005-llvmpipe-remove-the-power-of-two-sizeof-struct-cmd_b.patch
	meta/recipes-graphics/xorg-lib/libxxf86dga/libxxf86dga-1.1.3_fix_for_x32.patch
	meta/recipes-kernel/kmod/kmod/fix-undefined-O_CLOEXEC.patch
	meta/recipes-kernel/linux-libc-headers/linux-libc-headers/connector-msg-size-fix.patch
	meta/recipes-kernel/linux/linux-yocto/tools-perf-no-scripting.patch
	meta/recipes-support/gnutls/gnutls/gnutls-texinfo-euro.patch
	meta/recipes-support/nspr/nspr/fix-build-on-aarch64.patch

[YOCTO #5180]

(From OE-Core rev: e5d81f757de4bd1bfd37a96300edd50b77b0d21c)

Signed-off-by: Chong Lu <Chong.Lu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-10 17:42:43 +00:00
Richard Purdie 49e754aca3 autoconf: Add fix for sh verses bash issues
Libtool scripts were finding bash was /bin/sh and then using bashisms which
then got into sstate and used on machines where /bin/sh might be dash.

This changes things to search for bash first since its preferred. We then hardcode
bash into the scripts which is more correct.

This does mean we have a dependency on bash but many of our scripts have
that anyway.

(From OE-Core rev: 367a19aaf31bcf997f10d045e7954cc800189052)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-24 17:24:13 +01:00
Constantin Musca 3668a2de73 autoconf: use --warning=cross only if supported
Adapt autoconf to pass --warning=cross to automake only if
supported.

[YOCTO #842]

(From OE-Core rev: 16d1c8f076378d0878f332f83b7e1f5fcf16447d)

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-10 13:01:51 +01:00
Khem Raj 281fc55ff9 autoconf: Remove code checking for hardcoded /usr/local
This code is only relevant for AIX and causes
problems with OE QA sniffer which detects -L/usr/local/lib
on linker commandline during cross compile and rightly barfs

This only happens when getloadavg() is not found in libc
so we do not reach that code with eglibc but only with uclibc

(From OE-Core rev: f235366c8a39679aa5beadf54a5e0ab7ece90d16)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-05 17:16:00 +01:00
Nitin A Kamble d0c2307bca autoconf: upgrade from 2.65 to 2.68
And rebase the patches to the newer code.

(From OE-Core rev: aa24c1eda4b33b329d330c8bbb6d243dfd924f62)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-06 15:58:39 +01:00