Removed comment about STM32F4 limitations
[fw/stlink] / Makefile
1 # make ... for both libusb and libsg
2 #
3 # make CONFIG_USE_LIBSG=0 ...
4 # for just libusb
5 #
6 VPATH=src
7
8 SOURCES_LIB=stlink-common.c stlink-usb.c
9 OBJS_LIB=$(SOURCES_LIB:.c=.o)
10 TEST_PROGRAMS=test_usb
11 LDFLAGS=-L. -lstlink -lusb-1.0
12
13 ifeq ($(CONFIG_USE_LIBSG),)
14 CONFIG_USE_LIBSG=1
15 endif
16
17 ifneq ($(CONFIG_USE_LIBSG),0)
18 SOURCES_LIB+=stlink-sg.c
19 CFLAGS+=-DCONFIG_USE_LIBSG=1
20 LDFLAGS+=-lsgutils2
21 TEST_PROGRAMS+=test_sg
22 endif
23
24 CFLAGS+=-g
25 CFLAGS+=-DCONFIG_USE_LIBUSB=1
26 CFLAGS+=-DDEBUG=1
27 CFLAGS+=-std=gnu99
28 CFLAGS+=-Wall -Wextra
29
30
31 LIBRARY=libstlink.a
32
33 all:  $(LIBRARY) flash gdbserver $(TEST_PROGRAMS)
34
35 $(LIBRARY): $(OBJS_LIB)
36         @echo "objs are $(OBJS_LIB)"
37         $(AR) -cr $@ $^
38         @echo "done making library"
39         
40
41 test_sg: test_sg.o $(LIBRARY)
42         @echo "building test_sg"
43         $(CC) test_sg.o $(LDFLAGS) -o $@
44
45 test_usb: test_usb.o $(LIBRARY)
46         @echo "building test_usb"
47         $(CC) test_usb.o $(LDFLAGS) -o $@
48         @echo "done linking"
49
50 %.o: %.c
51         @echo "building $^ into $@"
52         $(CC) $(CFLAGS) -c $^ -o $@
53         @echo "done compiling"
54
55 clean:
56         rm -rf $(OBJS_LIB)
57         rm -rf $(LIBRARY)
58         rm -rf test_usb*
59         rm -rf test_sg*
60
61 distclean: clean
62         $(MAKE) -C flash clean
63         $(MAKE) -C gdbserver clean
64         
65 flash:
66         $(MAKE) -C flash CONFIG_USE_LIBSG="$(CONFIG_USE_LIBSG)" 
67
68 gdbserver:
69         $(MAKE) -C gdbserver CONFIG_USE_LIBSG="$(CONFIG_USE_LIBSG)"
70
71 .PHONY: clean all flash gdbserver