mirror of
https://github.com/linuxboot/heads.git
synced 2024-12-18 12:46:26 +00:00
musl-cross-make: rename musl-cross->musl-cross-make + bump version from ~0.9.9+->~0.9.10+ (musl 1.2.0 -> 1.2.5)
Signed-off-by: Thierry Laurion <insurgo@riseup.net>
This commit is contained in:
parent
9d656fceb5
commit
30da60917c
@ -65,11 +65,11 @@ jobs:
|
||||
- run:
|
||||
name: Creating coreboot (and associated patches) and musl-cross-make modules digest (musl-cross-make and coreboot cache digest)
|
||||
command: |
|
||||
find .circleci/config.yml ./Makefile ./flake.lock ./modules/coreboot ./modules/musl-cross* ./patches/coreboot* -type f | sort -h | xargs sha256sum > ./tmpDir/coreboot_musl-cross.sha256sums
|
||||
find .circleci/config.yml ./Makefile ./flake.lock ./modules/coreboot ./modules/musl-cross-make* ./patches/coreboot* -type f | sort -h | xargs sha256sum > ./tmpDir/coreboot_musl-cross-make.sha256sums
|
||||
- run:
|
||||
name: Creating musl-cross-make and musl-cross-make patches digest (musl-cross-make cache digest)
|
||||
command: |
|
||||
find .circleci/config.yml ./Makefile ./flake.lock modules/musl-cross* -type f | sort -h | xargs sha256sum > ./tmpDir/musl-cross.sha256sums
|
||||
find .circleci/config.yml ./Makefile ./flake.lock modules/musl-cross-make* -type f | sort -h | xargs sha256sum > ./tmpDir/musl-cross-make.sha256sums
|
||||
- restore_cache:
|
||||
# First matched/found key wins and following keys are not tried
|
||||
keys:
|
||||
@ -79,10 +79,10 @@ jobs:
|
||||
- nix-docker-heads-modules-and-patches-{{ checksum "./tmpDir/all_modules_and_patches.sha256sums" }}{{ .Environment.CACHE_VERSION }}
|
||||
|
||||
# Cache for coreboot module (and patches) and musl-cross-make digests (coreboot: triannual release)
|
||||
- nix-docker-heads-coreboot-musl-cross-{{ checksum "./tmpDir/coreboot_musl-cross.sha256sums" }}{{ .Environment.CACHE_VERSION }}
|
||||
- nix-docker-heads-coreboot-musl-cross-make-{{ checksum "./tmpDir/coreboot_musl-cross-make.sha256sums" }}{{ .Environment.CACHE_VERSION }}
|
||||
|
||||
# Cache for musl-cross-make module digest (rarely modified).
|
||||
- nix-docker-heads-musl-cross-{{ checksum "./tmpDir/musl-cross.sha256sums" }}{{ .Environment.CACHE_VERSION }}
|
||||
- nix-docker-heads-musl-cross-make-{{ checksum "./tmpDir/musl-cross-make.sha256sums" }}{{ .Environment.CACHE_VERSION }}
|
||||
- run:
|
||||
name: Download and neuter xx20 ME (keep generated GBE and extracted IFD in tree)
|
||||
command: |
|
||||
@ -171,26 +171,26 @@ jobs:
|
||||
- attach_workspace:
|
||||
at: ~/heads
|
||||
- save_cache:
|
||||
# Generate cache for the same musl-cross module definition if hash is not previously existing
|
||||
# Generate cache for the same musl-cross-make module definition if hash is not previously existing
|
||||
# CircleCI removed their wildcard support, so we have to list precise versions to cache in directory names
|
||||
key: nix-docker-heads-musl-cross-{{ checksum "./tmpDir/musl-cross.sha256sums" }}{{ .Environment.CACHE_VERSION }}
|
||||
key: nix-docker-heads-musl-cross-make-{{ checksum "./tmpDir/musl-cross-make.sha256sums" }}{{ .Environment.CACHE_VERSION }}
|
||||
paths:
|
||||
- build/ppc64/musl-cross-38e52db8358c043ae82b346a2e6e66bc86a53bc1
|
||||
- build/x86/musl-cross-38e52db8358c043ae82b346a2e6e66bc86a53bc1
|
||||
- build/ppc64/musl-cross-make-38e52db8358c043ae82b346a2e6e66bc86a53bc1
|
||||
- build/x86/musl-cross-make-38e52db8358c043ae82b346a2e6e66bc86a53bc1
|
||||
- crossgcc
|
||||
- packages
|
||||
- save_cache:
|
||||
# Generate cache for the same coreboot and musl-cross-make modules definition if hash is not previously existing
|
||||
# CircleCI removed their wildcard support, so we have to list precise versions to cache in directory names
|
||||
key: nix-docker-heads-coreboot-musl-cross-{{ checksum "./tmpDir/coreboot_musl-cross.sha256sums" }}{{ .Environment.CACHE_VERSION }}
|
||||
key: nix-docker-heads-coreboot-musl-cross-make-{{ checksum "./tmpDir/coreboot_musl-cross-make.sha256sums" }}{{ .Environment.CACHE_VERSION }}
|
||||
paths:
|
||||
- build/ppc64/coreboot-talos_2
|
||||
- build/ppc64/musl-cross-38e52db8358c043ae82b346a2e6e66bc86a53bc1
|
||||
- build/ppc64/musl-cross-make-38e52db8358c043ae82b346a2e6e66bc86a53bc1
|
||||
- build/x86/coreboot-4.11
|
||||
- build/x86/coreboot-24.02.01
|
||||
- build/x86/coreboot-dasharo
|
||||
- build/x86/coreboot-purism
|
||||
- build/x86/musl-cross-38e52db8358c043ae82b346a2e6e66bc86a53bc1
|
||||
- build/x86/musl-cross-make-38e52db8358c043ae82b346a2e6e66bc86a53bc1
|
||||
- crossgcc
|
||||
- packages
|
||||
- save_cache:
|
||||
@ -208,20 +208,20 @@ workflows:
|
||||
jobs:
|
||||
- prep_env
|
||||
|
||||
# This step builds musl-cross for x86 architecture, which will be used by subsequent x86 board builds
|
||||
# This step builds musl-cross-make for x86 architecture, which will be used by subsequent x86 board builds
|
||||
- build_and_persist:
|
||||
name: x86-musl-cross
|
||||
name: x86-musl-cross-make
|
||||
target: x230-hotp-maximized
|
||||
subcommand: "musl-cross"
|
||||
subcommand: "musl-cross-make"
|
||||
requires:
|
||||
- prep_env
|
||||
|
||||
# This step builds musl-cross for ppc64 architecture, which will be used by subsequent ppc64 board builds
|
||||
# This step builds musl-cross-make for ppc64 architecture, which will be used by subsequent ppc64 board builds
|
||||
- build_and_persist:
|
||||
name: ppc64-musl-cross
|
||||
name: ppc64-musl-cross-make
|
||||
arch: ppc64
|
||||
target: talos-2
|
||||
subcommand: "musl-cross"
|
||||
subcommand: "musl-cross-make"
|
||||
requires:
|
||||
- prep_env
|
||||
|
||||
@ -234,7 +234,7 @@ workflows:
|
||||
target: x230-hotp-maximized
|
||||
subcommand: ""
|
||||
requires:
|
||||
- x86-musl-cross
|
||||
- x86-musl-cross-make
|
||||
|
||||
# coreboot purism
|
||||
- build_and_persist:
|
||||
@ -254,7 +254,7 @@ workflows:
|
||||
target: nitropad-nv41
|
||||
subcommand: ""
|
||||
requires:
|
||||
- x86-musl-cross
|
||||
- x86-musl-cross-make
|
||||
|
||||
# coreboot talos_2
|
||||
- build_and_persist:
|
||||
@ -263,7 +263,7 @@ workflows:
|
||||
target: talos-2
|
||||
subcommand: ""
|
||||
requires:
|
||||
- ppc64-musl-cross
|
||||
- ppc64-musl-cross-make
|
||||
|
||||
# coreboot 4.11
|
||||
- build_and_persist:
|
||||
@ -271,7 +271,7 @@ workflows:
|
||||
target: librem_l1um
|
||||
subcommand: ""
|
||||
requires:
|
||||
- x86-musl-cross
|
||||
- x86-musl-cross-make
|
||||
|
||||
# Cache one workspace per architecture
|
||||
# Make sure workspace caches are chainloaded and the last in chain for an arch is saved
|
||||
|
16
Makefile
16
Makefile
@ -189,11 +189,11 @@ $(shell mkdir -p "$(initrd_lib_dir)" "$(initrd_bin_dir)" "$(initrd_data_dir)")
|
||||
SHELL := /usr/bin/env bash
|
||||
.SHELLFLAGS := -o pipefail -c
|
||||
|
||||
# Include the musl-cross module early so that $(CROSS) will
|
||||
# Include the musl-cross-make module early so that $(CROSS) will
|
||||
# be defined prior to any other module.
|
||||
include modules/musl-cross
|
||||
include modules/musl-cross-make
|
||||
|
||||
musl_dep := musl-cross
|
||||
musl_dep := musl-cross-make
|
||||
target := $(shell echo $(CROSS) | grep -Eoe '([^/]*?)-linux-musl')
|
||||
arch := $(subst -linux-musl, , $(target))
|
||||
heads_cc := $(CROSS)gcc \
|
||||
@ -568,8 +568,8 @@ endef
|
||||
|
||||
$(call map, define_module, $(modules-y))
|
||||
|
||||
# hack to force musl-cross to be built before musl
|
||||
#$(build)/$(musl_dir)/.configured: $(build)/$(musl-cross_dir)/../../crossgcc/x86_64-linux-musl/bin/x86_64-musl-linux-gcc
|
||||
# hack to force musl-cross-make to be built before musl
|
||||
#$(build)/$(musl_dir)/.configured: $(build)/$(musl-cross-make_dir)/../../crossgcc/x86_64-linux-musl/bin/x86_64-musl-linux-gcc
|
||||
|
||||
#
|
||||
# Install a file into the initrd, if it changed from
|
||||
@ -606,7 +606,7 @@ endef
|
||||
|
||||
# Only some modules have binaries that we install
|
||||
# Shouldn't this be specified in the module file?
|
||||
#bin_modules-$(CONFIG_MUSL) += musl-cross
|
||||
#bin_modules-$(CONFIG_MUSL) += musl-cross-make
|
||||
bin_modules-$(CONFIG_KEXEC) += kexec
|
||||
bin_modules-$(CONFIG_TPMTOTP) += tpmtotp
|
||||
bin_modules-$(CONFIG_PCIUTILS) += pciutils
|
||||
@ -666,7 +666,7 @@ endif
|
||||
$(COREBOOT_UTIL_DIR)/cbmem/cbmem \
|
||||
$(COREBOOT_UTIL_DIR)/superiotool/superiotool \
|
||||
$(COREBOOT_UTIL_DIR)/inteltool/inteltool \
|
||||
: $(build)/$(coreboot_base_dir)/.canary musl-cross
|
||||
: $(build)/$(coreboot_base_dir)/.canary musl-cross-make
|
||||
+$(call do,MAKE,$(notdir $@),\
|
||||
$(MAKE) -C "$(dir $@)" $(CROSS_TOOLS) \
|
||||
)
|
||||
@ -785,7 +785,7 @@ $(build)/$(initrd_dir)/tools.cpio: $(foreach d,$(bin_modules-y),$(build)/$($d_di
|
||||
|
||||
|
||||
# List of all modules, excluding the slow to-build modules
|
||||
modules-slow := musl musl-cross kernel_headers
|
||||
modules-slow := musl musl-cross-make kernel_headers
|
||||
module_dirs := $(foreach m,$(filter-out $(modules-slow),$(modules-y)),$($m_dir))
|
||||
|
||||
echo_modules:
|
||||
|
@ -159,7 +159,7 @@ linux_target := \
|
||||
$(MAKE_JOBS) \
|
||||
|
||||
# We cross compile linux now
|
||||
linux_depends := musl-cross
|
||||
linux_depends := musl-cross-make
|
||||
|
||||
#
|
||||
# Linux kernel module installation
|
||||
|
@ -2,13 +2,13 @@ CONFIG_MUSL ?= y
|
||||
|
||||
ifeq "$(MUSL_CROSS_ONCE)" ""
|
||||
MUSL_CROSS_ONCE := 1
|
||||
modules-$(CONFIG_MUSL) += musl-cross
|
||||
modules-$(CONFIG_MUSL) += musl-cross-make
|
||||
|
||||
musl-cross_version := 38e52db8358c043ae82b346a2e6e66bc86a53bc1
|
||||
musl-cross_dir := musl-cross-$(musl-cross_version)
|
||||
musl-cross_url := https://github.com/richfelker/musl-cross-make/archive/$(musl-cross_version).tar.gz
|
||||
musl-cross_tar := musl-cross-$(musl-cross_version).tar.gz
|
||||
musl-cross_hash := b4b85d6d3ddab0f2b8650a53e775673f8c346fa2fb07d652a9880bd206ade100
|
||||
musl-cross-make_version := fd6be58297ee21fcba89216ccd0d4aca1e3f1c5c
|
||||
musl-cross-make_dir := musl-cross-make-$(musl-cross-make_version)
|
||||
musl-cross-make_url := https://github.com/richfelker/musl-cross-make/archive/$(musl-cross-make_version).tar.gz
|
||||
musl-cross-make_tar := musl-cross-make-$(musl-cross-make_version).tar.gz
|
||||
musl-cross-make_hash := 15b8e0a287d738a46e069e90d67a8d96213b357b79aaf3e8cf0cd40e4b230d9e
|
||||
|
||||
|
||||
ifneq "$(CROSS)" ""
|
||||
@ -20,42 +20,42 @@ else
|
||||
$(info Using $(CROSS)gcc)
|
||||
endif
|
||||
|
||||
# The cross compiler has already been built, so the musl-cross target
|
||||
# The cross compiler has already been built, so the musl-cross-make target
|
||||
# is a NOP. We really don't need to check out this code tree, but it is easier
|
||||
# if we have a target for it.
|
||||
musl-cross_target := --version
|
||||
musl-cross-make_target := --version
|
||||
|
||||
# Ask the compiler where to find its own libc.so
|
||||
musl-cross_libraries := \
|
||||
musl-cross-make_libraries := \
|
||||
$(shell $(CROSS)gcc --print-file-name=libc.so) \
|
||||
|
||||
else
|
||||
|
||||
# Force a full build of the cross compiler for target platform
|
||||
# No need to build i386 for x86 since coreboot uses its own compiler
|
||||
musl-cross_configure := \
|
||||
musl-cross-make_configure := \
|
||||
echo -e >> Makefile 'musl-target:' ; \
|
||||
echo -e >> Makefile '\t$$$$(MAKE) TARGET="$(MUSL_ARCH)-linux-musl" install' ;
|
||||
|
||||
CROSS_PATH ?= $(pwd)/crossgcc/$(CONFIG_TARGET_ARCH)
|
||||
|
||||
musl-cross_target := \
|
||||
musl-cross-make_target := \
|
||||
OUTPUT="$(CROSS_PATH)" \
|
||||
MAKE="$(MAKE)" \
|
||||
$(MAKE_JOBS) \
|
||||
"musl-target"
|
||||
|
||||
CROSS := $(CROSS_PATH)/bin/$(subst -,_,$(MUSL_ARCH))-linux-musl-
|
||||
musl-cross_libraries := $(CROSS_PATH)/$(subst -,_,$(MUSL_ARCH))-linux-musl/lib/libc.so
|
||||
musl-cross-make_libraries := $(CROSS_PATH)/$(subst -,_,$(MUSL_ARCH))-linux-musl/lib/libc.so
|
||||
|
||||
endif
|
||||
|
||||
|
||||
musl-cross_output := $(CROSS)gcc
|
||||
musl-cross-make_output := $(CROSS)gcc
|
||||
|
||||
## Fake a target so that musl will force a header install by the
|
||||
## Linux kernel sources.
|
||||
$(build)/$(musl-cross_dir)/.build: $(INSTALL)/include/linux/limits.h
|
||||
$(build)/$(musl-cross-make_dir)/.build: $(INSTALL)/include/linux/limits.h
|
||||
|
||||
|
||||
endif
|
Loading…
Reference in New Issue
Block a user