mirror of
https://git.yoctoproject.org/poky
synced 2026-04-29 18:32:20 +02:00
since the versions of autotools might differ on target and build host, plus difference in timestamps for configure and system can result in reconfigure lets avoid that by disabling maintainer mode Avoids error: newly created file is older than distributed files! [YOCTO #13779] Suggested-by: Andre McCurdy <armccurdy@gmail.com> (From OE-Core rev: 3dc4e27e7633ce3ca6b9647810d0996bdee48771) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
36 lines
1.3 KiB
Python
36 lines
1.3 KiB
Python
#
|
|
# SPDX-License-Identifier: MIT
|
|
#
|
|
|
|
import os
|
|
import tempfile
|
|
import subprocess
|
|
import unittest
|
|
|
|
from oeqa.sdk.case import OESDKTestCase
|
|
from oeqa.utils.subprocesstweak import errors_have_output
|
|
errors_have_output()
|
|
|
|
class BuildCpioTest(OESDKTestCase):
|
|
"""
|
|
Check that autotools will cross-compile correctly.
|
|
"""
|
|
def test_cpio(self):
|
|
with tempfile.TemporaryDirectory(prefix="cpio-", dir=self.tc.sdk_dir) as testdir:
|
|
tarball = self.fetch(testdir, self.td["DL_DIR"], "https://ftp.gnu.org/gnu/cpio/cpio-2.13.tar.gz")
|
|
|
|
dirs = {}
|
|
dirs["source"] = os.path.join(testdir, "cpio-2.13")
|
|
dirs["build"] = os.path.join(testdir, "build")
|
|
dirs["install"] = os.path.join(testdir, "install")
|
|
|
|
subprocess.check_output(["tar", "xf", tarball, "-C", testdir])
|
|
self.assertTrue(os.path.isdir(dirs["source"]))
|
|
os.makedirs(dirs["build"])
|
|
|
|
self._run("cd {build} && {source}/configure --disable-maintainer-mode $CONFIGURE_FLAGS".format(**dirs))
|
|
self._run("cd {build} && make -j".format(**dirs))
|
|
self._run("cd {build} && make install DESTDIR={install}".format(**dirs))
|
|
|
|
self.check_elf(os.path.join(dirs["install"], "usr", "local", "bin", "cpio"))
|