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: Ludovic Courtès <ludo <at> gnu.org>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#72751: closed ([PATCH 0/2] Rework cmake cross compiling.)
Date: Tue, 14 Jan 2025 13:18:02 +0000
[Message part 1 (text/plain, inline)]
Your message dated Tue, 14 Jan 2025 14:16:37 +0100
with message-id <87tta18rii.fsf <at> gnu.org>
and subject line Re: [bug#72751] [PATCH 0/2] Rework cmake cross compiling.
has caused the debbugs.gnu.org bug report #72751,
regarding [PATCH 0/2] Rework cmake cross compiling.
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> 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: 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



[Message part 3 (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’.


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.