-SUBDIRS = helper jtag xsvf svf target server flash pld
+noinst_LTLIBRARIES += %D%/libopenocd.la
+bin_PROGRAMS += %D%/openocd
-lib_LTLIBRARIES = libopenocd.la
-bin_PROGRAMS = openocd
+%C%_openocd_SOURCES = \
+ %D%/main.c
-if ECOSBOARD
-MAINFILE = ecosboard.c
-else
-MAINFILE = main.c
-endif
+%C%_libopenocd_la_SOURCES = \
+ %D%/hello.c %D%/hello.h \
+ %D%/openocd.c %D%/openocd.h
-openocd_SOURCES = $(MAINFILE)
-openocd_LDADD = libopenocd.la
+%C%_openocd_LDADD = %D%/libopenocd.la
-libopenocd_la_SOURCES = openocd.c
+%C%_openocd_LDADD += $(MINGWLDADD)
-# set the include path found by configure
-AM_CPPFLAGS = \
- -I$(top_srcdir)/src \
- -I$(top_srcdir)/src/helper \
- -I$(top_srcdir)/src/jtag \
- -I$(top_srcdir)/src/target \
- -I$(top_srcdir)/src/xsvf \
- -I$(top_srcdir)/src/svf \
- -I$(top_srcdir)/src/server \
- -I$(top_srcdir)/src/flash \
- -I$(top_srcdir)/src/pld
+if INTERNAL_JIMTCL
+%C%_openocd_LDADD += $(top_builddir)/jimtcl/libjim.a
+else
+%C%_openocd_LDADD += -ljim
+endif
-libopenocd_la_CPPFLAGS = -DPKGBLDDATE=\"`date +%F-%R`\"
+%C%_libopenocd_la_CPPFLAGS =
# banner output includes RELSTR appended to $VERSION from the configure script
# guess-rev.sh returns either a repository version ID or "-snapshot"
if RELEASE
-libopenocd_la_CPPFLAGS += -DRELSTR=\"\"
+%C%_libopenocd_la_CPPFLAGS += -DRELSTR=\"\"
+%C%_libopenocd_la_CPPFLAGS += -DGITVERSION=\"\"
else
-libopenocd_la_CPPFLAGS += -DRELSTR=\"`$(top_srcdir)/guess-rev.sh $(top_srcdir)`\"
+%C%_libopenocd_la_CPPFLAGS += -DRELSTR=\"`$(top_srcdir)/guess-rev.sh $(top_srcdir)`\"
+%C%_libopenocd_la_CPPFLAGS += -DGITVERSION=\"`cd $(top_srcdir) && git describe`\"
+%C%_libopenocd_la_CPPFLAGS += -DPKGBLDDATE=\"`date +%F-%R`\"
endif
# add default CPPFLAGS
-libopenocd_la_CPPFLAGS += $(AM_CPPFLAGS) $(CPPFLAGS)
+%C%_libopenocd_la_CPPFLAGS += $(AM_CPPFLAGS) $(CPPFLAGS)
# the library search path.
-libopenocd_la_LDFLAGS = $(all_libraries)
+%C%_libopenocd_la_LDFLAGS = $(all_libraries)
if IS_MINGW
-MINGWLDADD = -lwsock32
+MINGWLDADD = -lws2_32
else
MINGWLDADD =
endif
-if FT2232_LIBFTDI
-FTDI2232LIB = -lftdi -lusb
-else
-if PRESTO_LIBFTDI
-FTDI2232LIB = -lftdi -lusb
-else
-FTDI2232LIB =
-endif
-endif
-
-if USBPROG
-LIBUSB = -lusb
-else
-if JLINK
-LIBUSB = -lusb
-else
-if RLINK
-LIBUSB = -lusb
-else
-if VSLLINK
-LIBUSB = -lusb
-else
-LIBUSB =
-endif
-endif
-endif
-endif
-
-libopenocd_la_LIBADD = \
- $(top_builddir)/src/xsvf/libxsvf.la \
- $(top_builddir)/src/svf/libsvf.la \
- $(top_builddir)/src/pld/libpld.la \
- $(top_builddir)/src/jtag/libjtag.la \
- $(top_builddir)/src/flash/libflash.la \
- $(top_builddir)/src/target/libtarget.la \
- $(top_builddir)/src/server/libserver.la \
- $(top_builddir)/src/helper/libhelper.la \
- $(FTDI2232LIB) $(MINGWLDADD) $(LIBUSB)
-
-if HTTPD
-libopenocd_la_LIBADD += -lmicrohttpd
-endif
-
-MAINTAINERCLEANFILES = $(srcdir)/Makefile.in
-
-# The "quick" target builds executables & reinstalls the executables
-# Primary use: developer types to quicken the edit/compile/debug
-# cycle. by not requiring a "full build and full install". Note the
-# assumption is: You are only rebuilding the EXE.... and everything
-# else is/was previously installed.
-#
-# use at your own risk
-quick: all install-binPROGRAMS
-
+%C%_libopenocd_la_LIBADD = \
+ %D%/xsvf/libxsvf.la \
+ %D%/svf/libsvf.la \
+ %D%/pld/libpld.la \
+ %D%/jtag/libjtag.la \
+ %D%/transport/libtransport.la \
+ %D%/flash/libflash.la \
+ %D%/target/libtarget.la \
+ %D%/server/libserver.la \
+ %D%/rtos/librtos.la \
+ %D%/helper/libhelper.la
+
+BIN2C = $(srcdir)/%D%/helper/bin2char.sh
+
+STARTUP_TCL_SRCS =
+EXTRA_DIST += $(STARTUP_TCL_SRCS)
+
+BUILT_SOURCES += %D%/startup_tcl.inc
+
+# Convert .tcl to c-array
+%D%/startup_tcl.inc: $(STARTUP_TCL_SRCS)
+ cat $^ | $(BIN2C) > $@ || { rm -f $@; false; }
+
+# add generated files to make clean list
+CLEANFILES += %D%/startup_tcl.inc
+
+# we do not want generated file in the dist
+#dist-hook:
+# rm -f $(distdir)/%D%/startup_tcl.inc
+
+include %D%/helper/Makefile.am
+include %D%/jtag/Makefile.am
+include %D%/transport/Makefile.am
+include %D%/xsvf/Makefile.am
+include %D%/svf/Makefile.am
+include %D%/target/Makefile.am
+include %D%/rtos/Makefile.am
+include %D%/server/Makefile.am
+include %D%/flash/Makefile.am
+include %D%/pld/Makefile.am