aboutsummaryrefslogtreecommitdiff
path: root/contrib/loaders/checksum/Makefile
blob: 5789a0824eb966f6adfc36184f15d66a1f548bf6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# SPDX-License-Identifier: GPL-2.0-or-later

BIN2C = ../../../src/helper/bin2char.sh

ARM_CROSS_COMPILE ?= arm-none-eabi-
ARM_AS      ?= $(ARM_CROSS_COMPILE)as
ARM_OBJCOPY ?= $(ARM_CROSS_COMPILE)objcopy

ARM_AFLAGS = -EL

RISCV_CROSS_COMPILE ?= riscv64-unknown-elf-
RISCV_CC      ?= $(RISCV_CROSS_COMPILE)gcc
RISCV_OBJCOPY ?= $(RISCV_CROSS_COMPILE)objcopy
RISCV32_CFLAGS = -march=rv32e -mabi=ilp32e -nostdlib -nostartfiles -Os -fPIC
RISCV64_CFLAGS = -march=rv64i -mabi=lp64 -nostdlib -nostartfiles -Os -fPIC

all:	arm riscv

arm: armv4_5_crc.inc armv7m_crc.inc

riscv:	riscv32_crc.inc riscv64_crc.inc

armv4_5_%.elf: armv4_5_%.s
	$(ARM_AS) $(ARM_AFLAGS) $< -o $@

armv4_5_%.bin: armv4_5_%.elf
	$(ARM_OBJCOPY) -Obinary $< $@

armv7m_%.elf: armv7m_%.s
	$(ARM_AS) $(ARM_AFLAGS) $< -o $@

armv7m_%.bin: armv7m_%.elf
	$(ARM_OBJCOPY) -Obinary $< $@

%.inc: %.bin
	$(BIN2C) < $< > $@

riscv32_%.elf:	riscv_%.c
	$(RISCV_CC) $(RISCV32_CFLAGS) $< -o $@

riscv64_%.elf:	riscv_%.c
	$(RISCV_CC) $(RISCV64_CFLAGS) $< -o $@

riscv%.bin:	riscv%.elf
	$(RISCV_OBJCOPY) -Obinary $< $@

clean:
	-rm -f *.elf *.bin *.inc