Subversion Repositories HomeAutomation

Rev

Rev 1867 | Details | Compare with Previous | Last modification | View Log | SVN | RSS feed

Rev Author Line No. Line
801 linlun 1
# Target file name (without extension).
2
TARGET = main
3
BIOSTARGET = bios
4
 
5
LIBDIR = ../../avr-lib
6
SRCDIR = src
819 migan 7
MODDIR = modules
801 linlun 8
CFGDIR = .
817 migan 9
#MODDIR = modules
801 linlun 10
BIOSDIR = bios
11
BIOSSRCDIR = $(LIBDIR)/bios
12
BUILDDIR = build
13
 
14
include bios.inc
15
include ../system.inc
817 migan 16
#include modules.inc
801 linlun 17
 
18
APPMAKEFLAGS = 	TARGET=$(TARGET) \
19
				LIBDIR=$(abspath $(LIBDIR)) \
20
				SRCDIR=$(abspath $(SRCDIR)) \
21
				BIOSDIR=$(abspath $(BIOSDIR)) \
22
				CFGDIR=$(abspath $(CFGDIR)) 
23
 
24
BIOSMAKEFLAGS = TARGET=$(BIOSTARGET) \
25
				LIBDIR=$(abspath $(LIBDIR)) \
26
				SRCDIR=$(abspath $(BIOSSRCDIR)) \
27
				CFGDIR=$(abspath $(CFGDIR)) 
28
 
29
# Define Messages
30
# English
31
MSG_CLEANING = Cleaning project:
32
MSG_CREATEDIR = Creating directory:
33
 
34
 
35
# Default target.
1638 arune 36
all: check_systeminc $(abspath $(BUILDDIR))
801 linlun 37
	@$(MAKE) $(APPMAKEFLAGS) -C $(BUILDDIR) -f $(abspath $(SRCDIR)/Makefile) all
38
 
1638 arune 39
bios: check_systeminc $(abspath $(BIOSDIR))
801 linlun 40
	@$(MAKE) $(BIOSMAKEFLAGS) -C $(BIOSDIR) -f $(abspath $(BIOSSRCDIR)/Makefile) all
41
 
42
installbios: bios
43
	$(UPLOAD) $(ULFLAGS)
44
 
45
upgradebios: bios
46
	$(CANUPLOAD) $(CANULFLAGS) -n $(NODE_ID) -i $(NODE_HW_ID) -f $(BIOSDIR)/$(BIOSTARGET).hex -r -b
47
 
1719 arune 48
defaultbios: bios
49
	$(CANUPLOAD) $(CANULFLAGS) -n $(NODE_ID) -i $(NODE_HW_ID) -f $(BIOSDIR)/$(BIOSTARGET).hex -r -d
50
 
801 linlun 51
install: $(BUILDDIR)/$(TARGET).hex
52
	$(CANUPLOAD) $(CANULFLAGS) -n $(NODE_ID) -i $(NODE_HW_ID) -f $< -r
53
 
54
reset: 
55
	$(CANUPLOAD) $(CANULFLAGS) -n $(NODE_ID) -i $(NODE_HW_ID) -r
56
 
57
start: 
58
	$(CANUPLOAD) $(CANULFLAGS) -n $(NODE_ID) -i $(NODE_HW_ID) -s
59
 
1638 arune 60
$(BUILDDIR)/$(TARGET).hex: check_systeminc $(abspath $(BUILDDIR))
801 linlun 61
	@$(MAKE) $(APPMAKEFLAGS) -C $(BUILDDIR) -f $(abspath $(SRCDIR)/Makefile) $(TARGET).hex
62
 
1638 arune 63
$(abspath $(BUILDDIR) $(BIOSDIR)): check_systeminc
801 linlun 64
	@echo $(MSG_CREATEDIR) $@
65
	@$(MKDIR) -p $@
66
 
67
# Target: clean project.
1638 arune 68
clean: check_systeminc
801 linlun 69
	@$(MAKE) $(APPMAKEFLAGS) -C $(BUILDDIR) -f $(abspath $(SRCDIR)/Makefile) clean
70
 
1638 arune 71
cleanbios: check_systeminc
801 linlun 72
	@$(MAKE) $(BIOSMAKEFLAGS) -C $(BIOSDIR) -f $(abspath $(BIOSSRCDIR)/Makefile) clean
73
 
1638 arune 74
distclean: check_systeminc
801 linlun 75
	@echo $(MSG_CLEANING)
76
	$(RM) -r $(BUILDDIR)
77
	$(RM) -r $(BIOSDIR)
78
 
1638 arune 79
setconfig: check_systeminc
80
	@$(SETCONF) $(CANULFLAGS)
903 arune 81
 
1867 arune 82
installnoappl:
83
	@$(ECHO) ":02000000FFFF00" > tmpfil
1888 arune 84
	@$(ECHO) ":00000001FF" >> tmpfil
1867 arune 85
	$(CANUPLOAD) $(CANULFLAGS) -n $(NODE_ID) -i $(NODE_HW_ID) -f tmpfil -r
86
	@$(RM) tmpfile
87
 
1638 arune 88
check_systeminc:
89
ifndef SETCONF
891 arune 90
	@echo 
1638 arune 91
	@echo ERROR! This is because your system.inc is out of date
92
	@echo Please update system.inc.template from SVN and then diff with your system.inc and add the appropriate settings
891 arune 93
	@echo 
94
	@false
95
endif
96
 
801 linlun 97
# Listing of phony targets.
1719 arune 98
.PHONY : all bios installbios upgradebios defaultbios \
801 linlun 99
install reset start \
1867 arune 100
clean cleanbios distclean check_systeminc setconfig installnoappl
801 linlun 101