fixes for gcc 4
[dyninst.git] / symtabAPI / rs6000-ibm-aix5.1 / Makefile
1 #
2
3 # Define any symbols needed to invoke configuration changes in make.config
4
5 # XXX get rid of these:
6
7 #INSTANTIATE_TEMPLATES   = true
8 #DO_INLINE_ALL           = true
9 #NO_OPT_FLAG = true
10 NO_IMPLICIT_TEMPLATES    = true
11 #AUTO_TEMPLATES                  = true
12 OVERRIDE_INSTALL        = true
13
14 DEBUG_FLAG = -g
15
16 EXTRA_LIBS = libdemangle.so.1
17
18 ifdef COVERAGE
19 NO_OPT_FLAG             = true
20 endif
21
22 # AIX uses .a for library names...
23 TARGET  = libsymtabAPI.a
24
25 # Include standard make configuration stuff that applies to everything
26 # in the paradyn tree.
27
28 include ../../make.config 
29 ifdef IBM_BPATCH_COMPAT
30 # use XLC auto template mechanism
31 AUTO_TEMPLATES = true
32 endif
33
34 ifdef COVERAGE
35 CXXFLAGS += -O0
36 endif
37
38 # Now make any necessary architecture specific changes to variables:
39
40 SRCS =          ../src/Object-xcoff.C \
41                 ../src/Archive.C \
42                 ../src/Archive-xcoff.C \
43                 ../src/parseStab.C \
44                 ../src/addrtranslate.C \
45                 ../src/addrtranslate-aix.C
46
47 # Add preprocessor and special link information for G++
48 G_PTHREAD       = -pthread
49 # Commented out for daily wisc builds
50 #G_PTHREAD_LD   = -pthread
51
52
53 # Include the module-specific Makefile, which defines everything about
54 # the module that is common across architectures.
55
56 include ../make.module.tmpl
57
58 ifdef IBM_BPATCH_COMPAT
59   LDFLAGS += -liberty -bbigtoc -bexpall
60   # should be building a static library in this case
61   TARGET3_STATIC  = libsymtabAPI.a
62   TARGET_INSTALL  = $(TARGET3_STATIC)
63   AR = /usr/bin/ar
64 else
65   # On AIX all symbols must be resolved at link time, even for a library.
66   # We need the cplus.demangle function from libiberty.
67   LDFLAGS += -liberty -Wl,-bbigtoc,-bexpall -lgcc 
68   # Override default of gcc -- need g++ on AIX
69   LD = $(GXX)
70 endif
71
72
73 # Include the "standard library template".  This defines all the
74 # common targets like "clean", "install", etc.
75
76 include ../../make.library.tmpl
77
78 libdemangle.so.1:
79         -xlC -bnoobjreorder -bexpall -bnoentry -o libdemangle.so.1 -ldemangle -u functionName -u demangle -u kind -u varName -u text -lc 
80
81
82 #
83 # Install rule: install withOUT world-readable permissions
84
85 install: install_generic libdemangle.so.1
86         -$(CP) libdemangle.so.1 $(DEST)
87         -chmod 750 $(DEST)/$(TARGET)