update minimum boost version to 1.70.0 (#1117)
[dyninst.git] / cmake / LibIberty.cmake
1 #======================================================================================
2 # LibIberty.cmake
3 #
4 # Configure LibIberty for Dyninst
5 #
6 #   ----------------------------------------
7 #
8 # Directly exports the following CMake variables
9 #
10 # LibIberty_ROOT_DIR       - Computed base directory the of LibIberty installation
11 # LibIberty_LIBRARY_DIRS   - Link directories for LibIberty libraries
12 # LibIberty_LIBRARIES      - LibIberty library files
13 # LibIberty_INCLUDE        - LibIberty include files
14 #
15 # NOTE:
16 # The exported LibIberty_ROOT_DIR can be different from the value provided by the user
17 # in the case that it is determined to build LibIberty from source. In such a case,
18 # LibIberty_ROOT_DIR will contain the directory of the from-source installation.
19 #
20 # See Modules/FindLibIberty.cmake for details
21 #
22 #======================================================================================
23
24 if(LibIberty_FOUND)
25   return()
26 endif()
27
28 if(NOT UNIX)
29   return()
30 endif()
31
32 # -------------- PATHS --------------------------------------------------------
33
34 # Base directory the of LibIberty installation
35 set(LibIberty_ROOT_DIR "/usr"
36     CACHE PATH "Base directory the of LibIberty installation")
37
38 # Hint directory that contains the LibIberty library files
39 set(LibIberty_LIBRARYDIR "${LibIberty_ROOT_DIR}/lib"
40     CACHE PATH "Hint directory that contains the LibIberty library files")
41
42 # -------------- PACKAGES -----------------------------------------------------
43
44 find_package(LibIberty REQUIRED)
45
46
47 # -------------- EXPORT VARIABLES ---------------------------------------------
48
49 add_library(LibIberty STATIC IMPORTED GLOBAL)
50 set_target_properties(LibIberty PROPERTIES IMPORTED_LOCATION ${LibIberty_LIBRARIES})
51 set_target_properties(LibIberty PROPERTIES INTERFACE_INCLUDE_DIRECTORIES ${LibIberty_INCLUDE_DIRS})
52
53 set(LibIberty_ROOT_DIR ${LibIberty_ROOT_DIR}
54     CACHE PATH "Base directory the of LibIberty installation"
55     FORCE)
56 set(LibIberty_INCLUDE_DIRS ${LibIberty_INCLUDE_DIRS}
57     CACHE PATH "LibIberty include directories"
58     FORCE)
59 set(LibIberty_LIBRARY_DIRS ${LibIberty_LIBRARY_DIRS}
60     CACHE PATH "LibIberty library directory"
61     FORCE)
62 set(LibIberty_LIBRARIES ${LibIberty_LIBRARIES}
63     CACHE FILEPATH "LibIberty library files"
64     FORCE)
65
66 # For backward compatibility only
67 set(IBERTY_LIBRARIES ${LibIberty_LIBRARIES})
68
69 message(STATUS "LibIberty include dirs: ${LibIberty_INCLUDE_DIRS}")
70 message(STATUS "LibIberty library dirs: ${LibIberty_LIBRARY_DIRS}")
71 message(STATUS "LibIberty libraries: ${LibIberty_LIBRARIES}")