Bug 252651

Summary: Making math/suitesparse depend on onetbb
Product: Ports & Packages Reporter: Ganael LAPLANCHE <martymac>
Component: Individual Port(s)Assignee: freebsd-fortran (Nobody) <fortran>
Status: Closed FIXED    
Severity: Affects Some People CC: fortran, martymac, swills, thierry, val
Priority: --- Flags: bugzilla: maintainer-feedback? (fortran)
martymac: maintainer-feedback? (fortran)
Version: Latest   
Hardware: Any   
OS: Any   
Bug Depends on:    
Bug Blocks: 252648, 252790    
Attachments:
Description Flags
Proposed patch to disable TBB option none

Description Ganael LAPLANCHE freebsd_committer freebsd_triage 2021-01-13 21:14:44 UTC
Hello,

As a maintainer of math/suitesparse, could you have a look at PR #252648:

  https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=252648

In short, TBB version 2021 will soon be available as devel/onetbb but the port you maintain does not build correctly with it, see the following Poudriere run:

  http://box.martymac.org/FreeBSD-Packages/build.html?mastername=FBSD122amd64-tbb-migr&build=2021-01-13_17h15m06s

and error logs:

http://box.martymac.org/FreeBSD-Packages/data/FBSD122amd64-tbb-migr/2021-01-13_17h15m06s/logs/errors/suitesparse-5.8.1.log

c++ -O2 -pipe  -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include  -O3 -fexceptions -fPIC -fopenmp -DHAVE_TBB   -I../../CHOLMOD/Include -I../../SuiteSparse_config -I../Include -c ../Source/spqr_parallel.cpp
../Source/spqr_parallel.cpp:10:10: fatal error: 'tbb/task_scheduler_init.h' file not found
#include <tbb/task_scheduler_init.h>
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.

Could you try to provide a patch (important: *by replying to this PR*) to facilitate the migration to devel/onetbb ?

To help you modifying your port, expected patches to devel/tbb and devel/onetbb are available in PR #252648.

Thanks for your contribution,
Best regards,

Ganael.
Comment 1 Ganael LAPLANCHE freebsd_committer freebsd_triage 2021-01-16 14:26:43 UTC
Created attachment 221631 [details]
Proposed patch to disable TBB option
Comment 2 Ganael LAPLANCHE freebsd_committer freebsd_triage 2021-01-16 14:27:33 UTC
Hello,

We can disable TBB option while waiting for a proper patch (see attached patch).

Would that be acceptable ?

Ganael.
Comment 3 Thierry Thomas freebsd_committer freebsd_triage 2021-01-16 16:16:00 UTC
I guess that this has an impact on performances, but this port is a suite of several different libraries, and this is difficult to evaluate.

Thus your patch seems acceptable if you do not commit it to early: please wait for the latest moment!
Comment 4 Ganael LAPLANCHE freebsd_committer freebsd_triage 2021-01-16 18:59:14 UTC
Hi Thierry,

OK, thanks for your feedback. I'll commit it during the switch then.

Have a nice w-e,

Ganael.
Comment 5 Val Packett 2021-01-19 12:58:06 UTC
Raised an issue upstream:

https://github.com/DrTimothyAldenDavis/SuiteSparse/issues/72
Comment 6 Ganael LAPLANCHE freebsd_committer freebsd_triage 2021-01-19 15:07:27 UTC
Thanks!
Comment 7 commit-hook freebsd_committer freebsd_triage 2021-02-19 15:15:04 UTC
A commit references this bug:

Author: martymac
Date: Fri Feb 19 15:14:55 UTC 2021
New revision: 566074
URL: https://svnweb.freebsd.org/changeset/ports/566074

Log:
  Introduce devel/onetbb and mark devel/tbb as legacy

  Intel oneAPI tbb 2021.1 (onetbb) has been released[1][2] and has deprecated
  several interfaces over tbb 2020, breaking most dependent ports.

  Old tbb 2020 will be kept for a certain time to allow transition but will be
  removed in a near future as it CONFLICTS with devel/onetbb. New ports should
  now use devel/onetbb instead of devel/tbb.

  We tried to move a maximum number of dependent ports to devel/onetbb (or
  disable dependency when not possible), but some of them still remain stuck
  to devel/tbb. Remaining ones have not been identified as major dependencies
  themselves and will be fixed as soon as updates are available from upstream.

  PR:		252648, 252688 [3], 252683 [4], 252651 [5], 252690 [3], 252693 [3],
  	252695 [3], 252696 [3], 252786 [3], 252649, 252868 [6], 252870 [5],
  	252684 [7], 252785 [7]
  Approved by:	yuri [3], jwb [4], thierry [5], FreeBSD@Shaneware.biz [6],
  	maintainer timeout [7]

  [1] https://software.intel.com/content/www/us/en/develop/articles/intel-oneapi-threading-building-blocks-release-notes.html
  [2] https://software.intel.com/content/www/us/en/develop/articles/tbb-revamp.html

Changes:
  head/archivers/par2cmdline-tbb/Makefile
  head/biology/bowtie2/Makefile
  head/cad/opencascade/Makefile
  head/devel/Makefile
  head/devel/onetbb/
  head/devel/onetbb/Makefile
  head/devel/onetbb/distinfo
  head/devel/onetbb/files/
  head/devel/onetbb/files/onetbb.pc.in
  head/devel/onetbb/files/patch-src-tbbbind-CMakeLists.txt
  head/devel/onetbb/files/patch-test-common-memory_usage.h
  head/devel/onetbb/files/patch-test-tbbmalloc-test_malloc_compliance.cpp
  head/devel/onetbb/pkg-descr
  head/devel/onetbb/pkg-plist
  head/devel/tbb/Makefile
  head/devel/tbb/pkg-descr
  head/graphics/blender/Makefile
  head/graphics/blender/Makefile.options
  head/graphics/blender/files/patch-intern_cycles_device_device__cpu.cpp
  head/graphics/blender/files/patch-intern_cycles_util_util__task.cpp
  head/graphics/blender/files/patch-intern_cycles_util_util__task.h
  head/graphics/blender/files/patch-intern_cycles_util_util__tbb.h
  head/graphics/blender/files/patch-source_blender_blenlib_BLI__index__range.hh
  head/graphics/blender/files/patch-source_blender_blenlib_BLI__task.h
  head/graphics/blender/files/patch-source_blender_blenlib_intern_task__pool.cc
  head/graphics/embree/Makefile
  head/graphics/oidn/Makefile
  head/graphics/opencv/Makefile
  head/graphics/openimageio/Makefile
  head/math/dune-common/Makefile
  head/math/dune-geometry/Makefile
  head/math/dune-grid/Makefile
  head/math/dune-pdelab/Makefile
  head/math/dune-uggrid/Makefile
  head/math/openturns/Makefile
  head/math/saga/Makefile
  head/math/suitesparse/Makefile
  head/misc/ngraph/Makefile
Comment 8 Thierry Thomas freebsd_committer freebsd_triage 2022-03-12 08:51:37 UTC
Fixed in the draft SuiteSparse v5.11.0 (TBB is removed).
See https://github.com/DrTimothyAldenDavis/SuiteSparse/issues/72#issuecomment-1065706830.

Waiting for the release.
Comment 9 Ganael LAPLANCHE freebsd_committer freebsd_triage 2022-03-13 14:11:41 UTC
Great! Thanks for the update Thierry!
Comment 10 Ganael LAPLANCHE freebsd_committer freebsd_triage 2022-10-03 17:53:01 UTC
Hello Thierry,

As TBB has been removed in 5.11 (https://github.com/DrTimothyAldenDavis/SuiteSparse/blob/master/SPQR/Doc/ChangeLog#L1) I presume we can close that PR.

Feel free to re-open it if necessary.

Thanks again!

Ganael.