You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When installing onetbb with interprocedural_optimization=False the option isn't propagated correctly, resulting in TBB_ENABLE_IPO not being set to false.
With interprocedural_optimization=False the TBB_ENABLE_IPO variable is never updated since self.options.get_safe("interprocedural_optimization") return false.
See the following output where IPO is reported as enabled when building onetbb:
-- Using Conan toolchain: /home/aeek/.conan2/p/b/onetb185f34f341f7c/b/build/Release/generators/conan_toolchain.cmake
-- Conan toolchain: C++ Standard 14 with extensions ON
-- The CXX compiler identification is GNU 11.4.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- IPO enabled <-------------------- IPO is enabled here --------
-- The C compiler identification is GNU 11.4.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- HWLOC target HWLOC::hwloc_1_11 doesn't exist. The tbbbind target cannot be created
-- HWLOC target HWLOC::hwloc_2 doesn't exist. The tbbbind_2_0 target cannot be created
-- HWLOC target HWLOC::hwloc_2_5 doesn't exist. The tbbbind_2_5 target cannot be created
-- Configuring done (0.4s)
-- Generating done (0.0s)
-- Build files have been written to: /home/aeek/.conan2/p/b/onetb185f34f341f7c/b/build/Release
Suggested fix
Remove the if-statement and always set TBB_ENABLE_IPO with the option value:
Description
When installing onetbb with
interprocedural_optimization=False
the option isn't propagated correctly, resulting inTBB_ENABLE_IPO
not being set to false.This is because of the following lines:
conan-center-index/recipes/onetbb/all/conanfile.py
Lines 119 to 120 in bbabcf6
With
interprocedural_optimization=False
theTBB_ENABLE_IPO
variable is never updated sinceself.options.get_safe("interprocedural_optimization")
return false.See the following output where IPO is reported as enabled when building onetbb:
Suggested fix
Remove the if-statement and always set
TBB_ENABLE_IPO
with the option value:Output with the suggested fix applied. Note how IPO enabled is not present anymore:
Click to expand log
I'm happy to submit a pull request if you agree with my suggested fix!
Package and Environment Details
Conan profile
Steps to reproduce
conan create ~/src/conan-center-index/recipes/onetbb/all/conanfile.py --version 2021.10.0 -o:h interprocedural_optimization=False -o:h tbbbind=False
Logs
Click to expand log
The text was updated successfully, but these errors were encountered: