On 2024-02-29, Jean-Pierre De Jesus DIAZ wrote: > As the ath9k-htc-firmware package requires a custom toolchain to build > the firmware I thought it was best to have a target for this specific > package as it modifies the default configuration of the Xtensa target in > GCC. > > To work around this a new target is added: xtensa-ath9k-elf. > > It uses binutils@2.33 and the patched version of GCC to properly compile > the firmware. So, as a result it allows using #:target keyword parameter > to cross-compile the firmware and avoids explicitly adding the cross > compiler in the NATIVE-INPUTS field. I am not in a position to evaluate the correctness of the proposed toolchain changes, but conceptually it makes sense. > As a result the ath9k-htc-firmware package was splitted into two and > uses the cmake-build-sytem now to use Guix's cross-compilation support > properly, so it removes the need for the ath9k-htc-firmware-objcopy.patch. This makes sense to me too. > The [PATCH 7/8] contains a patch that was already sent to: > > https://issues.guix.gnu.org/68366 Ok, one of these two patch series will need to be refactored depending on which gets applied first. > I don't have the hardware to test this firmware but the build produces > the same hashes for the firmware so it's safe to say that the firmware > should keep working. I do have some of the hardware to test, though have not had a chance to test the patches... will try to get on that. Obviously producing identical hashes is quite compelling; this is an excellent example of applying Reproducible Builds to refactoring code! > The hashes with this patch series: > > a5481cc67d962b217de1300121a6c7584e847cbe215442553d24a2173ca9202e /gnu/store/0i3zw28pvrr8l85fx79i8lq0f9vmgyjz-ath9k-htc-ar9271-firmware-1.4.0/lib/firmware/htc_9271.fw > eef84c16e3edad3fdec19c985d190b5ed3f5bd5bae20be5579681ab35f001406 /gnu/store/iqbd77grzy4sngkxz9lgyvk52apn8vzj-ath9k-htc-ar7010-firmware-1.4.0/lib/firmware/htc_7010.fw > > And the hashes in master at commit 75bad75367fcf2c289fae3b40dbcc850f92177be: > > a5481cc67d962b217de1300121a6c7584e847cbe215442553d24a2173ca9202e /gnu/store/0m45gn74b5bavxq77158i3l593lh082r-ath9k-htc-firmware-1.4.0/lib/firmware/htc_9271.fw > eef84c16e3edad3fdec19c985d190b5ed3f5bd5bae20be5579681ab35f001406 /gnu/store/0m45gn74b5bavxq77158i3l593lh082r-ath9k-htc-firmware-1.4.0/lib/firmware/htc_7010.fw Yay! live well, vagrant