--- old/agent/src/os/linux/Makefile Thu Sep 17 16:09:34 2009 +++ new/agent/src/os/linux/Makefile Thu Sep 17 16:09:34 2009 @@ -36,26 +36,34 @@ INCLUDES = -I${JAVA_HOME}/include -I${JAVA_HOME}/include/linux -OBJS = $(SOURCES:.c=.o) +OBJS = $(SOURCES:%.c=$(ARCH)/%.o) $(ARCH)/sadis.o LIBS = -lthread_db -CFLAGS = -c -fPIC -g -D_GNU_SOURCE -D$(ARCH) $(INCLUDES) +CFLAGS = -c -fPIC -g -D_GNU_SOURCE -D$(ARCH) $(INCLUDES) -I$(ARCH) LIBSA = $(ARCH)/libsaproc.so all: $(LIBSA) -LinuxDebuggerLocal.o: LinuxDebuggerLocal.c - $(JAVAH) -jni -classpath ../../../build/classes \ +$(ARCH): + mkdir $(ARCH) + +$(ARCH)/LinuxDebuggerLocal.o: LinuxDebuggerLocal.c + $(JAVAH) -jni -classpath ../../../build/classes -d $(ARCH) \ sun.jvm.hotspot.debugger.x86.X86ThreadContext \ sun.jvm.hotspot.debugger.sparc.SPARCThreadContext \ sun.jvm.hotspot.debugger.amd64.AMD64ThreadContext - $(GCC) $(CFLAGS) $< + $(GCC) $(CFLAGS) $< -o $@ -.c.obj: - $(GCC) $(CFLAGS) +$(ARCH)/sadis.o: ../../share/native/sadis.c + $(JAVAH) -jni -classpath ../../../build/classes -d $(ARCH) \ + sun.jvm.hotspot.asm.Disassembler + $(GCC) $(CFLAGS) $< -o $@ +$(ARCH)/%.o: %.c + $(GCC) $(CFLAGS) $< -o $@ + ifndef LDNOMAP LFLAGS_LIBSA = -Xlinker --version-script=mapfile endif @@ -68,8 +76,7 @@ endif LFLAGS_LIBSA += $(LDFLAGS_HASH_STYLE) -$(LIBSA): $(OBJS) mapfile - if [ ! -d $(ARCH) ] ; then mkdir $(ARCH) ; fi +$(LIBSA): $(ARCH) $(OBJS) mapfile $(GCC) -shared $(LFLAGS_LIBSA) -o $(LIBSA) $(OBJS) $(LIBS) test.o: test.c @@ -79,7 +86,5 @@ $(GCC) -o test test.o -L$(ARCH) -lsaproc $(LIBS) clean: - rm -rf $(LIBSA) - rm -rf $(OBJS) - rmdir $(ARCH) + rm -fr $(ARCH)