Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.

Bug 1930389

Summary: Provide TBBConfig.cmake
Product: [Fedora] Fedora Reporter: Ben Boeckel <fedora>
Component: tbbAssignee: Jiri Kastner <cz172638>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 32CC: cz172638, loganjerry, me
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: tbb-2020.2-3.fc32 tbb-2020.3-5.fc33 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-03-03 23:24:41 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Ben Boeckel 2021-02-18 19:16:42 UTC
Description of problem:
The tbb-devel package does not provide `TBBConfig.cmake`. It looks like, from Arch, that this command needs added to the %install section:

https://github.com/archlinux/svntogit-packages/blob/packages/tbb/trunk/PKGBUILD#L32

  cmake \
    -DINSTALL_DIR="$pkgdir"/usr/lib/cmake/TBB \
    -DSYSTEM_NAME=Linux -DTBB_VERSION_FILE="$pkgdir"/usr/include/tbb/tbb_stddef.h \
    -P cmake/tbb_config_installer.cmake

Comment 1 Jerry James 2021-02-18 23:43:38 UTC
Thanks for the report, Ben.  I had to tweak the cmake invocation slightly (the one above just makes cmake complain that there is no CMakeLists.txt file).  A Rawhide build is now running.  If that doesn't break anything, I'll build for Fedora 32 - 34 next.

Comment 2 Ben Boeckel 2021-02-19 00:24:55 UTC
Hmm. The `-P` is "script mode", so it shouldn't need that. Or did you try to use `%cmake`?

The key file to look for is `/usr/lib64/cmake/tbb/TBBConfig.cmake`. If that is new, then it (probably) worked. I'll test out the F33 package here locally once it lands in updates-testing. Thanks!

Comment 3 Fedora Update System 2021-02-19 23:49:55 UTC
FEDORA-2021-c9be5cceb5 has been submitted as an update to Fedora 32. https://bodhi.fedoraproject.org/updates/FEDORA-2021-c9be5cceb5

Comment 4 Fedora Update System 2021-02-19 23:49:56 UTC
FEDORA-2021-865cc5a09e has been submitted as an update to Fedora 33. https://bodhi.fedoraproject.org/updates/FEDORA-2021-865cc5a09e

Comment 5 Fedora Update System 2021-02-20 01:31:03 UTC
FEDORA-2021-865cc5a09e has been pushed to the Fedora 33 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2021-865cc5a09e`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2021-865cc5a09e

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 6 Fedora Update System 2021-02-20 02:09:59 UTC
FEDORA-2021-c9be5cceb5 has been pushed to the Fedora 32 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2021-c9be5cceb5`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2021-c9be5cceb5

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 7 Ben Boeckel 2021-02-22 14:08:42 UTC
The CMake package isn't working properly. The problem is that it does this:

/usr/lib64/cmake/TBB/TBBConfig.cmake(45):  get_filename_component(_tbb_root /usr/lib64/cmake/TBB/TBBConfig.cmake PATH )
/usr/lib64/cmake/TBB/TBBConfig.cmake(46):  get_filename_component(_tbb_root /usr/lib64/cmake/TBB PATH )

which means it is looking in `/usr/lib64/cmake/TBB/lib/…` for its libraries. Looking into that config generator script to see what needs to happen.

Comment 8 Ben Boeckel 2021-02-22 14:34:45 UTC
Hmm. Seems like https://github.com/oneapi-src/oneTBB has it correct during a normal `install` process (at least when using its CMake build). No idea if that's a plausible switch for Rawhide? Seems upstream is moving to a turn-key solution eventually.

Playing around with the tarball directly, it looks like what is actually wanted is:

cmake -DSYSTEM_NAME=Linux -DINSTALL_DIR=$RPM_BUILD_ROOT%{_libdir}/cmake/TBB -P cmake/tbb_config_installer.cmake

Comment 9 Jerry James 2021-02-22 16:33:28 UTC
That didn't quite do it either, because TBBConfig.cmake wound up looking in /usr/lib for the shared libraries, which of course doesn't work if %{_libdir} == /usr/lib64.  This seems to produce the right output:

cmake -DSYSTEM_NAME=Linux -DINSTALL_DIR=$RPM_BUILD_ROOT%{_libdir}/cmake/TBB -DLIB_REL_PATH=../.. -P cmake/tbb_config_installer.cmake

I have started a Rawhide build with that invocation.  If it looks good, I'll push builds for F32-F34 next.

Comment 10 Ben Boeckel 2021-02-22 17:35:48 UTC
I'm not able to install it on Fedora 33 due to libstdc++ symbol versions, but it looks good to me at a glance. Thanks!

Comment 11 Fedora Update System 2021-02-22 21:55:47 UTC
FEDORA-2021-865cc5a09e has been submitted as an update to Fedora 33. https://bodhi.fedoraproject.org/updates/FEDORA-2021-865cc5a09e

Comment 12 Fedora Update System 2021-02-22 21:56:26 UTC
FEDORA-2021-c9be5cceb5 has been submitted as an update to Fedora 32. https://bodhi.fedoraproject.org/updates/FEDORA-2021-c9be5cceb5

Comment 13 Fedora Update System 2021-02-24 21:39:39 UTC
FEDORA-2021-c9be5cceb5 has been pushed to the Fedora 32 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2021-c9be5cceb5`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2021-c9be5cceb5

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 14 Fedora Update System 2021-02-24 21:54:54 UTC
FEDORA-2021-865cc5a09e has been pushed to the Fedora 33 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2021-865cc5a09e`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2021-865cc5a09e

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 15 Fedora Update System 2021-03-03 23:24:41 UTC
FEDORA-2021-c9be5cceb5 has been pushed to the Fedora 32 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 16 Fedora Update System 2021-03-04 20:06:57 UTC
FEDORA-2021-865cc5a09e has been pushed to the Fedora 33 stable repository.
If problem still persists, please make note of it in this bug report.