diff --git a/boehm-gc/ChangeLog b/boehm-gc/ChangeLog index 467e28ca7fd..30f70a9f6fc 100644 --- a/boehm-gc/ChangeLog +++ b/boehm-gc/ChangeLog @@ -1,3 +1,10 @@ +2001-05-24 Bryce McKinlay + + * Makefile.am: Override gctest_OBJECTS so tests/test.c can be built. + (libgcjgc_la_SOURCES): Remove typo. + * tests/test.c: Fix struct names and includes for GC_GCJ_SUPPORT case. + * Makefile.in: Rebuilt. + 2001-05-21 Bryce McKinlay Imported version version 6.0alpha7. diff --git a/boehm-gc/Makefile.am b/boehm-gc/Makefile.am index 70808973f20..4e8deeeb2ae 100644 --- a/boehm-gc/Makefile.am +++ b/boehm-gc/Makefile.am @@ -29,7 +29,7 @@ libgcjgc_la_SOURCES = allchblk.c alloc.c blacklst.c checksums.c dbg_mlc.c \ dyn_load.c finalize.c gc_dlopen.c gcj_mlc.c headers.c irix_threads.c \ linux_threads.c malloc.c mallocx.c mark.c mark_rts.c misc.c new_hblk.c \ obj_map.c os_dep.c pcr_interface.c ptr_chck.c real_malloc.c reclaim.c \ -solaris_pthreads.c solaris_threads.c specific.c stubborn.c typd_mlc.c` +solaris_pthreads.c solaris_threads.c specific.c stubborn.c typd_mlc.c # Include THREADLIBS here to ensure that the correct versions of # linuxthread semaphore functions get linked: @@ -46,7 +46,11 @@ AM_CXXFLAGS = @BOEHM_GC_CFLAGS@ AM_CFLAGS = @BOEHM_GC_CFLAGS@ check_PROGRAMS = gctest -gctest_SOURCES = test.c +# The following hack produces a warning from automake, but we need it in order +# to build a file from a subdirectory. FIXME. +test.o: tests/test.c + $(COMPILE) -c $< +gctest_OBJECTS = test.o gctest_LDADD = ./libgcjgc.la $(THREADLIBS) $(EXTRA_TEST_LIBS) gctest_LDFLAGS = -shared-libgcc TESTS_ENVIRONMENT = LD_LIBRARY_PATH=../../$(MULTIBUILDTOP)gcc diff --git a/boehm-gc/Makefile.in b/boehm-gc/Makefile.in index cd9c7de8c4f..87111d34828 100644 --- a/boehm-gc/Makefile.in +++ b/boehm-gc/Makefile.in @@ -112,7 +112,7 @@ libgcjgc_la_SOURCES = allchblk.c alloc.c blacklst.c checksums.c dbg_mlc.c \ dyn_load.c finalize.c gc_dlopen.c gcj_mlc.c headers.c irix_threads.c \ linux_threads.c malloc.c mallocx.c mark.c mark_rts.c misc.c new_hblk.c \ obj_map.c os_dep.c pcr_interface.c ptr_chck.c real_malloc.c reclaim.c \ -solaris_pthreads.c solaris_threads.c specific.c stubborn.c typd_mlc.c` +solaris_pthreads.c solaris_threads.c specific.c stubborn.c typd_mlc.c # Include THREADLIBS here to ensure that the correct versions of @@ -132,7 +132,8 @@ AM_CXXFLAGS = @BOEHM_GC_CFLAGS@ AM_CFLAGS = @BOEHM_GC_CFLAGS@ check_PROGRAMS = gctest -gctest_SOURCES = test.c + +gctest_OBJECTS = test.o gctest_LDADD = ./libgcjgc.la $(THREADLIBS) $(EXTRA_TEST_LIBS) gctest_LDFLAGS = -shared-libgcc TESTS_ENVIRONMENT = LD_LIBRARY_PATH=../../$(MULTIBUILDTOP)gcc @@ -206,23 +207,22 @@ dbg_mlc.lo dyn_load.lo finalize.lo gc_dlopen.lo gcj_mlc.lo headers.lo \ irix_threads.lo linux_threads.lo malloc.lo mallocx.lo mark.lo \ mark_rts.lo misc.lo new_hblk.lo obj_map.lo os_dep.lo pcr_interface.lo \ ptr_chck.lo real_malloc.lo reclaim.lo solaris_pthreads.lo \ -solaris_threads.lo specific.lo stubborn.lo +solaris_threads.lo specific.lo stubborn.lo typd_mlc.lo check_PROGRAMS = gctest$(EXEEXT) -gctest_OBJECTS = test.$(OBJEXT) gctest_DEPENDENCIES = ./libgcjgc.la CFLAGS = @CFLAGS@ COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) -DIST_COMMON = README ChangeLog Makefile.am Makefile.in acinclude.m4 \ -aclocal.m4 configure configure.in +DIST_COMMON = ChangeLog Makefile.am Makefile.in acinclude.m4 aclocal.m4 \ +configure configure.in DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) TAR = gtar GZIP_ENV = --best -SOURCES = $(libgcjgc_la_SOURCES) $(EXTRA_libgcjgc_la_SOURCES) $(gctest_SOURCES) -OBJECTS = $(libgcjgc_la_OBJECTS) $(gctest_OBJECTS) +SOURCES = $(libgcjgc_la_SOURCES) $(EXTRA_libgcjgc_la_SOURCES) +OBJECTS = $(libgcjgc_la_OBJECTS) all: all-redirect .SUFFIXES: @@ -511,6 +511,9 @@ install-am install uninstall-am uninstall all-redirect all-am all \ installdirs mostlyclean-generic distclean-generic clean-generic \ maintainer-clean-generic clean mostlyclean distclean maintainer-clean + +test.o: tests/test.c + $(COMPILE) -c $< $(all_objs) : include/private/gcconfig.h include/private/gc_priv.h \ include/private/gc_hdrs.h include/gc.h include/gc_gcj.h include/gc_mark.h diff --git a/boehm-gc/tests/test.c b/boehm-gc/tests/test.c index de58a6bd5f2..c7b537cba6c 100644 --- a/boehm-gc/tests/test.c +++ b/boehm-gc/tests/test.c @@ -238,9 +238,9 @@ sexpr y; #ifdef GC_GCJ_SUPPORT -#include "gc_mark.h" -#include "dbg_mlc.h" -#include "include/gc_gcj.h" +#include "private/dbg_mlc.h" +#include "private/gc_pmark.h" +#include "gc_gcj.h" /* The following struct emulates the vtable in gcj. */ /* This assumes the default value of MARK_DESCR_OFFSET. */ @@ -253,12 +253,12 @@ struct fake_vtable gcj_class_struct1 = { 0, sizeof(struct SEXPR) + sizeof(struct fake_vtable *) }; /* length based descriptor. */ struct fake_vtable gcj_class_struct2 = - { 0, (3l << (CPP_WORDSZ - 3)) | DS_BITMAP}; + { 0, (3l << (CPP_WORDSZ - 3)) | GC_DS_BITMAP}; /* Bitmap based descriptor. */ struct GC_ms_entry * fake_gcj_mark_proc(word * addr, - struct ms_entry *mark_stack_ptr, - struct ms_entry *mark_stack_limit, + struct GC_ms_entry *mark_stack_ptr, + struct GC_ms_entry *mark_stack_limit, word env ) { sexpr x; @@ -273,7 +273,7 @@ struct GC_ms_entry * fake_gcj_mark_proc(word * addr, PUSH_CONTENTS((ptr_t)(x -> sexpr_cdr), mark_stack_ptr, mark_stack_limit, &(x -> sexpr_cdr), exit1); } - if ((ptr_t)(x -> sexpr_car) > GC_least_plausible_heap_addr) { + if ((ptr_t)(x -> sexpr_car) > (ptr_t) GC_least_plausible_heap_addr) { PUSH_CONTENTS((ptr_t)(x -> sexpr_car), mark_stack_ptr, mark_stack_limit, &(x -> sexpr_car), exit2); }