2 # Eventually replace with RPC's actual config if using that
3 # Once found this file will define:
4 # RPC_FOUND - System has RPC
5 # RPC_INCLUDE_DIRS - The RPC include directories
6 # RPC_LIBRARIES - The libraries needed to use RPC
8 find_package( PkgConfig )
9 pkg_check_modules( PC_RPC QUIET RPC )
10 # set(CMAKE_FIND_DEBUG_MODE TRUE)
13 NAMES rpc/types.h # Make it so we go up one dir
15 HINTS ENV RPC_ROOT ENV RPCINC ENV RPC_PATH ${RPC_ROOT} ${RPCINC} ${RPC_PATH}
16 PATHS ${PC_RPC_INCLUDE_DIRS}
23 HINTS ENV RPC_ROOT ENV RPCLIB ENV RPC_PATH ${RPC_ROOT} ${RPCLIB} ${RPC_PATH}
24 PATHS ${PC_RPC_LIBRARY_DIRS}
28 # set(CMAKE_FIND_DEBUG_MODE FALSE)
30 include(FindPackageHandleStandardArgs)
31 find_package_handle_standard_args(
37 # VERSION_VAR RPC_VERSION
40 if ( RPC_FOUND AND NOT TARGET RPC::RPC )
41 add_library( RPC::RPC UNKNOWN IMPORTED )
42 set_target_properties(
45 IMPORTED_LOCATION "${RPC_LIBRARY}"
46 INTERFACE_COMPILE_OPTIONS "${PC_RPC_CFLAGS_OTHER}"
47 INTERFACE_INCLUDE_DIRECTORIES "${RPC_INCLUDE_DIR}"
50 # Allow traditional/legacy style usage
51 set( RPC_LIBRARIES ${RPC_LIBRARY} )
52 set( RPC_INCLUDE_DIRS ${RPC_INCLUDE_DIR} )
53 set( RPC_DEFINITIONS ${PC_RPC_CFLAGS_OTHER} )