build: add autobuild jimtcl to configure scripts

Rather than having to configure/build jimtcl openocd
will do this as part of its own build.

To use an external jimtcl lib specify disable-internal-jimtcl
to the configure step.

Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
__archive__
Spencer Oliver 2010-11-17 10:26:21 +00:00
parent 838cd58e24
commit d80fca527a
5 changed files with 34 additions and 3 deletions

View File

@ -9,7 +9,13 @@ nobase_dist_pkgdata_DATA = \
contrib/libdcc/README \ contrib/libdcc/README \
contrib/openocd.udev contrib/openocd.udev
SUBDIRS = src doc if INTERNAL_JIMTCL
SUBDIRS = jimtcl
else
SUBDIRS =
endif
SUBDIRS += src doc
EXTRA_DIST = \ EXTRA_DIST = \
Doxyfile.in \ Doxyfile.in \

View File

@ -3,3 +3,8 @@
AM_CPPFLAGS = -I$(top_srcdir)/src \ AM_CPPFLAGS = -I$(top_srcdir)/src \
-I$(top_builddir)/src \ -I$(top_builddir)/src \
-DPKGDATADIR=\"$(pkgdatadir)\" -DPKGDATADIR=\"$(pkgdatadir)\"
if INTERNAL_JIMTCL
AM_CPPFLAGS += -I$(top_srcdir)/jimtcl \
-I$(top_builddir)/jimtcl
endif

View File

@ -2,6 +2,7 @@ AC_PREREQ(2.60)
AC_INIT([openocd], [0.5.0-dev], AC_INIT([openocd], [0.5.0-dev],
[OpenOCD Mailing List <openocd-development@lists.berlios.de>]) [OpenOCD Mailing List <openocd-development@lists.berlios.de>])
AC_CONFIG_SRCDIR([src/openocd.c]) AC_CONFIG_SRCDIR([src/openocd.c])
AC_CONFIG_AUX_DIR([.])
AM_INIT_AUTOMAKE([-Wall -Wno-portability dist-bzip2 dist-zip]) AM_INIT_AUTOMAKE([-Wall -Wno-portability dist-bzip2 dist-zip])
AM_MAINTAINER_MODE AM_MAINTAINER_MODE
@ -482,6 +483,9 @@ AC_ARG_ENABLE(minidriver_dummy,
AS_HELP_STRING([--enable-minidriver-dummy], [Enable the dummy minidriver.]), AS_HELP_STRING([--enable-minidriver-dummy], [Enable the dummy minidriver.]),
[build_minidriver_dummy=$enableval], [build_minidriver_dummy=no]) [build_minidriver_dummy=$enableval], [build_minidriver_dummy=no])
AC_ARG_ENABLE(internal-jimtcl,
AS_HELP_STRING([--enable-internal-jimtcl], [Enable internal jimtcl]),
[use_internal_jimtcl=$enableval], [use_internal_jimtcl=yes])
build_minidriver=no build_minidriver=no
AC_MSG_CHECKING([whether to enable ZY1000 minidriver]) AC_MSG_CHECKING([whether to enable ZY1000 minidriver])
@ -757,6 +761,14 @@ else
AC_DEFINE(BUILD_BUSPIRATE, 0, [0 if you don't want the Buspirate JTAG driver.]) AC_DEFINE(BUILD_BUSPIRATE, 0, [0 if you don't want the Buspirate JTAG driver.])
fi fi
if test "$use_internal_jimtcl" = yes; then
if test -f "$srcdir/jimtcl/configure.ac"; then
AC_CONFIG_SUBDIRS([jimtcl])
else
AC_MSG_ERROR([jimtcl not found, run git submodule init and git submodule update.])
fi
fi
#-- Deal with MingW/Cygwin FTD2XX issues #-- Deal with MingW/Cygwin FTD2XX issues
if test $is_win32 = yes; then if test $is_win32 = yes; then
@ -1062,6 +1074,8 @@ AM_CONDITIONAL(BITQ, test $build_bitq = yes)
AM_CONDITIONAL(MINIDRIVER, test $build_minidriver = yes) AM_CONDITIONAL(MINIDRIVER, test $build_minidriver = yes)
AM_CONDITIONAL(MINIDRIVER_DUMMY, test $build_minidriver_dummy = yes) AM_CONDITIONAL(MINIDRIVER_DUMMY, test $build_minidriver_dummy = yes)
AM_CONDITIONAL(INTERNAL_JIMTCL, test $use_internal_jimtcl = yes)
# Look for environ alternatives. Possibility #1: is environ in unistd.h or stdlib.h? # Look for environ alternatives. Possibility #1: is environ in unistd.h or stdlib.h?
AC_MSG_CHECKING([for environ in unistd.h and stdlib.h]) AC_MSG_CHECKING([for environ in unistd.h and stdlib.h])
AC_COMPILE_IFELSE([ AC_COMPILE_IFELSE([

2
jimtcl

@ -1 +1 @@
Subproject commit fbbc8e0b402adb4b0c8d3976015fe4a82c94560f Subproject commit 9c8bcfe4e6f8ec12552edae7b2afa0a9a21d8861

View File

@ -20,7 +20,13 @@ MAINFILE = main.c
endif endif
openocd_SOURCES = $(MAINFILE) openocd_SOURCES = $(MAINFILE)
openocd_LDADD = libopenocd.la -ljim openocd_LDADD = libopenocd.la
if INTERNAL_JIMTCL
openocd_LDADD += $(top_builddir)/jimtcl/libjim.a
else
openocd_LDADD += -ljim
endif
libopenocd_la_SOURCES = \ libopenocd_la_SOURCES = \
hello.c \ hello.c \