some existing COMPILER lines with arch restrictions etc. In the usual
case this is now using "COMPILER = base-clang ports-gcc base-gcc" on
ports with c++ libraries in WANTLIB.
This is basically intended to be a noop on architectures using clang
as the system compiler, but help with other architectures where we
currently have many ports knocked out due to building with an unsuitable
compiler -
- some ports require c++11/newer so the GCC version in base that is used
on these archirtectures is too old.
- some ports have conflicts where an executable is built with one compiler
(e.g. gcc from base) but a library dependency is built with a different
one (e.g. gcc from ports), resulted in mixing incompatible libraries in the
same address space.
devel/gmp is intentionally skipped as it's on the path to building gcc -
the c++ library there is unused in ports (and not built by default upstream)
so intending to disable building gmpcxx in a future commit.
Upstream now requires SDL2, so make the necessary adjustments.
Upstream added an openbsd sound driver, but it doesn't use
the sndio API, so switch the default sound driver to sdl which
does use sndio. Make the openbsd driver still work by default
by defaulting the audio device to /dev/audio0 in that case.
Both the sound driver and sound device are configurable in the
mednafen configuration file.
Based on a patch from anthk@disroot.org
Sound issues pointed out by Bryan Linton <bl@shoshoni.info>
Feedback from ratchov@
OK bentley@
We now have an up-to-date emulators/mame port for which we can build
and distribute binary packages for amd64 and i386. More information
here: https://marc.info/?l=openbsd-ports&m=151514926004836&w=2
MAME and MESS merged in 2015 so emulators/mame contains both.
OK naddy@, bentley@, jca@
We now have an up-to-date emulators/mame port for which we can build
and distribute binary packages for amd64 and i386. More information
here: https://marc.info/?l=openbsd-ports&m=151514926004836&w=2
MAME and MESS merged in 2015 so emulators/mame contains both.
OK naddy@, bentley@, jca@
Dolphin is an emulator for two recent Nintendo video game consoles: the
GameCube and the Wii. It allows PC gamers to enjoy games for these two
consoles in full HD (1080p) with several enhancements: compatibility with
all PC controllers, turbo speed, networked multiplayer, and even more.
ELF_RANDOMIZE_LIMIT was bumped to 1MB for retguard, but MAME actually
requires 4MB, so it fails on statup.
There is no sense bumping ELF_RANDOMIZE_LIMIT again just for one program,
so disable retguard by adding -fno-ret-protector to CFLAGS.
Discussed with mortimer@
src/core/libcore.a(uds_beacon.cpp.o): In function `non-virtual thunk to CryptoPP::BlockCipherFinal<(CryptoPP::CipherDir)0, CryptoPP::Rijndael::Enc>::~BlockCipherFinal()':
uds_beacon.cpp:(.text._ZThn4_N8CryptoPP16BlockCipherFinalILNS_9CipherDirE0ENS_8Rijndael3EncEED0Ev[_ZThn4_N8CryptoPP16BlockCipherFinalILNS_9CipherDirE0ENS_8Rijndael3EncEED0Ev]+0x75): undefined reference to `operator delete(void*, std::align_val_t)'
src/core/libcore.a(uds_beacon.cpp.o): In function `non-virtual thunk to CryptoPP::ClonableImpl<CryptoPP::BlockCipherFinal<(CryptoPP::CipherDir)0, CryptoPP::Rijndael::Enc>, CryptoPP::Rijndael::Enc>::Clone() const':
uds_beacon.cpp:(.text._ZThn4_NK8CryptoPP12ClonableImplINS_16BlockCipherFinalILNS_9CipherDirE0ENS_8Rijndael3EncEEES4_E5CloneEv[_ZThn4_NK8CryptoPP12ClonableImplINS_16BlockCipherFinalILNS_9CipherDirE0ENS_8Rijndael3EncEEES4_E5CloneEv]+0x20): undefined reference to `operator new(unsigned long, std::align_val_t)'
uds_beacon.cpp:(.text._ZThn4_NK8CryptoPP12ClonableImplINS_16BlockCipherFinalILNS_9CipherDirE0ENS_8Rijndael3EncEEES4_E5CloneEv[_ZThn4_NK8CryptoPP12ClonableImplINS_16BlockCipherFinalILNS_9CipherDirE0ENS_8Rijndael3EncEEES4_E5CloneEv]+0x58): undefined reference to `operator delete(void*, std::align_val_t)'
src/core/libcore.a(ccm.cpp.o): In function `HW::AES::(anonymous namespace)::CCM_3DSVariant_Final<true>::~CCM_3DSVariant_Final()':
ccm.cpp:(.text+0xbf1): undefined reference to `operator delete(void*, std::align_val_t)'
src/core/libcore.a(ccm.cpp.o): In function `non-virtual thunk to HW::AES::(anonymous namespace)::CCM_3DSVariant_Final<true>::~CCM_3DSVariant_Final()':
ccm.cpp:(.text+0xca4): undefined reference to `operator delete(void*, std::align_val_t)'
src/core/libcore.a(ccm.cpp.o): In function `non-virtual thunk to HW::AES::(anonymous namespace)::CCM_3DSVariant_Final<true>::~CCM_3DSVariant_Final()':
ccm.cpp:(.text+0xd04): undefined reference to `operator delete(void*, std::align_val_t)'
[...]