1 |
|
---|
2 | ROOT_PATH = ..
|
---|
3 |
|
---|
4 | #
|
---|
5 | # ãªãã¸ã§ã¯ããã¡ã¤ã«åã®å®ç¾©
|
---|
6 | #
|
---|
7 | OBJNAME = libmad
|
---|
8 | OBJFILE = $(OBJNAME).a
|
---|
9 |
|
---|
10 | ifeq ($(TARGET),)
|
---|
11 | TARGET = stm32f7discovery_gcc
|
---|
12 | endif
|
---|
13 |
|
---|
14 | CC = arm-none-eabi-gcc
|
---|
15 | CXX = arm-none-eabi-g++
|
---|
16 | AR = arm-none-eabi-ar
|
---|
17 | NM = arm-none-eabi-nm
|
---|
18 | OBJCOPY = arm-none-eabi-objcopy
|
---|
19 | OBJDUMP = arm-none-eabi-objdump
|
---|
20 |
|
---|
21 | LDSCRIPT = stm32F7_rom.ld
|
---|
22 |
|
---|
23 | ifeq ($(MCPU),)
|
---|
24 | MCPU = cortex-m7
|
---|
25 | endif
|
---|
26 |
|
---|
27 | ifeq ($(FPU),)
|
---|
28 | FPU = fpv4
|
---|
29 | endif
|
---|
30 |
|
---|
31 | COPTS = -mcpu=$(MCPU) -Wa,--gstabs -mthumb -mthumb-interwork -mlittle-endian
|
---|
32 |
|
---|
33 | ifeq ($(FPU),fpv4)
|
---|
34 | COPTS := $(COPTS) -mfloat-abi=softfp -mfpu=fpv4-sp-d16
|
---|
35 | else
|
---|
36 | COPTS := $(COPTS) -mfloat-abi=hard -mfpu=fpv5-d16
|
---|
37 | endif
|
---|
38 |
|
---|
39 | COPTS := $(COPTS) -nostdlib -O2 -g -Wall
|
---|
40 | CDEFS = -DASO_ZEROCHECK -DHAVE_CONFIG_H -DFPM_64BIT
|
---|
41 |
|
---|
42 |
|
---|
43 | INCLUDES = -I.
|
---|
44 |
|
---|
45 | TARGET_DIR = .
|
---|
46 | RTOS_DIR = $(ROOT_PATH)
|
---|
47 | UTASK_DIR = .
|
---|
48 | vpath %.c $(UTASK_DIR)
|
---|
49 | vpath %.S $(UTASK_DIR)
|
---|
50 |
|
---|
51 | COBJS = bit.o decoder.o fixed.o frame.o huffman.o layer3.o \
|
---|
52 | layer12.o stream.o synth.o timer.o version.o
|
---|
53 |
|
---|
54 | AOBJS =
|
---|
55 |
|
---|
56 | INCLUDES := -I$(UTASK_DIR) -I$(RTOS_DIR)/monitor -I$(RTOS_DIR) \
|
---|
57 | -I$(RTOS_DIR)/target/$(TARGET) -I$(RTOS_DIR)/arch $(INCLUDES)
|
---|
58 | CFLAGS = $(COPTS) $(CDEFS) $(INCLUDES)
|
---|
59 | LDFLAGS := -nostdlib $(LDFLAGS)
|
---|
60 |
|
---|
61 | ifdef LDSCRIPT
|
---|
62 | LDFLAGS := $(LDFLAGS) -T $(LDSCRIPT)
|
---|
63 | endif
|
---|
64 |
|
---|
65 | all: $(OBJFILE)
|
---|
66 |
|
---|
67 | $(OBJFILE): $(COBJS) $(AOBJS)
|
---|
68 | $(AR) -rcs $(OBJFILE) $(COBJS) $(AOBJS)
|
---|
69 |
|
---|
70 | $(COBJS): %.o: %.c
|
---|
71 | $(CC) -c $(CFLAGS) $<
|
---|
72 |
|
---|
73 | $(AOBJS): %.o: %.S
|
---|
74 | $(CC) -c $(CFLAGS) $<
|
---|
75 |
|
---|
76 | # rules
|
---|
77 |
|
---|
78 | monmain.o : $(UTASK_DIR)/monmain.c \
|
---|
79 | $(TARGET_DIR)/sys_defs.h $(UTASK_DIR)/comdefs.h $(UTASK_DIR)/mondefs.h $(UTASK_DIR)/serial.h
|
---|
80 |
|
---|
81 | monitor.o : $(UTASK_DIR)/monitor.c \
|
---|
82 | $(TARGET_DIR)/sys_defs.h $(UTASK_DIR)/comdefs.h $(UTASK_DIR)/mondefs.h $(UTASK_DIR)/serial.h
|
---|
83 |
|
---|
84 | common.o : $(UTASK_DIR)/common.c \
|
---|
85 | $(TARGET_DIR)/sys_defs.h $(UTASK_DIR)/comdefs.h $(UTASK_DIR)/serial.h
|
---|
86 |
|
---|
87 | serial.o : $(UTASK_DIR)/serial.c \
|
---|
88 | $(TARGET_DIR)/sys_defs.h $(UTASK_DIR)/comdefs.h $(UTASK_DIR)/serial.h
|
---|
89 |
|
---|
90 | clean:
|
---|
91 | rm -f *.o
|
---|
92 | rm -f $(OBJFILE)
|
---|
93 |
|
---|