guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

83/89: build: Build gnu/packages/*.go in four steps.


From: guix-commits
Subject: 83/89: build: Build gnu/packages/*.go in four steps.
Date: Tue, 20 Jun 2023 05:59:03 -0400 (EDT)

janneke pushed a commit to branch hurd-team
in repository guix.

commit 89117d737db0cff692dcfb101e1ff76fb34924a6
Author: Janneke Nieuwenhuizen <janneke@gnu.org>
AuthorDate: Wed May 24 15:46:44 2023 +0200

    build: Build gnu/packages/*.go in four steps.
    
    This allows guix build --target=i586-pc-gnu from an x86 host.
    
    This is a followup to 1aa7ee52c6c520c2dbbdb06f1381466e9fd96294.
    
    * Makefile.am (first_half): Rename to...
    (first_quart): ...this, and also split into...
    (second_quart): ...this.
    (third_quart, MODULES_PACKAGES3, MODULES_PACKAGE4): New variables.
    (make-packages3-go, make-packages4-go): New targets.
    (make-packages-go): Add them.
---
 Makefile.am | 38 +++++++++++++++++++++++++++++++-------
 1 file changed, 31 insertions(+), 7 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index a386e6033c..4622c08775 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -772,15 +772,26 @@ endef
 # in <https://issues.guix.gnu.org/48963>.  Each 'eval' call below creates a
 # 'make-*-go' phony target that builds the corresponding subset.
 
-first_half :=                                                          \
+first_quart :=                                                         \
   gnu/packages/a% gnu/packages/b% gnu/packages/c% gnu/packages/d%      \
-  gnu/packages/e% gnu/packages/f% gnu/packages/g% gnu/packages/h%      \
-  gnu/packages/i% gnu/packages/j% gnu/packages/k% gnu/packages/l%
+  gnu/packages/e% gnu/packages/f%
+
+second_quart :=                                                                
\
+  gnu/packages/g% gnu/packages/h% gnu/packages/i%  gnu/packages/j%     \
+  gnu/packages/k% gnu/packages/l%
+
+third_quart :=                                                         \
+  gnu/packages/m% gnu/packages/n% gnu/packages/o% gnu/packages/p%      \
+  gnu/packages/q% gnu/packages/r% gnu/packages/s%
 
 MODULES_CORE      := guix.scm $(filter-out guix/scripts/%,$(filter 
guix/%,$(MODULES)))
-MODULES_PACKAGES1 := $(filter $(first_half),$(MODULES))
-MODULES_PACKAGES2 := $(filter-out $(first_half),$(filter 
gnu/packages/%,$(MODULES)))
-MODULES_PACKAGES  := $(MODULES_PACKAGES1) $(MODULES_PACKAGES2)
+MODULES_PACKAGES1 := $(filter $(first_quart),$(MODULES))
+MODULES_PACKAGES2 := $(filter $(second_quart),$(MODULES))
+MODULES_PACKAGES3 := $(filter $(third_quart),$(MODULES))
+MODULES_PACKAGES4 := $(filter-out $(first_quart)$(second_quart)$(third_quart), 
\
+                       $(filter gnu/packages/%,$(MODULES)))
+MODULES_PACKAGES  := $(MODULES_PACKAGES1) $(MODULES_PACKAGES2)         \
+                       $(MODULES_PACKAGES3) $(MODULES_PACKAGES4)
 MODULES_SYSTEM    := gnu.scm $(filter-out gnu/packages/%,$(filter 
gnu/%,$(MODULES)))
 MODULES_CLI       := $(filter guix/scripts/%,$(MODULES))
 MODULES_PO        := guix/build/po.scm
@@ -800,7 +811,20 @@ $(eval $(call guile-compilation-rule,make-packages2-go,    
\
   $(words $(MODULES_CORE) $(MODULES_PACKAGES1))))
 .PHONY: make-packages2-go
 
-make-packages-go: make-packages1-go make-packages2-go
+$(eval $(call guile-compilation-rule,make-packages3-go,                        
        \
+  $(MODULES_PACKAGES3) make-core-go make-packages1-go make-packages2-go,       
\
+  $(words $(MODULES_CORE) $(MODULES_PACKAGES1) $(MODULES_PACKAGES2))))
+.PHONY: make-packages3-go
+
+$(eval $(call guile-compilation-rule,make-packages4-go,                        
\
+  $(MODULES_PACKAGES4) make-core-go make-packages1-go make-packages2-go        
\
+    make-packages3-go,                                                 \
+  $(words $(MODULES_CORE) $(MODULES_PACKAGES1) $(MODULES_PACKAGES2)    \
+    $(MODULES_PACKAGES3))))
+.PHONY: make-packages4-go
+
+make-packages-go: make-packages1-go make-packages2-go \
+  make-packages3-go make-packages4-go
 .PHONY: make-packages-go
 
 $(eval $(call guile-compilation-rule,make-system-go,   \



reply via email to

[Prev in Thread] Current Thread [Next in Thread]