Fixed VS2010/2015 build.

- Fix #213
- Commit 10bd3b61 removed dffi code. Reflect that on nmake build.
This commit is contained in:
Fabrizio Fabbri 2016-07-21 04:45:28 -04:00
parent b889b02a2b
commit 8fed1fa97d
5 changed files with 11 additions and 10 deletions

View file

@ -5,10 +5,8 @@ top_srcdir = ..\..\src
srcdir = ..\..\src\c
!if "$(ECL_WIN64)" != ""
ECL_FFI_OBJ=
ECL_FPE_CODE=fpe_none.c
!else
ECL_FFI_OBJ=ffi_x86.obj
ECL_FPE_CODE=fpe_x86.c
!endif
@ -103,7 +101,7 @@ OBJS = main.obj symbol.obj package.obj cons.obj list.obj\
mapfun.obj multival.obj hash.obj format.obj pathname.obj\
structure.obj load.obj unixfsys.obj unixsys.obj \
ffi.obj alloc_2.obj tcp.obj $(THREADS_OBJ) serialize.obj \
$(ECL_FFI_OBJ) $(ECL_UCD_OBJ) $(ECL_SSE_OBJ)
$(ECL_UCD_OBJ) $(ECL_SSE_OBJ)
all: $(DPP) ..\eclmin.lib ..\cinit.obj

View file

@ -417,14 +417,14 @@ typedef unsigned int uint32_t;
# define stack_align(n) (((n) + 03) & ~03)
#endif
/* #undef FILE_CNT */
#undef FILE_CNT
#if 0 == 1
# define FILE_CNT(fp) ((fp)->_IO_read_end - (fp)->_IO_read_ptr)
#endif
#if 0 == 2
# define FILE_CNT(fp) ((fp)->_r)
#endif
#if 3 == 3
#if ( defined(_MSC_VER) && (_MSC_VER < 1900) ) && 3 == 3
# define FILE_CNT(fp) ((fp)->_cnt)
#endif
@ -447,7 +447,9 @@ typedef unsigned int uint32_t;
#endif
#define strcasecmp _stricmp
#if defined(_MSC_VER) && (_MSC_VER < 1900)
#define isnan _isnan
#endif
#define finite _finite
#define sleep _sleep

View file

@ -2920,7 +2920,7 @@ si_process_lambda_list(cl_object org_lambda_list, cl_object context)
if ((nreq+nopt+(!Null(rest))+nkey) >= ECL_CALL_ARGUMENTS_LIMIT)
FEprogram_error_noreturn("LAMBDA: Argument list ist too long, ~S.", 1,
org_lambda_list);
@(return CONS(ecl_make_fixnum(nreq), lists[0]);
@(return CONS(ecl_make_fixnum(nreq), lists[0])
CONS(ecl_make_fixnum(nopt), lists[1])
rest
key_flag

View file

@ -50,10 +50,10 @@
cl_object
init_genrand(ulong seed)
{
int j;
cl_object array = ecl_alloc_simple_vector((MT_N + 1), ecl_aet_b64);
ulong *mt = array->vector.self.b64;
mt[0] = seed;
int j;
for (j=1; j<MT_N; j++)
mt[j] = (6364136223846793005ULL * (mt[j-1] ^ (mt[j-1] >> 62)) + j);
@ -281,6 +281,9 @@ cl_object
ecl_make_random_state(cl_object rs)
{
cl_object z = ecl_alloc_object(t_random);
const char *type
= "(OR RANDOM-STATE FIXNUM (MEMBER T NIL))";
if (rs == ECL_T) {
z->random.value = init_random_state();
return z;
@ -294,8 +297,6 @@ ecl_make_random_state(cl_object rs)
return z;
}
const char *type
= "(OR RANDOM-STATE FIXNUM (MEMBER T NIL))";
FEwrong_type_only_arg(@[make-random-state], rs,
ecl_read_from_cstring(type));
}

View file

@ -28,7 +28,7 @@
#include <setjmp.h> /* setjmp and buffers */
#include <stdio.h> /* FILE */
/* Microsoft VC++ does not have va_copy() */
#if defined(_MSC_VER) || !defined(va_copy)
#if ( defined(_MSC_VER) && (_MSC_VER < 1900) ) || !defined(va_copy)
#define va_copy(dst, src) \
((void) memcpy(&(dst), &(src), sizeof(va_list)))
#endif