message("&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&") message(" Cmake RDC Lib-Bootstrap ") message("&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&") set(SRC_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src") set(INC_DIR "${RDC_LIB_INC_DIR}") # need source dir for rocr set(BOOTSTRAP_LIB_SRC_DIR "${SRC_DIR}" PARENT_SCOPE) set(BOOTSTRAP_LIB_COMPONENT "lib${BOOTSTRAP_LIB}") set(BOOTSTRAP_LIB_SRC_LIST "${COMMON_DIR}/rdc_fields_supported.cc" "${SRC_DIR}/RdcBootStrap.cc" "${SRC_DIR}/RdcLibraryLoader.cc" "${SRC_DIR}/RdcLogger.cc") set(BOOTSTRAP_LIB_INC_LIST "${COMMON_DIR}/rdc_fields_supported.h" "${INC_DIR}/RdcHandler.h" "${INC_DIR}/RdcLibraryLoader.h" "${INC_DIR}/RdcLogger.h" "${INC_DIR}/rdc_common.h" "${PROJECT_SOURCE_DIR}/include/rdc/rdc.h") message("BOOTSTRAP_LIB_INC_LIST=${BOOTSTRAP_LIB_INC_LIST}") add_library(${BOOTSTRAP_LIB} SHARED ${BOOTSTRAP_LIB_SRC_LIST} ${BOOTSTRAP_LIB_INC_LIST}) target_link_libraries(${BOOTSTRAP_LIB} pthread dl) target_include_directories(${BOOTSTRAP_LIB} PRIVATE "${PROJECT_SOURCE_DIR}" "${PROJECT_SOURCE_DIR}/include" "${COMMON_DIR}" "${SMI_INC_DIR}" "${ROCM_DIR}/include") target_include_directories(${BOOTSTRAP_LIB} PUBLIC "$") # Set the VERSION and SOVERSION values set_property(TARGET ${BOOTSTRAP_LIB} PROPERTY SOVERSION "${VERSION_MAJOR}") set_property(TARGET ${BOOTSTRAP_LIB} PROPERTY VERSION "${SO_VERSION_STRING}") set_target_properties(${BOOTSTRAP_LIB} PROPERTIES INSTALL_RPATH "\$ORIGIN:\$ORIGIN/rdc") # If the library is a release, strip the target library if("${CMAKE_BUILD_TYPE}" STREQUAL Release) add_custom_command( TARGET ${BOOTSTRAP_LIB} POST_BUILD COMMAND ${CMAKE_STRIP} ${BOOTSTRAP_LIB_COMPONENT}.so) endif()