Merge pull request #118 from bgamari/temp-no-irq
[clinton/Smoothieware.git] / makefile
CommitLineData
4cff3ded
AW
1# Copyright 2011 Adam Green (http://mbed.org/users/AdamGreen/)\r
2#\r
3# Licensed under the Apache License, Version 2.0 (the "License");\r
4# you may not use this file except in compliance with the License.\r
5# You may obtain a copy of the License at\r
6#\r
7# http://www.apache.org/licenses/LICENSE-2.0\r
8#\r
9# Unless required by applicable law or agreed to in writing, software\r
10# distributed under the License is distributed on an "AS IS" BASIS,\r
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
12# See the License for the specific language governing permissions and\r
13# limitations under the License.\r
14PROJECT=main\r
4eb9c745 15GCC4MBED_DIR=./gcc4mbed\r
4cff3ded
AW
16INCDIRS=\r
17LIBS_PREFIX=\r
18LIBS_SUFFIX=\r
b6c86164 19SRC=./src\r
b00f1a6b
AG
20\r
21#GCC4MBED_TYPE=Debug\r
4464301d 22#GCC4MBED_TYPE=Release\r
6c79da43 23GCC4MBED_TYPE=Checked\r
b00f1a6b 24\r
dc2de456
AG
25# Set to 1 to tag each heap allocation with the caller's return address.\r
26HEAP_TAGS=1\r
27\r
65eee97a
AG
28# Set to 1 configure MPU to disable write buffering and eliminate imprecise bus faults.\r
29WRITE_BUFFER_DISABLE=1\r
30\r
ddf5038e
AG
31# Set to non zero value if you want checks to be enabled which reserve a\r
32# specific amount of space for the stack. The heap's growth will be\r
33# constrained to reserve this much space for the stack and the stack won't be\r
34# able to grow larger than this amount.\r
35STACK_SIZE=3072\r
36\r
5b2b7165
AG
37# Set to 1 to allow MRI debug monitor to take full control of UART0 and use it\r
38# as a dedicated debug channel. If you are using the USB based serial port for\r
39# the console then this should cause you no problems. Set MRI_BREAK_ON_INIT to\r
40# 0 if you don't want to break into GDB at startup.\r
41ENABLE_DEBUG_MONITOR?=0\r
42\r
b00f1a6b
AG
43ifeq "$(ENABLE_DEBUG_MONITOR)" "1"\r
44# Can add MRI_UART_BAUD=115200 to next line if GDB fails to connect to MRI.\r
45# Tends to happen on some Linux distros but not Windows and OS X.\r
46MRI_UART=MRI_UART_0\r
47MRI_BREAK_ON_INIT=1\r
48MRI_SEMIHOST_STDIO=1\r
49else\r
50MRI_UART=MRI_UART_0 MRI_UART_SHARE\r
6c79da43
AG
51MRI_BREAK_ON_INIT=0\r
52MRI_SEMIHOST_STDIO=0\r
b00f1a6b 53endif\r
4cff3ded 54\r
38cf3dc6 55CONSOLE=/dev/ttyUSB0\r
14d4726b 56\r
4cff3ded
AW
57include ./gcc4mbed/build/gcc4mbed.mk\r
58\r
15d0cdbc
MM
59.PHONY: debug-store flash upload debug console\r
60\r
61debug-store: $(PROJECT).elf\r
62 cp $(PROJECT).elf $(PROJECT)_lastupload.elf\r
63\r
64flash: $(PROJECT).hex debug-store\r
5cdad772 65 lpc21isp $< $(CONSOLE) 115200 12000\r
a33de4b2 66\r
15d0cdbc 67upload: $(PROJECT).bin debug-store\r
38cf3dc6 68 dfu-util -d 1d50:6015 -R -D $<\r
0144b869 69\r
15d0cdbc 70debug: $(PROJECT)_lastupload.elf\r
14d4726b 71 arm-none-eabi-gdb $< -ex "set target-charset ASCII" -ex "set remotelogfile mri.log" -ex "target remote $(CONSOLE)"\r
0144b869
MM
72\r
73console:\r
14d4726b
MM
74 stty raw ignbrk -echo 2000000 < $(CONSOLE)\r
75 ( cat <&3 & cat >&3 ; kill %% ) 3<>$(CONSOLE)\r