Browse Source

Update jim helper files to use proper configure script support:

- configure.in: Add AC_TYPE_LONG_LONG_INT to detect 'long long int' support.
- configure.in: Add AC_C_CONST to provide equivalent support as jim.h.
- jim*.c: include config.h when HAVE_CONFIG_H is defined.
- jim*.{h,c}: use HAVE_LONG_LONG_INT definition from config.h.
- jim.h: Remove hard-coded const and HAVE_LONG_LONG definitions.
- jim.h: -DJIM_NO_CONST has been obsoleted; -Dconst is equivalent.


git-svn-id: svn://svn.berlios.de/openocd/trunk@1744 b42882b7-edfa-0310-969c-e2dbd0fdcd60
tags/v0.2.0
zwelch 13 years ago
parent
commit
ce23eb7e3a
4 changed files with 16 additions and 24 deletions
  1. +4
    -0
      configure.in
  2. +3
    -0
      src/helper/jim-eventloop.c
  3. +7
    -3
      src/helper/jim.c
  4. +2
    -21
      src/helper/jim.h

+ 4
- 0
configure.in View File

@@ -816,6 +816,10 @@ AM_PROG_CC_C_O
AC_PROG_RANLIB
AC_PROG_LIBTOOL

dnl configure checks required for Jim files (these are obsolete w/ C99)
AC_C_CONST
AC_TYPE_LONG_LONG_INT

# 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_COMPILE_IFELSE([


+ 3
- 0
src/helper/jim-eventloop.c View File

@@ -44,6 +44,9 @@
* - more complete [after] command with [after info] and other subcommands.
* - Win32 port
*/
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif

#define JIM_EXTENSION
#define __JIM_EVENTLOOP_CORE__


+ 7
- 3
src/helper/jim.c View File

@@ -39,6 +39,10 @@
* are those of the authors and should not be interpreted as representing
* official policies, either expressed or implied, of the Jim Tcl Project.
**/
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif

#define __JIM_CORE__
#define JIM_OPTIMIZATION /* comment to avoid optimizations and reduce size */

@@ -160,7 +164,7 @@ jim_vasprintf_done( void *buf )
* Ignores `locale' stuff. Assumes that the upper and lower case
* alphabets and digits are each contiguous.
*/
#ifdef HAVE_LONG_LONG
#ifdef HAVE_LONG_LONG_INT
#define JimIsAscii(c) (((c) & ~0x7f) == 0)
static jim_wide JimStrtoll(const char *nptr, char **endptr, register int base)
{
@@ -424,7 +428,7 @@ int Jim_StringToWide(const char *str, jim_wide *widePtr, int base)
{
char *endptr;

#ifdef HAVE_LONG_LONG
#ifdef HAVE_LONG_LONG_INT
*widePtr = JimStrtoll(str, &endptr, base);
#else
*widePtr = strtol(str, &endptr, base);
@@ -7662,7 +7666,7 @@ static int ScanOneEntry(Jim_Interp *interp, const char *str, long pos,
/* Try to scan a number with the given base */
if (descr->modifier == 'l')
{
#ifdef HAVE_LONG_LONG
#ifdef HAVE_LONG_LONG_INT
jwvalue = JimStrtoll(tok, &endp, base),
#else
jwvalue = strtol(tok, &endp, base),


+ 2
- 21
src/helper/jim.h View File

@@ -77,25 +77,6 @@ extern "C" {
#include <stdlib.h> /* In order to export the Jim_Free() macro */
#include <stdarg.h> /* In order to get type va_list */

/* -----------------------------------------------------------------------------
* Some /very/ old compiler maybe do not know how to
* handle 'const'. They even do not know, how to ignore
* it. For those compiler it may be better to compile with
* define JIM_NO_CONST activated
* ---------------------------------------------------------------------------*/

#ifdef JIM_NO_CONST
# define const
#endif

/* -----------------------------------------------------------------------------
* System configuration
* For most modern systems, you can leave the default.
* For embedded systems some change may be required.
* ---------------------------------------------------------------------------*/

#define HAVE_LONG_LONG

/* -----------------------------------------------------------------------------
* Compiler specific fixes.
* ---------------------------------------------------------------------------*/
@@ -106,7 +87,7 @@ extern "C" {
#endif /* _MSC_VER */

/* Long Long type and related issues */
#ifdef HAVE_LONG_LONG
#ifdef HAVE_LONG_LONG_INT
# ifdef _MSC_VER /* MSC compiler */
# define jim_wide _int64
# ifndef LLONG_MAX
@@ -138,7 +119,7 @@ extern "C" {
* LIBC specific fixes
* ---------------------------------------------------------------------------*/

#ifdef HAVE_LONG_LONG
#ifdef HAVE_LONG_LONG_INT
# if defined(_MSC_VER) || defined(__MSVCRT__)
# define JIM_WIDE_MODIFIER "I64d"
# else


Loading…
Cancel
Save