summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2008-03-11 21:32:03 +0000
committeroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2008-03-11 21:32:03 +0000
commit0313c595555ae1c391766d1594735042ccd20443 (patch)
treec540c8c4ab3fdd31417f34197206bbb0787b92de
parentb9162dcc8e68413966c8493556e471fbdcb88a1f (diff)
downloadopenocd_libswd-0313c595555ae1c391766d1594735042ccd20443.tar.gz
openocd_libswd-0313c595555ae1c391766d1594735042ccd20443.tar.bz2
openocd_libswd-0313c595555ae1c391766d1594735042ccd20443.tar.xz
openocd_libswd-0313c595555ae1c391766d1594735042ccd20443.zip
reduce compare noise. If someone should be crazy enough to try to run OpenOCD under eCos, then they'v got some hooks to point them in the general direction.
git-svn-id: svn://svn.berlios.de/openocd/trunk@499 b42882b7-edfa-0310-969c-e2dbd0fdcd60
-rw-r--r--configure.in12
-rw-r--r--src/Makefile.am10
-rw-r--r--src/helper/Makefile.am9
-rw-r--r--src/helper/replacements.h14
-rw-r--r--src/jtag/Makefile.am8
5 files changed, 48 insertions, 5 deletions
diff --git a/configure.in b/configure.in
index 00bdbcdc..92107fa7 100644
--- a/configure.in
+++ b/configure.in
@@ -55,6 +55,10 @@ case "${host_cpu}" in
AS_HELP_STRING([--enable-ep93xx], [Enable building support for EP93xx based SBCs]),
[build_ep93xx=$enableval], [build_ep93xx=no])
+AC_ARG_ENABLE(ecosboard,
+ AS_HELP_STRING([--enable-ecosboard], [Enable building support for eCosBoard based JTAG debugger]),
+ [build_ecosboard=$enableval], [build_ecosboard=no])
+
AC_ARG_ENABLE(at91rm9200,
AS_HELP_STRING([--enable-at91rm9200], [Enable building support for AT91RM9200 based SBCs]),
[build_at91rm9200=$enableval], [build_at91rm9200=no])
@@ -142,6 +146,13 @@ else
AC_DEFINE(BUILD_EP93XX, 0, [0 if you don't want ep93xx.])
fi
+if test $build_ecosboard = yes; then
+ build_bitbang=yes
+ AC_DEFINE(BUILD_ECOSBOARD, 1, [1 if you want eCosBoard.])
+else
+ AC_DEFINE(BUILD_ECOSBOARD, 0, [0 if you don't want eCosBoard.])
+fi
+
if test $build_at91rm9200 = yes; then
build_bitbang=yes
AC_DEFINE(BUILD_AT91RM9200, 1, [1 if you want at91rm9200.])
@@ -229,6 +240,7 @@ AM_INIT_AUTOMAKE(openocd, 1.0)
AM_CONDITIONAL(PARPORT, test $build_parport = yes)
AM_CONDITIONAL(GIVEIO, test $parport_use_giveio = yes)
AM_CONDITIONAL(EP93XX, test $build_ep93xx = yes)
+AM_CONDITIONAL(ECOSBOARD, test $build_ecosboard = yes)
AM_CONDITIONAL(AT91RM9200, test $build_at91rm9200 = yes)
AM_CONDITIONAL(BITBANG, test $build_bitbang = yes)
AM_CONDITIONAL(FT2232_LIBFTDI, test $build_ft2232_libftdi = yes)
diff --git a/src/Makefile.am b/src/Makefile.am
index aa315506..aa7b19f2 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1,5 +1,13 @@
bin_PROGRAMS = openocd
-openocd_SOURCES = openocd.c
+
+if ECOSBOARD
+MAINFILE = ecosboard.c
+else
+MAINFILE = openocd.c
+endif
+
+
+openocd_SOURCES = $(MAINFILE)
# set the include path found by configure
INCLUDES = -I$(top_srcdir)/src/helper \
diff --git a/src/helper/Makefile.am b/src/helper/Makefile.am
index 91fe01b6..e518bc7f 100644
--- a/src/helper/Makefile.am
+++ b/src/helper/Makefile.am
@@ -2,7 +2,14 @@ INCLUDES = $(all_includes)
METASOURCES = AUTO
AM_CPPFLAGS = -DPKGDATADIR=\"$(pkgdatadir)\" -DPKGLIBDIR=\"$(pkglibdir)\" @CPPFLAGS@
noinst_LIBRARIES = libhelper.a
-libhelper_a_SOURCES = binarybuffer.c configuration.c options.c log.c interpreter.c command.c time_support.c \
+
+if ECOSBOARD
+CONFIGFILES =
+else
+CONFIGFILES = options.c
+endif
+
+libhelper_a_SOURCES = binarybuffer.c $(CONFIGFILES) configuration.c log.c interpreter.c command.c time_support.c \
replacements.c fileio.c
noinst_HEADERS = binarybuffer.h configuration.h types.h log.h command.h \
interpreter.h time_support.h replacements.h fileio.h
diff --git a/src/helper/replacements.h b/src/helper/replacements.h
index fcfa8bc8..79a7a1bd 100644
--- a/src/helper/replacements.h
+++ b/src/helper/replacements.h
@@ -26,6 +26,12 @@
#include "types.h"
+#if BUILD_ECOSBOARD
+#include <pkgconf/system.h>
+#include <stdlib.h>
+#include <sys/select.h>
+#endif
+
/* include necessary headers for socket functionality */
#ifdef _WIN32
#include <winsock2.h>
@@ -112,15 +118,19 @@ extern size_t strnlen(const char *s, size_t maxlen);
#endif /* HAVE_STRNLEN */
#ifndef HAVE_USLEEP
+#ifdef _WIN32
static __inline unsigned usleep(unsigned int usecs)
{
-#ifdef _WIN32
Sleep((usecs/1000));
return 0;
+}
#else
+#if BUILD_ECOSBOARD
+void usleep(int us);
+#else
#error no usleep defined for your platform
#endif
-}
+#endif
#endif /* HAVE_USLEEP */
/* Windows specific */
diff --git a/src/jtag/Makefile.am b/src/jtag/Makefile.am
index 04e50ffd..4a0f5d27 100644
--- a/src/jtag/Makefile.am
+++ b/src/jtag/Makefile.am
@@ -47,6 +47,12 @@ else
EP93XXFILES =
endif
+if ECOSBOARD
+ECOSBOARDFILES = eCosBoard.c
+else
+ECOSBOARDFILES =
+endif
+
if AT91RM9200
AT91RM9200FILES = at91rm9200.c
else
@@ -82,6 +88,6 @@ USBPROGFILES =
endif
libjtag_a_SOURCES = jtag.c $(BITBANGFILES) $(PARPORTFILES) $(FT2232FILES) $(AMTJTAGACCELFILES) $(EP93XXFILES) \
- $(AT91RM9200FILES) $(GW16012FILES) $(BITQFILES) $(PRESTOFILES) $(USBPROGFILES)
+ $(AT91RM9200FILES) $(GW16012FILES) $(BITQFILES) $(PRESTOFILES) $(USBPROGFILES) $(ECOSBOARDFILES)
noinst_HEADERS = bitbang.h jtag.h