From 5a4391dd90066e5485773d7832a65c6a59a8aa8c Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Thu, 22 Dec 2016 18:39:26 -0700 Subject: [PATCH] don't share "gmp.c" compilation between CGC and 3m Using `--disable-jit` causes futures to be disabled, and places are always disabled for CGC; in that case thread-local variables are not needed. Meanwhile, the 3m build still has places, so a "gmp.c" compiled without thread-local support is broken. --- racket/src/racket/gc2/Makefile.in | 8 ++++++-- racket/src/racket/src/Makefile.in | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/racket/src/racket/gc2/Makefile.in b/racket/src/racket/gc2/Makefile.in index 74f84046a2..41b66928aa 100644 --- a/racket/src/racket/gc2/Makefile.in +++ b/racket/src/racket/gc2/Makefile.in @@ -66,6 +66,7 @@ OBJS = salloc.@LTO@ \ file.@LTO@ \ fun.@LTO@ \ future.@LTO@ \ + gmp.@LTO@ \ hash.@LTO@ \ jit.@LTO@ \ jitalloc.@LTO@ \ @@ -346,6 +347,9 @@ fun.@LTO@: $(XSRCDIR)/fun.c $(CC) $(ALL_CFLAGS) -c $(XSRCDIR)/fun.c -o fun.@LTO@ future.@LTO@: $(XSRCDIR)/future.c $(CC) $(ALL_CFLAGS) -c $(XSRCDIR)/future.c -o future.@LTO@ +gmp.@LTO@: $(srcdir)/../src/gmp/gmp.c $(srcdir)/../src/gmp/gmplonglong.h \ + $(srcdir)/../include/schthread.h $(srcdir)/../sconfig.h + $(CC) $(ALL_CFLAGS) -DMZ_PRECISE_GC -c $(srcdir)/../src/gmp/gmp.c -o gmp.@LTO@ hash.@LTO@: $(XSRCDIR)/hash.c $(CC) $(ALL_CFLAGS) -c $(XSRCDIR)/hash.c -o hash.@LTO@ jit.@LTO@: $(XSRCDIR)/jit.c @@ -497,8 +501,8 @@ FOREIGN_NOT_USED_OBJSLIB = EXTRA_GMP_DEP_FILE = ../src/@EXTRA_GMP_OBJ@ EXTRA_GMP = @EXTRA_GMP_DEP@ -EXTRA_OBJS_T = ../src/gmp.@LTO@ $(EXTRA_GMP) ../src/unwind.@LTO@ $(@FOREIGN_IF_USED@_LIB) -EXTRA_OBJS_L = ../src/gmp.@LTO@ $(EXTRA_GMP) ../src/unwind.@LTO@ $(@FOREIGN_IF_USED@_OBJSLIB) +EXTRA_OBJS_T = $(EXTRA_GMP) ../src/unwind.@LTO@ $(@FOREIGN_IF_USED@_LIB) +EXTRA_OBJS_L = $(EXTRA_GMP) ../src/unwind.@LTO@ $(@FOREIGN_IF_USED@_OBJSLIB) ../libracket3m.@LIBSFX@: $(OBJS) $(EXTRA_OBJS_T) gc2.@LTO@ $(NICEAR) $(AR) $(ARFLAGS) ../libracket3m.@LIBSFX@ $(OBJS) $(EXTRA_OBJS_L) gc2.@LTO@ diff --git a/racket/src/racket/src/Makefile.in b/racket/src/racket/src/Makefile.in index 6be8335605..3687fb23cf 100644 --- a/racket/src/racket/src/Makefile.in +++ b/racket/src/racket/src/Makefile.in @@ -142,7 +142,7 @@ mzheaders: $(srcdir)/schemex.h $(srcdir)/schemexm.h $(srcdir)/schemex.inc $(srcd mzobjects: $(OBJS) # Linked into 3m: -plain-objs: gmp.@LTO@ unwind.@LTO@ +plain-objs: unwind.@LTO@ $(srcdir)/schemex.h : $(srcdir)/schemef.h $(srcdir)/makex.rkt racket $(srcdir)/makex.rkt < $(srcdir)/schemef.h > $(srcdir)/schemex.h