fixed bug in hash function
[dyninst.git] / rtinst / make.module.tmpl
1
2
3 #
4 # Common makefile template for rtinst library.  This file is not
5 # intended to be a useful Makefile in isolation; instead, it should be
6 # included from within an architecture-specific Makefile.
7 #
8 # $Log: make.module.tmpl,v $
9 # Revision 1.10  1997/02/26 23:52:05  mjrg
10 # First part of WindowsNT port: divided RTposix.c into two files,
11 # RTinst.c which has all platform independent code and RTposix.c with
12 # unix specific code
13 #
14 # Revision 1.9  1996/10/31 08:03:00  tamches
15 # the shm-sampling commit
16 #
17 # Revision 1.8  1996/07/30 19:02:19  mjrg
18 # Changed libdyninstRT.a to libdyninstRT.o
19 # Link libdyninstRT.o with libgcc
20 #
21 # Revision 1.7  1995/08/30  19:35:56  mjrg
22 # Fixed install for cm5 libraries.
23 #
24 # Revision 1.6  1995/08/29  23:21:44  hollings
25 # Fixed missing UNCOMMON_LINK flag.
26 #
27 # Revision 1.5  1995/08/24  15:12:04  hollings
28 # AIX/SP-2 port (including option for split instruction/data heaps)
29 # Tracing of rexec (correctly spawns a paradynd if needed)
30 # Added rtinst function to read getrusage stats (can now be used in metrics)
31 # Critical Path
32 # Improved Error reporting in MDL sematic checks
33 # Fixed MDL Function call statement
34 # Fixed bugs in TK usage (strings passed where UID expected)
35 #
36 # Revision 1.4  1995/05/30  05:16:03  krisna
37 # moved declaration of LIBS to SunOs Makefile.  we do not use libkvm.a
38 # on Solaris, and it is non-existent on HPUX.
39 #
40 # Revision 1.3  1995/02/21  16:27:55  jcargill
41 # Changes to new build system so rtinst builds for all archs
42 #
43 # Revision 1.2  1995/02/16  09:11:29  markc
44 # Added support for RTfirst.o and RTend.o which mark the beginning and end
45 # of DYNINST code.
46 #
47 # Revision 1.1  1995/01/30  18:30:31  jcargill
48 # Major build system reorganization
49 #
50 #
51
52 ifndef TARGET
53 TARGET        = libdyninstRT.o
54 ALT_TARGET    = DYNINSTstartCode.o DYNINSTendCode.o RTpvmPiggy.o RTcriticalPath.o
55 endif
56
57 MODCC         = $(CC)
58 MODCFLAGS     = $(CFLAGS)
59
60 SRCS         += ../src/RTinst.c ../src/RTend.c
61 SRCS2        += ../src/RTend.c
62
63 DYNSRCS       = ../src/DYNINSTstartCode.c \
64                 ../src/DYNINSTendCode.c
65
66 ifdef USES_SHM_SAMPLING
67 CFLAGS  += -DSHM_SAMPLING
68 endif
69
70 all: $(TARGET) $(TARGET2) $(ALT_TARGET)
71
72 #
73 # override standard link rule; libdyninst is not really a library or a program.
74 #
75 UNCOMMON_LINK= true
76
77 OBJS =          $(patsubst %.C, %.o, $(filter %.C,$(notdir $(SRCS)))) \
78                 $(patsubst %.c, %.o, $(filter %.c,$(notdir $(SRCS)))) \
79                 $(patsubst %.s, %.o, $(filter %.s,$(notdir $(SRCS)))) \
80                 $(patsubst %.S, %.o, $(filter %.S,$(notdir $(SRCS)))) \
81                 $(IGEN_GEN_SRCS:%.C=%.o)
82
83 $(TARGET): $(OBJS) $(LIBS)
84         $(LD) $(LDFLAGS) -o $(TARGET) $(OBJS) $(LIBS) -lgcc
85
86 #
87 # override standard install rule; provide a default DEST if not already set
88 #
89 ifndef DEST
90 DEST            = $(TO_CORE)/../lib/$(PLATFORM)
91 endif
92
93 UNCOMMON_INSTALL= true
94 ifndef CM5_INSTALL
95 install: $(DEST)/$(TARGET) \
96          $(DEST)/DYNINSTstartCode.o \
97          $(DEST)/DYNINSTendCode.o \
98          $(DEST)/RTpvmPiggy.o
99 else
100 install: $(DEST)/$(TARGET) $(DEST)/$(TARGET2)
101 endif
102 $(DEST)/libdyninstRT.o:       libdyninstRT.o
103         cp libdyninstRT.o ../../../lib/$(PLATFORM)
104
105 $(DEST)/RTpvmPiggy.o: RTpvmPiggy.o
106         cp RTpvmPiggy.o ../../../lib/$(PLATFORM)
107
108 $(DEST)/DYNINSTstartCode.o: DYNINSTstartCode.o
109         cp DYNINSTstartCode.o ../../../lib/$(PLATFORM)
110
111 $(DEST)/DYNINSTendCode.o: DYNINSTendCode.o
112         cp DYNINSTendCode.o ../../../lib/$(PLATFORM)