forked from EXL/P2kElfs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile.eg1
41 lines (35 loc) · 1.69 KB
/
Makefile.eg1
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
# Script: Motorola P2K Makefile
# Flavor: EG1, EA1 (ElfPack v1.x, ARM GCC, Linux)
# Author: EXL, 06-Jan-2025
P2K_ELF_SDK = /home/exl/Storage/Projects/Git/MotoFanRu/P2K-ELF-SDK
ARM_GCC_LIN_BIN = $(P2K_ELF_SDK)/tool/compiler/ARM-GCC-LIN/bin
CC = $(shell command -v arm-none-eabi-gcc || echo $(ARM_GCC_LIN_BIN)/arm-none-eabi-gcc)
INCLUDES = -nostdinc -I$(P2K_ELF_SDK)/sdk_mcore -I$(P2K_ELF_SDK)/ep1/inc
DEFINES = -D__P2K__ -DEP1 -DLINUX_BOGOMIPS -DDEBUG
WARNINGS = -Wall
OPTIMIZATIONS = -O2
FEATURES = -ffreestanding -fshort-wchar -fshort-enums -fpack-struct=4 -fno-builtin
ifeq ($(ARGON), 1)
FLAVOR = -DEA1
CPU_FLAGS = -mbig-endian -mthumb -mthumb-interwork -mbe32 -march=armv6j -mtune=arm1136jf-s
else
FLAVOR = -DEG1
CPU_FLAGS = -mbig-endian -mthumb -mthumb-interwork -march=armv4t -mtune=arm7tdmi-s
endif
AFLAGS = -marm
CFLAGS = $(INCLUDES) $(DEFINES) $(FLAVOR) $(WARNINGS) $(OPTIMIZATIONS) $(CPU_FLAGS) $(FEATURES)
CXXFLAGS = $(CFLAGS)
LDFLAGS = $(CFLAGS) -s -pie -Wl,--gc-sections -Wl,-zmax-page-size=1 -Wl,-eRegister
LIBS = -nostdlib -nodefaultlibs -L$(P2K_ELF_SDK)/ep1/lib/gcc -leg1_gcc_stub -lgcc_missing
TARGET_ELF = Benchmark_GCC.elf
all:
$(CC) $(CFLAGS) $(AFLAGS) -c delay_armv4t_GCC.S -o delay_armv4t_GCC.o
$(CC) $(CFLAGS) -c dhry_1.c -o dhry_1.o
$(CC) $(CFLAGS) -c dhry_2.c -o dhry_2.o
$(CC) $(CFLAGS) -c Phases.c -o Phases.o
# $(CC) $(CFLAGS) -c FireEffect.c -o FireEffect.o
$(CC) $(CFLAGS) -c Benchmark.c -o Benchmark.o
$(CC) $(LDFLAGS) delay_armv4t_GCC.o dhry_1.o dhry_2.o Phases.o Benchmark.o $(LIBS) -o $(TARGET_ELF)
clean:
-rm -f *.o
-rm -f *.elf