Include ULINK driver in src/Makefile.am
[openocd.git] / src / Makefile.am
1 include $(top_srcdir)/common.mk
2
3 SUBDIRS = \
4         jtag \
5         helper \
6         target \
7         transport \
8         flash \
9         svf \
10         xsvf \
11         pld \
12         server \
13         rtos
14
15 lib_LTLIBRARIES = libopenocd.la
16 bin_PROGRAMS = openocd
17
18 if ECOSBOARD
19 MAINFILE = ecosboard.c
20 else
21 MAINFILE = main.c
22 endif
23
24 openocd_SOURCES = $(MAINFILE)
25 openocd_LDADD = libopenocd.la
26
27 if INTERNAL_JIMTCL
28 openocd_LDADD += $(top_builddir)/jimtcl/libjim.a
29 else
30 openocd_LDADD += -ljim
31 endif
32
33 libopenocd_la_SOURCES = \
34         hello.c \
35         openocd.c \
36         startup_tcl.c
37
38 noinst_HEADERS = \
39         hello.h \
40         openocd.h
41
42 libopenocd_la_CPPFLAGS = -DPKGBLDDATE=\"`date +%F-%R`\"
43
44 # banner output includes RELSTR appended to $VERSION from the configure script
45 # guess-rev.sh returns either a repository version ID or "-snapshot"
46 if RELEASE
47 libopenocd_la_CPPFLAGS += -DRELSTR=\"\"
48 else
49 libopenocd_la_CPPFLAGS += -DRELSTR=\"`$(top_srcdir)/guess-rev.sh $(top_srcdir)`\"
50 endif
51 libopenocd_la_CPPFLAGS += -DGITVERSION=\"`cd $(top_srcdir) && git describe`\"
52
53 # add default CPPFLAGS
54 libopenocd_la_CPPFLAGS += $(AM_CPPFLAGS) $(CPPFLAGS)
55
56 # the library search path.
57 libopenocd_la_LDFLAGS = $(all_libraries)
58
59 if IS_MINGW
60 MINGWLDADD = -lws2_32
61 else
62 MINGWLDADD =
63 endif
64
65 if FT2232_LIBFTDI
66 FTDI2232LIB = -lftdi -lusb
67 else
68 if USB_BLASTER_LIBFTDI
69 FTDI2232LIB = -lftdi -lusb
70 else
71 if PRESTO_LIBFTDI
72 FTDI2232LIB = -lftdi -lusb
73 else
74 FTDI2232LIB =
75 endif
76 endif
77 endif
78
79 if USBPROG
80 LIBUSB = -lusb
81 else
82 if JLINK
83 LIBUSB = -lusb
84 else
85 if RLINK
86 LIBUSB = -lusb
87 else
88 if ULINK
89 LIBUSB = -lusb
90 else
91 if VSLLINK
92 LIBUSB = -lusb
93 else
94 LIBUSB =
95 endif
96 endif
97 endif
98 endif
99 endif
100
101 libopenocd_la_LIBADD = \
102         $(top_builddir)/src/xsvf/libxsvf.la \
103         $(top_builddir)/src/svf/libsvf.la \
104         $(top_builddir)/src/pld/libpld.la \
105         $(top_builddir)/src/jtag/libjtag.la \
106         $(top_builddir)/src/transport/libtransport.la \
107         $(top_builddir)/src/flash/libflash.la \
108         $(top_builddir)/src/target/libtarget.la \
109         $(top_builddir)/src/server/libserver.la \
110         $(top_builddir)/src/rtos/librtos.la \
111         $(top_builddir)/src/helper/libhelper.la \
112         $(FTDI2232LIB) $(MINGWLDADD) $(LIBUSB)
113
114 STARTUP_TCL_SRCS = \
115         $(srcdir)/helper/startup.tcl \
116         $(srcdir)/jtag/startup.tcl \
117         $(srcdir)/target/startup.tcl \
118         $(srcdir)/flash/startup.tcl \
119         $(srcdir)/server/startup.tcl
120
121 EXTRA_DIST = $(STARTUP_TCL_SRCS)
122
123 BUILT_SOURCES = startup.tcl
124
125 startup.tcl: $(STARTUP_TCL_SRCS)
126         cat $^ > $@
127
128 BIN2C = $(top_builddir)/src/helper/bin2char$(EXEEXT_FOR_BUILD)
129
130 # Convert .tcl to cfile
131 startup_tcl.c: startup.tcl $(BIN2C)
132         $(BIN2C) openocd_startup_tcl < $< > $@ || rm -f $@
133
134 # add startup_tcl.c to make clean list
135 CLEANFILES = startup.tcl startup_tcl.c
136
137 # we do not want generated file in the dist
138 dist-hook:
139         rm -f $(distdir)/startup_tcl.c
140         
141 MAINTAINERCLEANFILES = $(srcdir)/Makefile.in
142
143 # The "quick" target builds executables & reinstalls the executables
144 # Primary use: developer types to quicken the edit/compile/debug
145 # cycle.  by not requiring a "full build and full install". Note the
146 # assumption is: You are only rebuilding the EXE.... and everything
147 # else is/was previously installed.
148 #
149 # use at your own risk
150 quick: all install-binPROGRAMS
151