Makefile: Use CPPFLAGS for -I stuff
[simavr] / examples / board_reprap / Makefile
1
2 #       Copyright 2008, 2009 Michel Pollet <buserror@gmail.com>
3 #
4 #       This file is part of simavr.
5 #
6 #       simavr is free software: you can redistribute it and/or modify
7 #       it under the terms of the GNU General Public License as published by
8 #       the Free Software Foundation, either version 3 of the License, or
9 #       (at your option) any later version.
10 #
11 #       simavr is distributed in the hope that it will be useful,
12 #       but WITHOUT ANY WARRANTY; without even the implied warranty of
13 #       MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 #       GNU General Public License for more details.
15 #
16 #       You should have received a copy of the GNU General Public License
17 #       along with simavr.  If not, see <http://www.gnu.org/licenses/>.
18
19 target= reprap
20 firm_src = ${wildcard atmega*.c}
21 firmware = ${firm_src:.c=.hex}
22 simavr = ../../
23
24 IPATH = .
25 IPATH += src
26 IPATH += ../parts
27 IPATH += ../shared
28 IPATH += ${simavr}/include
29 IPATH += ${simavr}/simavr/sim
30
31 VPATH = src
32 VPATH += src/c3
33 VPATH += ../parts
34 VPATH += ../shared
35
36 # for the Open Motion Controller board
37 CPPFLAGS += -DMOTHERBOARD=91
38 CPPFLAGS += ${shell pkg-config --cflags pangocairo}
39
40 include ../Makefile.opengl
41
42 LDFLAGS += ${shell pkg-config --libs pangocairo}
43 LDFLAGS += -lpthread -lutil -ldl
44 LDFLAGS += -lm
45
46 C3SRC   = ${wildcard src/c3/*.c}
47 C3OBJ   = ${patsubst src/c3%,${OBJ}%,${C3SRC:.c=.o}}
48
49 CPPFLAGS        += ${patsubst %,-I%,${subst :, ,${IPATH}}}
50
51
52 all: obj ${firmware} ${target}
53
54 include ${simavr}/Makefile.common
55
56 board = ${OBJ}/${target}.elf
57
58 ${board} : ${C3OBJ}
59 ${board} : ${OBJ}/mongoose.o
60 ${board} : ${OBJ}/button.o
61 ${board} : ${OBJ}/uart_pty.o
62 ${board} : ${OBJ}/thermistor.o
63 ${board} : ${OBJ}/heatpot.o
64 ${board} : ${OBJ}/stepper.o
65 ${board} : ${OBJ}/c_utils.o
66 ${board} : ${OBJ}/${target}.o
67 ${board} : ${OBJ}/${target}_gl.o
68
69 ${target}: ${board}
70         @echo $@ done
71
72 clean: clean-${OBJ}
73         rm -rf *.a *.axf ${target} *.vcd
74