neater. Also remove some dodgy CFLAGS+= lines.
I had to change the expected output of pth_once.c, because the change has
altered the order of the (non-deterministic) output.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2825
vgpreload_addrcheck_so_SOURCES =
vgpreload_addrcheck_so_LDADD = \
- $(top_builddir)/coregrind/vg_replace_malloc.o \
../memcheck/mac_replace_strmem.o
vgpreload_addrcheck_so_DEPENDENCIES = \
- $(top_builddir)/coregrind/vg_replace_malloc.o \
+ $(top_builddir)/coregrind/lib_replace_malloc.a \
../memcheck/mac_replace_strmem.o
-vgpreload_addrcheck_so_LDFLAGS = -shared -Wl,-z,interpose,-z,initfirst
+vgpreload_addrcheck_so_LDFLAGS = -shared -Wl,-z,interpose,-z,initfirst \
+ -Wl,--whole-archive \
+ $(top_builddir)/coregrind/lib_replace_malloc.a \
+ -Wl,--no-whole-archive
for (thread_num = 0; thread_num < NUM_THREADS; thread_num++) {
pthread_join(threads[thread_num], NULL);
- printf("main: joined to thread %d\n", thread_num);
+ //printf("main: joined to thread %d\n", thread_num);
}
printf("main: Goodbye\n");
return 0;
identify_yourself: Hi, I'm thread # 7
identify_yourself: Hi, I'm thread # 8
identify_yourself: Hi, I'm thread # 9
-main: joined to thread 0
-main: joined to thread 1
-main: joined to thread 2
-main: joined to thread 3
-main: joined to thread 4
-main: joined to thread 5
-main: joined to thread 6
-main: joined to thread 7
-main: joined to thread 8
-main: joined to thread 9
main: Goodbye
libpthread.so \
vg_inject.so
+noinst_LIBRARIES = lib_replace_malloc.a
+
+noinst_HEADERS = \
+ core.h \
+ core_asm.h \
+ ume.h \
+ vg_symtab2.h \
+ vg_symtypes.h \
+ vg_toolint.h \
+ vg_unsafe.h
+
EXTRA_DIST = \
vg_libpthread.vs valgrind.vs \
gen_toolint.pl toolfuncs.def \
${VG_PLATFORM}/syscall.S
libpthread_so_DEPENDENCIES = $(srcdir)/vg_libpthread.vs
libpthread_so_LDFLAGS = -Werror -fno-omit-frame-pointer -UVG_LIBDIR \
- -shared -fpic -ldl \
+ -shared -ldl \
-Wl,-version-script $(srcdir)/vg_libpthread.vs \
-Wl,-z,nodelete \
-Wl,--soname=libpthread.so.0
vg_inject_so_SOURCES = \
vg_intercept.c
-
-# Not really true, but we need to build vg_replace_malloc.o somehow
-vg_inject_so_DEPENDENCIES = \
- vg_replace_malloc.o
-
+vg_inject_so_CFLAGS = $(AM_CFLAGS) -fpic
vg_inject_so_LDFLAGS = \
-shared \
-Wl,--soname,vg_inject.so \
-Wl,-z,initfirst
-noinst_HEADERS = \
- core.h \
- core_asm.h \
- ume.h \
- vg_symtab2.h \
- vg_symtypes.h \
- vg_toolint.h \
- vg_unsafe.h
+lib_replace_malloc_a_SOURCES = vg_replace_malloc.c
+lib_replace_malloc_a_CFLAGS = $(AM_CFLAGS) -fpic
MANUAL_DEPS = $(noinst_HEADERS) $(include_HEADERS) $(inplacedir)/libpthread.so.0
-vg_replace_malloc.o vg_intercept.o vg_libpthread.o: CFLAGS += -fno-omit-frame-pointer -g -fpic
-
all-local:
mkdir -p $(inplacedir)
for i in $(val_PROGRAMS); do \
vgskin_helgrind_so_LDFLAGS = -shared
vgpreload_helgrind_so_SOURCES =
-vgpreload_helgrind_so_LDADD = $(top_builddir)/coregrind/vg_replace_malloc.o
-vgpreload_helgrind_so_DEPENDENCIES = $(top_builddir)/coregrind/vg_replace_malloc.o
-vgpreload_helgrind_so_LDFLAGS = -shared -Wl,-z,interpose,-z,initfirst
+vgpreload_helgrind_so_DEPENDENCIES = $(top_builddir)/coregrind/lib_replace_malloc.a
+vgpreload_helgrind_so_LDFLAGS = -shared -Wl,-z,interpose,-z,initfirst \
+ -Wl,--whole-archive \
+ $(top_builddir)/coregrind/lib_replace_malloc.a \
+ -Wl,--no-whole-archive
hgincludedir = $(includedir)/valgrind
vgskin_massif_so_LDFLAGS = -shared
vgpreload_massif_so_SOURCES =
-vgpreload_massif_so_LDADD = $(top_builddir)/coregrind/vg_replace_malloc.o
-vgpreload_massif_so_DEPENDENCIES = $(top_builddir)/coregrind/vg_replace_malloc.o
-vgpreload_massif_so_LDFLAGS = -shared -Wl,-z,interpose,-z,initfirst
+vgpreload_massif_so_DEPENDENCIES = $(top_builddir)/coregrind/lib_replace_malloc.a
+vgpreload_massif_so_LDFLAGS = -shared -Wl,-z,interpose,-z,initfirst \
+ -Wl,--whole-archive \
+ $(top_builddir)/coregrind/lib_replace_malloc.a \
+ -Wl,--no-whole-archive
+
vgpreload_memcheck_so_SOURCES = \
mac_replace_strmem.c
-vgpreload_memcheck_so_LDADD = $(top_builddir)/coregrind/vg_replace_malloc.o
-vgpreload_memcheck_so_DEPENDENCIES = $(top_builddir)/coregrind/vg_replace_malloc.o
-vgpreload_memcheck_so_LDFLAGS = -shared -Wl,-z,interpose,-z,initfirst
+vgpreload_memcheck_so_DEPENDENCIES = $(top_builddir)/coregrind/lib_replace_malloc.a
+vgpreload_memcheck_so_LDFLAGS = -shared -Wl,-z,interpose,-z,initfirst \
+ -Wl,--whole-archive \
+ $(top_builddir)/coregrind/lib_replace_malloc.a \
+ -Wl,--no-whole-archive
vgskin_memcheck_so_SOURCES = \
mac_leakcheck.c \
identify_yourself: Hi, I'm thread # 7
identify_yourself: Hi, I'm thread # 8
identify_yourself: Hi, I'm thread # 9
-main: joined to thread 0
-main: joined to thread 1
-main: joined to thread 2
-main: joined to thread 3
-main: joined to thread 4
-main: joined to thread 5
-main: joined to thread 6
-main: joined to thread 7
-main: joined to thread 8
-main: joined to thread 9
main: Goodbye