MinGW build repairs and improvements
This commit is contained in:
parent
5fff8e2056
commit
f7d4f7b234
|
@ -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.
|
||||||
|
|
|
@ -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)
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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]
|
||||||
|
|
|
@ -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)
|
||||||
|
|
|
@ -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)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user