In respect to the #198.
ITT library is an open source library, but it's not packaged to Ubuntu or Debian. To handle packaging of oneCCL we can reuse approach in other projects to handle ITT library who just build ITT from sources. To handle that we can consider to fetch ITT sources during cmake build via FetchContent or ExternalProject or fetch the ITT via Git submodule. Since oneCCL uses cmake it should be pretty straightforward to integrate the ITT build, for example, see https://github.com/pytorch/pytorch/blob/main/cmake/Modules/FindITT.cmake.
Note that some distros do package ITT such as Fedora, see https://src.fedoraproject.org/rpms/ittapi. So we can consider to first check ITT availability on the system via cmake ITT configuration (https://github.com/intel/ittapi/blob/master/cmake/ittapiConfig.cmake.in) and then if it's not available - attempt to fetch it and build from sources.
CC: @frenchwr, @blazej-smorawski
In respect to the #198.
ITT library is an open source library, but it's not packaged to Ubuntu or Debian. To handle packaging of oneCCL we can reuse approach in other projects to handle ITT library who just build ITT from sources. To handle that we can consider to fetch ITT sources during cmake build via FetchContent or ExternalProject or fetch the ITT via Git submodule. Since oneCCL uses cmake it should be pretty straightforward to integrate the ITT build, for example, see https://github.com/pytorch/pytorch/blob/main/cmake/Modules/FindITT.cmake.
Note that some distros do package ITT such as Fedora, see https://src.fedoraproject.org/rpms/ittapi. So we can consider to first check ITT availability on the system via cmake ITT configuration (https://github.com/intel/ittapi/blob/master/cmake/ittapiConfig.cmake.in) and then if it's not available - attempt to fetch it and build from sources.
CC: @frenchwr, @blazej-smorawski