GNU bug report logs - #72751
[PATCH 0/2] Rework cmake cross compiling.

Previous Next

Package: guix-patches;

Reported by: Dariqq <dariqq <at> posteo.net>

Date: Wed, 21 Aug 2024 18:10:02 UTC

Severity: normal

Tags: patch

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Dariqq <dariqq <at> posteo.net>
Subject: bug#72751: closed (Re: [bug#72751] [PATCH 0/2] Rework cmake cross
 compiling.)
Date: Tue, 14 Jan 2025 13:18:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#72751: [PATCH 0/2] Rework cmake cross compiling.

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 72751 <at> debbugs.gnu.org.

-- 
72751: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=72751
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Ludovic Courtès <ludo <at> gnu.org>
To: Dariqq <dariqq <at> posteo.net>
Cc: Vagrant Cascadian <vagrant <at> debian.org>, 72751-done <at> debbugs.gnu.org,
 Efraim Flashner <efraim <at> flashner.co.il>
Subject: Re: [bug#72751] [PATCH 0/2] Rework cmake cross compiling.
Date: Tue, 14 Jan 2025 14:16:37 +0100
Finally pushed:

  d804997897 * gnu: ath9k-firmware: Remove CMAKE_SYSTEM_NAME override.
  ad672d80d7 * build-system: cmake: Rework cross compilation.

Thanks, Dariqq!

Ludo’.

[Message part 3 (message/rfc822, inline)]
From: Dariqq <dariqq <at> posteo.net>
To: guix-patches <at> gnu.org
Cc: Dariqq <dariqq <at> posteo.net>
Subject: [PATCH 0/2] Rework cmake cross compiling.
Date: Wed, 21 Aug 2024 18:05:44 +0000
Hi,

This is an attempt to move the cross compile logic out of the build side.

This should fix https://issues.guix.gnu.org/72697 and technically supersedes https://issues.guix.gnu.org/68366 .
Also cleans up after https://issues.guix.gnu.org/69476 by removing the need for CMAKE_SYSTEM_NAME override.

Main benefit is that this decouples the cmake native compilation and cmake cross compilation, i.e. if a new target needs a new CMAKE_SYSTEM_NAME we don't need to touch build code to enable it and thus don't need to rebuild everything natively for something only affecting cross building.

Also use the target-*? functions and c*-for-target instead of reimplementing them in build code.

The new cmake-system-name-for-target (a bit long, idk) now also supports hurd and bare-metal targets.

I have tested this with the package i had troubles in #72697, and also verified that the ath9k firmware hashes are unchanged.

Output of guix hash:

/gnu/store/0r075s8g9pr9i6yd3pvwfjl2g4mkm7s8-ath9k-htc-ar9271-firmware-1.4.0/lib/firmware/htc_9271.fw 
0bi0m4y1g8i47mal4m11pry88kjqqyk2209hw5yj2awngp31qj55

/gnu/store/msjnrh864a2c8k44hvwqs6fra7c7bb6v-ath9k-htc-ar7010-firmware-1.4.0/lib/firmware/htc_7010.fw 
01hl01gv66k8g5avw85fbfyzblsy1ccmv64wq7g3zbgdwcb4ry7f


Unfortunely this will cause a lot of rebuilds (but this will be hopefully easier in the future).

Dariqq (2):
  guix: build-system: cmake: Rework cross compilation.
  gnu: ath9k-firmware: Remove CMAKE_SYSTEM_NAME override.

 gnu/packages/firmware.scm         |  6 ++----
 guix/build-system/cmake.scm       | 19 ++++++++++++++++++-
 guix/build/cmake-build-system.scm | 11 -----------
 3 files changed, 20 insertions(+), 16 deletions(-)


base-commit: 7a149c6003d25e8b2794b113d34062be134d7710
-- 
2.45.2




This bug report was last modified 127 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.