See PR 238330 for details, which is about updating the default version of GCC from 8 to 9. Detailed logs at: http://pb2.nyi.freebsd.org/data/120i386-default-PR238330/2019-06-09_20h27m22s/logs/errors/ncbi-blast+-2.8.1_2.log http://package22.nyi.freebsd.org/data/112amd64-default-PR238330/2019-06-09_20h29m30s/logs/errors/ncbi-blast+-2.8.1_2.log http://package18.nyi.freebsd.org/data/120amd64-default-PR238330/2019-06-09_20h26m27s/logs/errors/ncbi-blast+-2.8.1_2.log The update to a newer version of GCC is blocked by this issue which appears to be about improper use of GOMP: ~~^~~~~~~~~~~~~~~~~~~~~ /wrkdirs/usr/ports/biology/ncbi-blast+/work/ncbi-blast-2.8.1+-src/c++/src/objtools/blast/seqdb_reader/test/seqdb_perf.cpp:152:34: error: 'kScanUncompressed' not specified in enclosing 'parallel' 152 | if (m_DbIsProtein || kScanUncompressed) { | ^~~~~~~~~~~~~~~~~ /wrkdirs/usr/ports/biology/ncbi-blast+/work/ncbi-blast-2.8.1+-src/c++/src/objtools/blast/seqdb_reader/test/seqdb_perf.cpp:140:13: error: enclosing 'parallel' 140 | #pragma omp parallel default(none) num_threads(m_DbHandles.size()) \ | ^~~ gmake[7]: *** [/wrkdirs/usr/ports/biology/ncbi-blast+/work/ncbi-blast-2.8.1+-src/c++/ReleaseMT/build/Makefile.rules:88: seqdb_perf.o] Error 1
Reassigning to maintainer.
Looking into it.
2.9.0 builds fine with GCC 9. https://github.com/outpaddling/freebsd-ports-wip/tree/master/ncbi-blast%2B I'll commit an update following full testing.
A commit references this bug: Author: jwb Date: Wed Jun 12 23:53:33 UTC 2019 New revision: 504047 URL: https://svnweb.freebsd.org/changeset/ports/504047 Log: biology/ncbi-blast+: Upgrade to 2.9.0 Fixes build issue with gcc9 PR: 238471 Reported by: gerald Changes: head/biology/ncbi-blast+/Makefile head/biology/ncbi-blast+/distinfo head/biology/ncbi-blast+/pkg-plist
Great, thank you, Jason!
Reopen. 2.9.0 still fails to build with GCC 9. The error is the same as in comment #0. New failure logs: http://package18.nyi.freebsd.org/data/120amd64-default-PR238330/2019-07-09_07h29m57s/logs/ncbi-blast+-2.9.0.log http://package23.nyi.freebsd.org/data/112i386-default-PR238330/2019-07-09_07h28m27s/logs/ncbi-blast+-2.9.0.log
A commit references this bug: Author: jwb Date: Thu Jul 11 13:53:31 UTC 2019 New revision: 506409 URL: https://svnweb.freebsd.org/changeset/ports/506409 Log: ncbi-blast+: Fix build with gcc9 GCC 9 requires OpenMP variables to be explicitly defined as shared or private where earlier versions fell back on default. New patch sent upstream. PR: 238471 Reported by: gerald Changes: head/biology/ncbi-blast+/files/patch-src_objtools_blast_seqdb__reader_test_seqdb__perf.cpp
Build was returning 0 status despite the failure in seqdb_perf.cpp. I must have missed the plist issue during install, which is odd because is regularly use a script for port testing that runs portlint and all port stages. Sorry for the mishap.
There is a plist issue now. http://pkg.awarnach.mathstat.dal.ca/data/12amd64-default/2019-07-12_15h14m44s/logs/errors/ncbi-blast+-2.9.0_1.log ====> Running Q/A tests (stage-qa) Notice: You have some Perl modules as dependencies but you do not have devel/p5-Module-CoreList installed, the perlcore QA check gets better results when using it, especially with older Perl versions. ====> Checking for pkg-plist issues (check-plist) ===> Parsing plist ===> Checking for items in STAGEDIR missing from pkg-plist ===> Checking for items in pkg-plist which are not in STAGEDIR Error: Missing: bin/seqdb_perf ===> Error: Plist issues found. *** Error code 1
No change is too small to break a build... GCC 8 and 9 are incompatible in handling const variables with OpenMP default(none). All const variables default to shared even with default(none) present. 8 errors out if a const variable is explicitly defined as shared and 9 requires an explicit definition. Using an upstream trunk patch for now, which checks the compiler version. Also discussing more portable approaches to avoid future issues.