Skip to content

Commit

Permalink
devel/concurrencpp: fix build on powerpc*
Browse files Browse the repository at this point in the history
Fixed in LLVM 16:
/usr/bin/c++ -DCRCPP_EXPORT_API -Dconcurrencpp_EXPORTS -isystem /wrkdirs/usr/ports/devel/concurrencpp/work/concurrencpp-v.0.1.6/include -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -O2 -pipe -fstack-protector-strong -fno-strict-aliasing   -DNDEBUG -std=c++20 -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -pthread -MD -MT CMakeFiles/concurrencpp.dir/source/timers/timer_queue.cpp.o -MF CMakeFiles/concurrencpp.dir/source/timers/timer_queue.cpp.o.d -o CMakeFiles/concurrencpp.dir/source/timers/timer_queue.cpp.o -c /wrkdirs/usr/ports/devel/concurrencpp/work/concurrencpp-v.0.1.6/source/timers/timer_queue.cpp
fatal error: error in backend: failed to perform tail call elimination on a call site marked musttail
PLEASE submit a bug report to https://bugs.freebsd.org/submit/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0.	Program arguments: /usr/bin/c++ -DCRCPP_EXPORT_API -Dconcurrencpp_EXPORTS -isystem /wrkdirs/usr/ports/devel/concurrencpp/work/concurrencpp-v.0.1.6/include -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -DNDEBUG -std=c++20 -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -pthread -MD -MT CMakeFiles/concurrencpp.dir/source/timers/timer_queue.cpp.o -MF CMakeFiles/concurrencpp.dir/source/timers/timer_queue.cpp.o.d -o CMakeFiles/concurrencpp.dir/source/timers/timer_queue.cpp.o -c /wrkdirs/usr/ports/devel/concurrencpp/work/concurrencpp-v.0.1.6/source/timers/timer_queue.cpp
1.	<eof> parser at end of file
2.	Code generation
3.	Running pass 'Function Pass Manager' on module '/wrkdirs/usr/ports/devel/concurrencpp/work/concurrencpp-v.0.1.6/source/timers/timer_queue.cpp'.
4.	Running pass 'PowerPC DAG->DAG Pattern Instruction Selection' on function '@_ZN12concurrencpp11timer_queue22make_delay_object_implENSt3__16chrono8durationIxNS1_5ratioILl1ELl1000EEEEENS1_10shared_ptrIS0_EENS7_INS_8executorEEE.resume'
 #0 0x0000000014b1252c (/usr/bin/c+++0x14b1252c)
 #1 0x0000000014b0fd00 (/usr/bin/c+++0x14b0fd00)
 #2 0x0000000014aab0cc (/usr/bin/c+++0x14aab0cc)
 #3 0x0000000014aab020 (/usr/bin/c+++0x14aab020)
 #4 0x0000000014afc590 (/usr/bin/c+++0x14afc590)
 #5 0x00000000117cd530 (/usr/bin/c+++0x117cd530)
 #6 0x0000000014ab4fe0 (/usr/bin/c+++0x14ab4fe0)
 #7 0x0000000014ab4e6c (/usr/bin/c+++0x14ab4e6c)
 #8 0x00000000154bd3f0 (/usr/bin/c+++0x154bd3f0)
 #9 0x0000000014d5f9d0 (/usr/bin/c+++0x14d5f9d0)
c++: error: clang frontend command failed with exit code 70 (use -v to see invocation)
FreeBSD clang version 14.0.5 (https://github.com/llvm/llvm-project.git llvmorg-14.0.5-0-gc12386ae247c)
Target: powerpc64le-unknown-freebsd13.2
Thread model: posix
InstalledDir: /usr/bin
  • Loading branch information
pkubaj committed May 28, 2023
1 parent 8e53bb8 commit 719b60d
Showing 1 changed file with 3 additions and 5 deletions.
8 changes: 3 additions & 5 deletions devel/concurrencpp/Makefile
Expand Up @@ -19,11 +19,9 @@ CMAKE_ON= BUILD_SHARED_LIBS

.include <bsd.port.options.mk>

.if (${ARCH} == powerpc64le || ${ARCH} == powerpc64 || ${ARCH} == powerpc) && ${OSVERSION} < 1300523
BUILD_DEPENDS= llvm13>0:devel/llvm13
CPP= ${LOCALBASE}/bin/clang-cpp13
CC= ${LOCALBASE}/bin/clang13
CXX= ${LOCALBASE}/bin/clang++13
.if ${ARCH} == powerpc64le || ${ARCH} == powerpc64 || ${ARCH} == powerpc
CXX= clang++${LLVM_VERSION}
USES+= llvm:min=16
.endif

do-test: # same as recommended in https://github.com/David-Haim/concurrencpp#building-installing-and-testing
Expand Down

0 comments on commit 719b60d

Please sign in to comment.