From 4e88c6eb10889c124fafd679fea72031cef2a34a Mon Sep 17 00:00:00 2001 From: Matthieu Gautier Date: Tue, 28 Mar 2023 17:46:31 +0200 Subject: [PATCH] Correctly set the armhf toolchain to a 32 bits arch. cross-gcc-10.3.0-pi_64.tar.gz for 64 bits architecture and armhf is about 32 bits. However, we know use a pi 2 and 3 and Stretch only[*] toolchains [*] To be tested. Maybe the only is for the target compilation but binary run elsewhere too. --- kiwixbuild/dependencies/armhf.py | 13 +++++++++---- kiwixbuild/platforms/armhf.py | 6 +++--- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/kiwixbuild/dependencies/armhf.py b/kiwixbuild/dependencies/armhf.py index ae41be2..44912da 100644 --- a/kiwixbuild/dependencies/armhf.py +++ b/kiwixbuild/dependencies/armhf.py @@ -1,15 +1,20 @@ from .base import Dependency, ReleaseDownload, NoopBuilder from kiwixbuild.utils import Remotefile + +base_url = 'https://master.dl.sourceforge.net/project/raspberry-pi-cross-compilers/' + +# This is Gcc 10.3.0 and Raspberry Pi 2 and 3 only ! +armhf_base_url = base_url + 'Raspberry%20Pi%20GCC%20Cross-Compiler%20Toolchains/Stretch/GCC%2010.3.0/Raspberry%20Pi%202%2C%203/' + class armhf_toolchain(Dependency): dont_skip = True neutral = True name = 'armhf' class Source(ReleaseDownload): - archive = Remotefile('cross-gcc-10.3.0-pi_64.tar.gz', - '82bf781d0cf6e4e4809a86c402e1a1dd4de70ed54cff66197ca5a244d4ae5144', - 'https://deac-ams.dl.sourceforge.net/project/raspberry-pi-cross-compilers/Bonus%20Raspberry%20Pi%20GCC%2064-Bit%20Toolchains/Raspberry%20Pi%20GCC%2064-Bit%20Cross-Compiler%20Toolchains/Bullseye/GCC%2010.3.0/cross-gcc-10.3.0-pi_64.tar.gz', - ) + archive = Remotefile('cross-gcc-10.3.0-pi_2-3.tar.gz', + '6aef31703fb7bfd63065dda7fb525f1f86a0509c4358c57631a51025805278b3', + armhf_base_url + 'cross-gcc-10.3.0-pi_2-3.tar.gz') Builder = NoopBuilder diff --git a/kiwixbuild/platforms/armhf.py b/kiwixbuild/platforms/armhf.py index 3844571..fd7cf17 100644 --- a/kiwixbuild/platforms/armhf.py +++ b/kiwixbuild/platforms/armhf.py @@ -6,7 +6,7 @@ from kiwixbuild._global import get_target_step class ArmhfPlatformInfo(PlatformInfo): build = 'armhf' - arch_full = 'aarch64-linux-gnu' + arch_full = 'arm-linux-gnueabihf' toolchain_names = ['armhf'] compatible_hosts = ['fedora', 'debian'] @@ -29,7 +29,7 @@ class ArmhfPlatformInfo(PlatformInfo): @property def tlc_source(self): - return get_target_step('armhf', 'source') + return get_target_step(self.build, 'source') @property def root_path(self): @@ -77,7 +77,7 @@ class ArmhfPlatformInfo(PlatformInfo): env['LD_LIBRARY_PATH'] ]) env['PKG_CONFIG_LIBDIR'] = pj(self.root_path, 'lib', 'pkgconfig') - env['QEMU_LD_PREFIX'] = pj(self.root_path, "aarch64-linux-gnu", "libc") + env['QEMU_LD_PREFIX'] = pj(self.root_path, self.arch_full, "libc") env['QEMU_SET_ENV'] = "LD_LIBRARY_PATH={}".format( ':'.join([ pj(self.root_path, self.arch_full, "lib"),