2 # Common makefile template for the dyninstAPI 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.
6 # $Id: make.module.tmpl,v 1.4 2008/09/15 17:38:17 jaw Exp $
12 #BUILD_MARK should be (re-)defined in core/make.config.local rather than here!
14 CFLAGS += $(USEFULWARNINGS) -I$(TO_CORE)/../include
15 CXXFLAGS += $(USEFULWARNINGS) -I$(TO_CORE)/../include
17 LDFLAGS += -L../../common/$(PLATFORM) -L../../symtabAPI/$(PLATFORM) -lcommon -lsymtabAPI
22 LDFLAGS += -shared $(G_PTHREAD_LD)
24 CXXFLAGS += -fPIC $(G_PTHREAD)
26 ifeq (solaris,$(findstring solaris,$(PLATFORM)))
31 ifneq ($(findstring cap_instruction_api,$(CAP_DEF)),)
32 LDFLAGS += -L../../instructionAPI/$(PLATFORM) -linstructionAPI
49 SRCS += ../src/ParserDetails.C \
55 ../src/debug_parse.C \
56 ../src/SymtabCodeSource.C \
58 ../src/InstructionAdapter.C\
59 ../src/Parser-speculative.C\
60 ../src/ParseCallback.C \
61 ../src/IA_x86Details.C \
62 ../src/IA_powerDetails.C \
63 ../src/IA_platformDetailsFactory.C \
66 ifneq ($(findstring cap_instruction_api,$(CAP_DEF)),)
67 SRCS += ../../dataflowAPI/src/ABI.C \
68 ../../dataflowAPI/src/Absloc.C \
69 ../../dataflowAPI/src/AbslocInterface.C \
70 ../../dataflowAPI/src/convertOpcodes.C \
71 ../../dataflowAPI/src/debug_dataflow.C \
72 ../../dataflowAPI/src/ExpressionConversionVisitor.C \
73 ../../dataflowAPI/src/InstructionCache.C \
74 ../../dataflowAPI/src/liveness.C \
75 ../../dataflowAPI/src/RegisterMap.C \
76 ../../dataflowAPI/src/RoseImpl.C \
77 ../../dataflowAPI/src/RoseInsnFactory.C \
78 ../../dataflowAPI/src/slicing.C \
79 ../../dataflowAPI/src/stackanalysis.C \
80 ../../dataflowAPI/src/SymbolicExpansion.C \
81 ../../dataflowAPI/src/SymEval.C \
82 ../../dataflowAPI/src/SymEvalPolicy.C \
83 ../../dataflowAPI/src/templates.C \
84 ../../dataflowAPI/src/Visitors.C \
85 ../src/StackTamperVisitor.C
87 VPATH += ../../dataflowAPI/src
88 VPATH += ../../dataflowAPI/h
90 PUBLIC_H += Absloc.h \
102 IFLAGS += -I../$(PLATFORM) -I../src -I../../dataflowAPI/src -I../../dataflowAPI/h -I../h -I../../dynutil/h -I../../symtabAPI/h -I../../common/h -I../../instructionAPI/h
105 # All that, and we finally get a target...
106 all: $(TARGET) $(EXTRA_LIBS)