Fix bugs in copying loop tree info
[dyninst.git] / patchAPI / CMakeLists.txt
1 # CMake configuration for patchAPI directory
2
3 include_directories (
4     ${PROJECT_SOURCE_DIR}/patchAPI/src
5   )
6
7 set (SRC_LIST
8         src/AddrSpace.C 
9         src/Instrumenter.C 
10         src/PatchObject.C 
11         src/PatchBlock.C 
12         src/PatchEdge.C 
13         src/PatchFunction.C 
14         src/PatchMgr.C 
15         src/Point.C 
16         src/CFGMaker.C 
17         src/PointMaker.C 
18         src/Command.C 
19         src/PatchCallback.C 
20         src/ParseCallback.C 
21         src/PatchModifier.C 
22         src/PatchLoop.C
23         src/PatchLoopTreeNode.C
24   )
25
26 SET_SOURCE_FILES_PROPERTIES(${SRC_LIST} PROPERTIES LANGUAGE CXX)
27
28 ADD_DEFINITIONS(-DPATCHAPI_LIB)
29
30
31 add_library (patchAPI ${SRC_LIST})
32 add_library (patchAPI_static STATIC ${SRC_LIST})
33 target_link_private_libraries(patchAPI common)
34 target_link_private_libraries(patchAPI instructionAPI)
35 target_link_private_libraries(patchAPI parseAPI)
36
37 FILE (GLOB headers "h/*.h")
38 set_target_properties (patchAPI patchAPI_static PROPERTIES PUBLIC_HEADER "${headers}")
39
40
41 INSTALL (TARGETS patchAPI patchAPI_static
42         EXPORT DyninstTargets
43         RUNTIME DESTINATION ${INSTALL_LIB_DIR}
44         LIBRARY DESTINATION ${INSTALL_LIB_DIR}
45         ARCHIVE DESTINATION ${INSTALL_LIB_DIR}
46         PUBLIC_HEADER DESTINATION ${INSTALL_INCLUDE_DIR})