OSDN Git Service

3f4d54185629e607c7465a73588614a0a91a82f1
[nxt-jsp/etrobo-atk.git] / nxtOSEK / ecrobot / nxtway_gs_balancer / Makefile
1 # Makefile for NXTway-GS balancer library
2
3 # modified to support new directory structure by takshic
4 ROOT := $(dir $(lastword $(MAKEFILE_LIST)))../..
5
6 ECROBOT_ROOT = $(ROOT)/ecrobot
7 # added to support new directory structure by takshic
8 ECROBOT_C_ROOT = $(ECROBOT_ROOT)/c
9
10 LEJOSNXJSRC_ROOT = $(ROOT)/lejos_nxj/src/
11
12 LEJOS_PLATFORM_SOURCES_PATH = $(LEJOSNXJSRC_ROOT)/nxtvm/platform/nxt
13 LEJOS_VM_SOURCES_PATH = $(LEJOSNXJSRC_ROOT)/nxtvm/javavm
14
15 C_LIB_SOURCES = \
16         balancer.c
17
18 C_OPTIMISATION_FLAGS = -Os
19 include $(ECROBOT_ROOT)/tool_gcc.mak
20
21 INC_PATH := \
22         $(LEJOS_PLATFORM_SOURCES_PATH) \
23         $(LEJOS_VM_SOURCES_PATH) \
24         $(ECROBOT_ROOT) \
25         $(ECROBOT_C_ROOT)
26
27 O_FILES = $(C_LIB_SOURCES:c=o) 
28
29 TARGET = $(ECROBOT_ROOT)/libnxtway_gs_balancer.a
30
31 .PHONY: all
32 all: $(TARGET) 
33
34 $(TARGET): $(O_FILES)
35         @echo "Creating $@"
36         $(AR) rv $(TARGET) $(O_FILES)
37
38 %.o: %.c
39         @echo "Compiling $< to $@"
40         $(CC) $(CFLAGS) -o $@ $<
41
42 %.oram: %.c
43         @echo "Compiling $< to $@"
44         $(CC) $(CFLAGS) -o $@ $<
45
46 %.o: %.s
47         @echo "Assembling $< to $@"
48         $(AS) $(ASFLAGS) -o $@ $<
49
50 %.oram: %.s
51         @echo "Assembling $< to $@"
52         $(AS) $(ASFLAGS) -o $@ $<
53
54 %.obmp : %.bmp
55         @echo "Converting $< to $@"
56         $(OBJCOPY) -I binary -O elf32-littlearm -B arm \
57         $< $@
58
59 .PHONY: release
60 release:
61         rm $(O_FILES)
62
63 .PHONY: clean
64 clean:
65         rm $(TARGET)
66         rm $(O_FILES)
67