Adds support for iostreams-style output of Microsoft's __int64 data type.
[dyninst.git] / rtinst / make.module.tmpl
1 #
2 # Common makefile template for rtinst library.  This file is not
3 # intended to be a useful Makefile in isolation; instead, it should be
4 # included from within an architecture-specific Makefile.
5 #
6 # $Id: make.module.tmpl,v 1.17 1999/05/29 23:39:29 wylie Exp $
7 #
8
9 ifndef TARGET
10 TARGET          = libdyninstRT.o
11 endif
12
13 ifdef USES_LIBDYNINSTRT_SO
14 TARGET3_SO      = libdyninstRT.so.1
15 endif
16
17 ifdef INCLUDE_CP_PROFILING
18 TARGET2         = libdyninstCP.o
19 CP_OBJS         = RTpvmPiggy.o RTcriticalPath.o
20 endif
21
22 ifdef BUILD_CODE_BLOCKS        
23 ALT_TARGET      = DYNINSTstartCode.o DYNINSTendCode.o 
24 endif
25
26 MODCC         = $(CC)
27 MODCFLAGS     = $(CFLAGS)
28
29 SRCS         += ../src/RTinst.c ../src/RTend.c
30
31 ifdef USES_SHM_SAMPLING
32 CFLAGS  += -DSHM_SAMPLING
33 endif
34
35 ifdef USES_LIBDYNINSTRT_SO
36 #all: $(TARGET) $(TARGET2) 
37 all: $(TARGET3_SO) $(TARGET2) 
38 else
39 all: $(TARGET) $(TARGET2) $(ALT_TARGET)
40 endif
41
42 OBJS =          $(patsubst %.C, %.o, $(filter %.C,$(notdir $(SRCS)))) \
43                 $(patsubst %.c, %.o, $(filter %.c,$(notdir $(SRCS)))) \
44                 $(patsubst %.s, %.o, $(filter %.s,$(notdir $(SRCS)))) \
45                 $(patsubst %.S, %.o, $(filter %.S,$(notdir $(SRCS)))) \
46                 $(IGEN_GEN_SRCS:%.C=%.o)
47
48 #
49 # override standard install rule; provide a default DEST if not already set
50 #
51 ifndef DEST
52 DEST            = $(TO_CORE)/$(LIBRARY_DEST)
53 endif
54
55 ifndef USES_LIBDYNINSTRT_SO
56
57 INSTOBJS        = $(DEST)/$(TARGET)
58
59 ifdef BUILD_CODE_BLOCKS
60 INSTOBJS        += $(DEST)/DYNINSTstartCode.o $(DEST)/DYNINSTendCode.o
61 endif
62 ifdef INCLUDE_CP_PROFILING
63 INSTOBJS        += $(DEST)/RTpvmPiggy.o $(DEST)/$(TARGET2)
64 endif
65
66 #
67 # override standard link rule; libdyninst is not really a library or a program.
68 #
69 UNCOMMON_LINK = true
70 $(TARGET): $(OBJS)
71         @$(RM) $(TARGET)
72         @$(MAKE) $(VOUCHER)
73         $(LD) $(LDFLAGS) -o $(TARGET) $(VOUCHER).o $(OBJS) $(LIBS) -lgcc
74
75 UNCOMMON_INSTALL = true
76
77 install: $(INSTOBJS)
78
79 $(DEST)/$(TARGET):       $(TARGET)
80         -$(CP) $(TARGET) $(DEST)
81
82 $(DEST)/$(TARGET2):       $(TARGET2)
83         -$(CP) $(TARGET2) $(DEST)
84
85 $(DEST)/RTpvmPiggy.o: RTpvmPiggy.o
86         -$(CP) RTpvmPiggy.o $(DEST)
87
88 $(DEST)/DYNINSTstartCode.o: DYNINSTstartCode.o
89         -$(CP) DYNINSTstartCode.o $(DEST)
90
91 $(DEST)/DYNINSTendCode.o: DYNINSTendCode.o
92         -$(CP) DYNINSTendCode.o $(DEST)
93 endif
94