Bug 247753 - Mk/Uses/compiler.mk: compiler:openmp still forces the use of gcc
Summary: Mk/Uses/compiler.mk: compiler:openmp still forces the use of gcc
Status: New
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Ports Framework (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: Port Management Team
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-07-04 04:43 UTC by tjlegg
Modified: 2022-12-30 00:24 UTC (History)
9 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description tjlegg 2020-07-04 04:43:07 UTC
I'd like to thank the FreeBSD team for enabling openmp for the base clang. 

Unfortunately, most of the ports that have an OPENMP option, just default to OPENMP_USES= compiler:openmp.

If you look at Mk/Uses/compiler.mk, the openmp option forces the use of gcc, which defeats the purpose of having base being openmp-enabled.

I've altered a few ports like graphics/libraw, graphics/ImageMagick7, and math/fftw3 to have the OPENMP option to provide OPENMP_FLAGS= -lm -lomp and LDFLAGS+= ${OPENMP_FLAGS} instead of OPENMP_USES= compiler:openmp.

These libraries compile successfully without a gcc9 dependency. Digikam tells that its raw demosaicing is now parallelised based on libraw having a functional openmp.

Rather than hand edit port Makefiles, would it be possible to update the compiler:openmp option to reflect the work that has landed in base?
Comment 1 Thierry Thomas freebsd_committer freebsd_triage 2020-07-04 08:26:31 UTC
Seconded: I just removed this in math/suitesparse.
Comment 2 Vladimir Druzenko freebsd_committer freebsd_triage 2021-01-03 10:11:00 UTC
Check this: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=252379
Comment 3 commit-hook freebsd_committer freebsd_triage 2021-01-11 16:51:54 UTC
A commit references this bug:

Author: jwb
Date: Mon Jan 11 16:51:16 UTC 2021
New revision: 561227
URL: https://svnweb.freebsd.org/changeset/ports/561227

Log:
  biology/canu: Drop dependency on gcc

  Replace compiler:openmp with compiler:c++11-lang and localbase

  PR:             port/247753, ports/252379

Changes:
  head/biology/canu/Makefile
Comment 4 commit-hook freebsd_committer freebsd_triage 2021-01-11 16:56:03 UTC
A commit references this bug:

Author: jwb
Date: Mon Jan 11 16:55:16 UTC 2021
New revision: 561228
URL: https://svnweb.freebsd.org/changeset/ports/561228

Log:
  biology/cd-hit: Drop dependency on gcc

  Simply remove compiler:openmp
  Builds with base compiler on amd64, i386, and powerpc64

  PR:             port/247753, ports/252379

Changes:
  head/biology/cd-hit/Makefile
Comment 5 commit-hook freebsd_committer freebsd_triage 2021-01-11 16:59:09 UTC
A commit references this bug:

Author: jwb
Date: Mon Jan 11 16:58:14 UTC 2021
New revision: 561229
URL: https://svnweb.freebsd.org/changeset/ports/561229

Log:
  biology/fasttree: Drop dependency on gcc

  Simply remove compiler:openmp
  Builds with base compiler on amd64, i386, and powerpc64 12.x-RELEASE

  PR:             port/247753, ports/252379

Changes:
  head/biology/fasttree/Makefile
Comment 6 commit-hook freebsd_committer freebsd_triage 2021-01-11 17:10:15 UTC
A commit references this bug:

Author: jwb
Date: Mon Jan 11 17:09:38 UTC 2021
New revision: 561231
URL: https://svnweb.freebsd.org/changeset/ports/561231

Log:
  biology/gcta: Drop dependency on gcc

  Replace compiler:openmp with compiler:c++11-lang
  Clang build also requires localbase:ldflags
  Build tested on amd64, i386 and powerpc64 12.x-RELEASE

  PR:             port/247753, ports/252379

Changes:
  head/biology/gcta/Makefile
Comment 7 commit-hook freebsd_committer freebsd_triage 2021-01-11 17:18:22 UTC
A commit references this bug:

Author: jwb
Date: Mon Jan 11 17:17:36 UTC 2021
New revision: 561233
URL: https://svnweb.freebsd.org/changeset/ports/561233

Log:
  biology/ncbi-blast+: Drop dependency on gcc

  Replace compiler:openmp with compiler:c++14-lang
  Clang build also requires localbase:ldflags and a source patch to explicitly
  set variables to shared
  GCC-based platforms still require -latomic

  PR:             port/247753, ports/252379

Changes:
  head/biology/ncbi-blast+/Makefile
  head/biology/ncbi-blast+/files/patch-src_objtools_blast_seqdb__reader_test_seqdb__perf.cpp
Comment 8 commit-hook freebsd_committer freebsd_triage 2021-01-11 17:28:29 UTC
A commit references this bug:

Author: jwb
Date: Mon Jan 11 17:27:30 UTC 2021
New revision: 561234
URL: https://svnweb.freebsd.org/changeset/ports/561234

Log:
  biology/stacks: Drop dependency on gcc

  Replace compiler:openmp with compiler:c++11-lang and localbase
  Set USE_GCC for i386 to work around limitations in clang atomic (PR 230888)

  PR:             port/247753, ports/252379

Changes:
  head/biology/stacks/Makefile
Comment 9 commit-hook freebsd_committer freebsd_triage 2021-01-11 17:40:36 UTC
A commit references this bug:

Author: jwb
Date: Mon Jan 11 17:39:52 UTC 2021
New revision: 561235
URL: https://svnweb.freebsd.org/changeset/ports/561235

Log:
  biology/star: Drop dependency on gcc

  Replace compiler:openmp with compiler:c++11-lang and localbase

  PR:             port/247753, ports/252379

Changes:
  head/biology/star/Makefile
  head/biology/star/files/patch-Makefile
Comment 10 commit-hook freebsd_committer freebsd_triage 2021-01-11 17:43:43 UTC
A commit references this bug:

Author: jwb
Date: Mon Jan 11 17:43:22 UTC 2021
New revision: 561236
URL: https://svnweb.freebsd.org/changeset/ports/561236

Log:
  sysutils/parafly: Upgrade to 0.1.0 from Github, drop gcc dependency

  Simply remove compiler:openmp
  Builds with base compiler on amd64, i386, and powerpc64 12.x-RELEASE

  PR:             port/247753, ports/252379

Changes:
  head/sysutils/parafly/Makefile
  head/sysutils/parafly/distinfo
  head/sysutils/parafly/pkg-descr
Comment 11 commit-hook freebsd_committer freebsd_triage 2021-01-11 17:54:56 UTC
A commit references this bug:

Author: jrm
Date: Mon Jan 11 17:54:42 UTC 2021
New revision: 561239
URL: https://svnweb.freebsd.org/changeset/ports/561239

Log:
  biology/hyphy: Remove USES=compiler:openmp

  USES=compiler:openmp still forces building with GCC.  This is no longer
  necessary on tier 1 platforms, which have openmp in the base system.

  PR:		247753, 252379

Changes:
  head/biology/hyphy/Makefile
Comment 12 commit-hook freebsd_committer freebsd_triage 2021-01-12 18:12:48 UTC
A commit references this bug:

Author: jrm
Date: Tue Jan 12 18:12:13 UTC 2021
New revision: 561368
URL: https://svnweb.freebsd.org/changeset/ports/561368

Log:
  biology/iqtree: Remove USES=compiler:openmp, fix amd64 clang++ build

  - USES=compiler:openmp still forces building with GCC.  This is no longer
    necessary on tier 1 platforms, which have openmp in base.

  - Mark broken on i386, because base clang doesn't have 64 bit atomic
    functions for i386 (see bug 230888).

  PR:		247753, 252379
  Submitted by:	cmt (based on)

Changes:
  head/biology/iqtree/Makefile
  head/biology/iqtree/files/
  head/biology/iqtree/files/patch-CMakeLists.txt
Comment 13 Vladimir Druzenko freebsd_committer freebsd_triage 2022-08-13 18:59:46 UTC
Close this?