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