Use LLVM on LLVM architectures to avoid mixing C++ libraries. Add USES=compiler:c++11-lang to force new GCC on GCC architectures (the port requires C++11 anyway). Also add ? to toolchain setup to allow switching to GCC binaries.
Reported by: jbeich
Approved by: mentors (implicit approval)
This is an experimental version for testing purposes.
Notably this new development version includes privilege separation;
operations which do not require root are run as the user _dhcp.
aarch64 and armv7 weren't affected. amd64 was fixed since LLD 7 but
i386 still fails. Losing LTO (and CFI) support is not worth just for
consistency with an architecture that may become Tier2 in future.
ld: error: cannot preempt symbol: alGetSourcei
>>> defined in /usr/local/lib/libopenal.so
>>> referenced by FmodOpenALBridge.cpp
>>> CMakeFiles/aquaria.dir/BBGE/FmodOpenALBridge.cpp.o:(OggDecoder::decode_loop(OggDecoder*))
Pointy hat to: jbeich (bug 242307 comment 11)
Use USES=compiler:openmp instead of hard dependency on ports LLVM. Use new GCC when using base GCC.
Remove -D_POSIX_SOURCE -D_POSIX_C_SOURCE=200809L, this causes some errno.h macros not being visible.
PR: 242234
Approved by: yuri (maintainer), linimon (mentor)
Differential Revision: https://reviews.freebsd.org/D22580
The backtrace-sys crate no longer needs gmake since 0.1.20.
sysutils/flowgger still uses backtrace-sys-0.1.14. Since it is the
only USES=cargo port left that needs it, move the gmake dependency
directly to it instead.
lang/rust currently has backtrace-sys-0.1.30. It also vendors
jemalloc-sys (which also needs gmake to build) but it is hidden
behind rustc's jemalloc feature which we do not currently activate.
It should be safe to remove gmake in lang/rust too.
PR: 242267
Reported by: mikael.urankar@gmail.com
Setting GSSAPILDFLAGS for USES=gssapi causes -L/usr/lib to be added to LDFLAGS.
This breaks compilation of some ports, like www/squid on GCC architectures when new GCC from ports needs to be used.
The new GCC tries to link to libstdc++ and fails. Not setting it explicitely causes /usr/local/lib/gcc8/libstdc++.so to be taken instead and /usr/lib is searched for libraries anyway, just with lower priority.
Tested on powerpc64 and amd64 on www/squid.
PR: 237275
Approved by: mentors (implicit approval), hrs (maintainer timeout)
Use newer GCC:
../include/xlsxwriter/workbook.h:911: error: wrong number of arguments specified for 'deprecated' attribute
Approved by: mentors (implicit approval)
Base LLVM9 fails to build this port with clang crash (reported on https://bugs.llvm.org/show_bug.cgi?id=43862). The port builds when using LLVM8. Since we depend on LLVM8 anyway, use it also for compilation on elfv2.
Approved by: zeising (maintainer), tcberner (mentor)
Differential Revision: https://reviews.freebsd.org/D22274
We'll have a new abi on ppc64 soon (ELFv2) which is incompatible with the ELFv1 abi. We need to detect the abi on which we build stuff.
Submitted by: mikael_urankar@gmail.com
Approved by: portmgr (earlier version)
Differential Revision: https://reviews.freebsd.org/D22039