MinGW build repairs and improvements

This commit is contained in:
Matthew Flatt 2015-03-28 07:12:17 -06:00
parent 5fff8e2056
commit f7d4f7b234
6 changed files with 11 additions and 7 deletions

View File

@ -881,6 +881,7 @@
setjmp longjmp _longjmp scheme_longjmp_setjmp scheme_mz_longjmp scheme_jit_longjmp setjmp longjmp _longjmp scheme_longjmp_setjmp scheme_mz_longjmp scheme_jit_longjmp
scheme_jit_setjmp_prepare scheme_jit_setjmp_prepare
scheme_get_thread_local_variables pthread_getspecific scheme_get_thread_local_variables pthread_getspecific
__builtin_frame_address
;; The following are functions, but they don't trigger GC, and ;; The following are functions, but they don't trigger GC, and
;; they either take one argument or no pointer arguments. ;; they either take one argument or no pointer arguments.

View File

@ -153,7 +153,7 @@ no-cgc-needed:
$(MAKE) @FOREIGNTARGET@ $(MAKE) @FOREIGNTARGET@
$(MAKE) main.@LTO@ $(MAKE) main.@LTO@
$(MAKE) mingw-other $(MAKE) mingw-other
cd dynsrc; $(MAKE) ../starter cd dynsrc; $(MAKE) ../starter@EXE_SUFFIX@
FOREIGN_USED_LIB = $(FOREIGN_OBJ) $(FOREIGN_LIB) FOREIGN_USED_LIB = $(FOREIGN_OBJ) $(FOREIGN_LIB)
FOREIGN_USED_OBJSLIB = $(FOREIGN_OBJSLIB) FOREIGN_USED_OBJSLIB = $(FOREIGN_OBJSLIB)

View File

@ -52,10 +52,10 @@ MZDYNDEP = ../mzdyn.o $(srcdir)/../include/ext.exp $(srcdir)/../include/racket.e
dynexmpl.o: $(srcdir)/dynexmpl.c $(HEADERS) dynexmpl.o: $(srcdir)/dynexmpl.c $(HEADERS)
$(PLAIN_CC) $(ALL_CFLAGS) -c $(srcdir)/dynexmpl.c -o dynexmpl.o $(PLAIN_CC) $(ALL_CFLAGS) -c $(srcdir)/dynexmpl.c -o dynexmpl.o
../starter@NOT_MINGW@: $(srcdir)/ustart.c ../starter@NOT_MINGW@@EXE_SUFFIX@: $(srcdir)/ustart.c
$(PLAIN_CC) $(ALL_CFLAGS) -o ../starter $(srcdir)/ustart.c $(PLAIN_CC) $(ALL_CFLAGS) -o ../starter $(srcdir)/ustart.c
../starter@MINGW@: $(srcdir)/start.c ../mrstarter@EXE_SUFFIX@ sres.o ../starter@MINGW@@EXE_SUFFIX@: $(srcdir)/start.c ../mrstarter@EXE_SUFFIX@ sres.o
$(PLAIN_CC) $(ALL_CFLAGS) -o ../starter $(srcdir)/start.c sres.o $(PLAIN_CC) $(ALL_CFLAGS) -o ../starter $(srcdir)/start.c sres.o
../mrstarter@EXE_SUFFIX@: sres.o ../mrstarter@EXE_SUFFIX@: sres.o
$(PLAIN_CC) $(ALL_CFLAGS) -mwindows -DMRSTART -o ../mrstarter $(srcdir)/start.c sres.o $(PLAIN_CC) $(ALL_CFLAGS) -mwindows -DMRSTART -o ../mrstarter $(srcdir)/start.c sres.o

View File

@ -36,7 +36,9 @@
#include "sgc.h" #include "sgc.h"
#ifdef _WIN64 #ifdef _WIN64
# define SIZEOF_LONG 8 # ifndef SIXTY_FOUR_BIT_INTEGERS
# define SIXTY_FOUR_BIT_INTEGERS
# endif
# ifdef _MSC_VER # ifdef _MSC_VER
# define inline _inline # define inline _inline
# endif # endif
@ -1331,7 +1333,7 @@ static int is_sector_segment(void *p)
intptr_t pageindex = SECTOR_LOOKUP_PAGEPOS(s); intptr_t pageindex = SECTOR_LOOKUP_PAGEPOS(s);
DECL_SECTOR_PAGETABLES; DECL_SECTOR_PAGETABLES;
FIND_SECTOR_PAGETABLES(p); FIND_SECTOR_PAGETABLES(s);
if (!sector_pagetables) return 0; if (!sector_pagetables) return 0;
return (sector_pagetables[pagetableindex] return (sector_pagetables[pagetableindex]

View File

@ -8,7 +8,8 @@ extern "C" {
#define GC_PTR void* #define GC_PTR void*
#if defined(WIN32) || defined(__CYGWIN32__) #if defined(WIN32) || defined(__CYGWIN32__)
# if defined(SGC_EXPORTS) || (defined(__CYGWIN32__) && !defined(MZ_USES_SHARED_LIB)) # if (defined(SGC_EXPORTS) || (defined(__CYGWIN32__) && !defined(MZ_USES_SHARED_LIB)) \
|| defined(__MINGW32_DELAY_LOAD__))
# define SGC_EXTERN __declspec(dllexport) # define SGC_EXTERN __declspec(dllexport)
# else # else
# define SGC_EXTERN __declspec(dllimport) # define SGC_EXTERN __declspec(dllimport)

View File

@ -2210,7 +2210,7 @@ mpn_set_str (mp_ptr rp, const unsigned char *str, size_t str_len, int base)
res_digit = inp_digit >> (bits_per_indigit - next_bitpos); res_digit = inp_digit >> (bits_per_indigit - next_bitpos);
} }
if (!((long)s & 0xFF)) SCHEME_BIGNUM_USE_FUEL(1); if (!((intptr_t)s & 0xFF)) SCHEME_BIGNUM_USE_FUEL(1);
} }
if (res_digit != 0) if (res_digit != 0)