+Cc maintainer On Sat, May 08, 2021 at 05:28:57PM +0200, Rafael Sadowski wrote: > retroarch failed in my last bulk with the following error: > > c++ -O2 -pipe -Wno-switch -Wno-sign-compare -fno-strict-aliasing > -Wno-reorder -Wno-parentheses -ffast-math -DBSD -DHAVE_FILE_LOGGER > -DHAVE_SHADERPIPELINE -I./libretro-common/include -I./deps > -DHAVE_NETPLAYDISCOVERY -DHAVE_DR_MP3 -I./deps/7zip -DHAVE_DR_FLAC > -DHAVE_FLAC -I./deps/libFLAC/include -I./libretro-common/formats/libchdr > -Wall -I/usr/local/include -I/usr/X11R6/include -I/usr/local/include > -I./deps/7zip -Ideps/mbedtls -Igfx/include > -I./deps/glslang/glslang/glslang/OSDependent/Unix > -I./deps/glslang/glslang/OGLCompilersDLL -I./deps/glslang/glslang > -I./deps/glslang/glslang/glslang/MachineIndependent > -I./deps/glslang/glslang/glslang/Public -I./deps/glslang/glslang/SPIRV > -I./deps/glslang -I./deps/SPIRV-Cross -I. -Ideps -Ideps/stb -std=c++11 > -D__STDC_CONSTANT_MACROS -Wno-unused-result -Wno-unused-variable > -DHAVE_CONFIG_H -DRARCH_INTERNAL -D_FILE_OFFSET_BITS=64 > -DGLOBAL_CONFIG_DIR='"/etc"' -DHAVE_HID -DHAVE_LIBRETRODB -DHAVE_DYLIB > -DHAVE_DR_MP3 -DHAVE_RUNAHEAD -DHAVE_CC_RESAMPLER -DHAVE_LANGEXTRA > -finput-charset=UTF-8 -DHAVE_IMAGEVIEWER -I/usr/include -DQT_CORE_LIB > -I/usr/local/include/X11/qt5/QtCore -I/usr/local/include/X11/qt5 -DQT_GUI_LIB > -I/usr/local/include/X11/qt5/QtGui -I/usr/local/include/X11/qt5 -DQT_CORE_LIB > -I/usr/local/include/X11/qt5/QtCore -DQT_WIDGETS_LIB > -I/usr/local/include/X11/qt5/QtWidgets -I/usr/local/include/X11/qt5 > -I/usr/local/include/X11/qt5/QtCore -DQT_GUI_LIB > -I/usr/local/include/X11/qt5/QtGui -DQT_CORE_LIB -DQT_CONCURRENT_LIB > -I/usr/local/include/X11/qt5/QtConcurrent -I/usr/local/include/X11/qt5 > -DQT_CORE_LIB -I/usr/local/include/X11/qt5/QtCore -DQT_NETWORK_LIB > -I/usr/local/include/X11/qt5/QtNetwork -I/usr/local/include/X11/qt5 > -DQT_CORE_LIB -I/usr/local/include/X11/qt5/QtCore -DHAVE_MAIN -DHAVE_SSL > -DHAVE_COMMAND -DHAVE_STDIN_CMD -DHAVE_MENU -DHAVE_RGUI -DHAVE_MATERIALUI > -DHAVE_XMB -DHAVE_OZONE -DHAVE_OVERLAY -DHAVE_STB_FONT > -I/usr/X11R6/include/freetype2 -DHAVE_THREADS -DHAVE_THREAD_STORAGE > -DHAVE_X11 -I/usr/X11R6/include -I/usr/X11R6/include -I/usr/X11R6/include > -I/usr/X11R6/include -I/usr/X11R6/include -DHAVE_LIBUSB -DHAVE_HID > -I/usr/X11R6/include -I/usr/X11R6/include -I/usr/X11R6/include/libdrm > -I/usr/X11R6/include -I/usr/X11R6/include/libdrm -DHAVE_OPENGL -DHAVE_GLSL > -I/usr/X11R6/include -I/usr/X11R6/include/libdrm -I./deps -DHAVE_GL_FFT > -DHAVE_GL_SYNC -DHAVE_EGL -I/usr/X11R6/include -I/usr/X11R6/include/libdrm > -I/usr/local/include/SDL2 -I/usr/X11R6/include -D_REENTRANT > -I/usr/local/include -DHAVE_VULKAN -I/usr/X11R6/include -DHAVE_SLANG > -DHAVE_GLSLANG -DHAVE_SPIRV_CROSS -DHAVE_7ZIP -D_7ZIP_ST -DHAVE_IBXM > -DHAVE_DR_FLAC -I./deps -DHAVE_STDINT_H -DHAVE_LROUND -DFLAC__HAS_OGG=0 > -DFLAC_PACKAGE_VERSION="\"retroarch\"" -DHAVE_ZLIB -DHAVE_CHD -DWANT_SUBCODE > -DWANT_RAW_DATA_SECTOR -DHAVE_RTGA -DHAVE_RPNG -DHAVE_RJPEG -DHAVE_RBMP > -DHAVE_COMPRESSION -DHAVE_EASTEREGG -DHAVE_NETWORKING -DHAVE_NETWORK_CMD > -DHAVE_CHEEVOS -DHAVE_MINIUPNPC -DHAVE_BUILTINMINIUPNPC > -DMINIUPNPC_SET_SOCKET_TIMEOUT -DMINIUPNPC_GET_SRC_ADDR -I./deps > -Wno-deprecated-declarations -DHAVE_FFMPEG -Iffmpeg -DHAVE_COMPRESSION > -Wno-invalid-source-encoding -Wno-incompatible-ms-struct -MMD -c -o > obj-unix/release/./deps/glslang/glslang.o deps/glslang/glslang.cpp > In file included from deps/glslang/glslang.cpp:19: > In file included from ./deps/glslang/glslang/SPIRV/GlslangToSpv.h:41: > In file included from > ./deps/glslang/glslang/SPIRV/../glslang/Include/intermediate.h:55: > In file included from > ./deps/glslang/glslang/glslang/Public/../Include/../Include/Common.h:107: > ./deps/glslang/glslang/glslang/Public/../Include/PoolAlloc.h:307:54: error: > 'operator=' is a private member of 'glslang::TPoolAllocator' > void setAllocator(TPoolAllocator* a) { allocator = *a; } > ~~~~~~~~~ ^ ~~ > ./deps/glslang/glslang/glslang/Public/../Include/PoolAlloc.h:244:21: note: > declared private here > TPoolAllocator& operator=(const TPoolAllocator&); // don't allow > assignment operator > ^ > 1 error generated.
I ran into this as well. This error happens if graphics/vulkan-tools is installed on the build machine, so I suspect this is a hidden dependency. The upstream fix works for me. > > While here, regen WANTLIB and drop COMPILER. COMPILER is set by x11/qt5. > > Rafael > > > Index: Makefile > =================================================================== > RCS file: /cvs/ports/emulators/retroarch/Makefile,v > retrieving revision 1.19 > diff -u -p -u -p -r1.19 Makefile > --- Makefile 29 Apr 2020 14:12:08 -0000 1.19 > +++ Makefile 8 May 2021 15:25:41 -0000 > @@ -5,7 +5,7 @@ COMMENT = generic multi-emulator fronte > V = 1.7.6 > DISTNAME = RetroArch-$V > PKGNAME = retroarch-$V > -REVISION = 2 > +REVISION = 3 > > CATEGORIES = emulators > > @@ -14,16 +14,13 @@ HOMEPAGE = https://www.libretro.com/ > # code GPLv3+, assets CC-BY-4.0 > PERMIT_PACKAGE = Yes > > -WANTLIB += ${COMPILER_LIBCXX} > -WANTLIB += EGL GL Qt5Concurrent Qt5Core Qt5Gui Qt5Network Qt5Widgets > -WANTLIB += SDL2 X11 X11-xcb Xext Xinerama Xv Xxf86vm ass avcodec > -WANTLIB += avformat avutil c crypto drm freetype gbm m openal > -WANTLIB += ssl swresample swscale usb-1.0 xcb xkbcommon z > - > -COMPILER = base-clang ports-gcc base-gcc > +WANTLIB += ${COMPILER_LIBCXX} EGL GL Qt5Concurrent Qt5Core Qt5Gui > +WANTLIB += Qt5Network Qt5Widgets SDL2 X11 X11-xcb Xext Xinerama > +WANTLIB += Xrandr Xv Xxf86vm ass avcodec avformat avutil c crypto > +WANTLIB += drm freetype gbm m openal ssl swresample swscale usb-1.0 > +WANTLIB += xcb xkbcommon z > > MASTER_SITES = > https://github.com/libretro/RetroArch/releases/download/v$V/ > - > EXTRACT_SUFX = .tar.xz > > MAINTAINER = Anthony J. Bentley <anth...@anjbe.name> > Index: patches/patch-deps_glslang_glslang_glslang_Include_PoolAlloc_h > =================================================================== > RCS file: patches/patch-deps_glslang_glslang_glslang_Include_PoolAlloc_h > diff -N patches/patch-deps_glslang_glslang_glslang_Include_PoolAlloc_h > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-deps_glslang_glslang_glslang_Include_PoolAlloc_h 8 May > 2021 15:25:41 -0000 > @@ -0,0 +1,18 @@ > +$OpenBSD$ > + > +TPoolAllocator is not copy assignable, so this setter could never have > +been used. After a recent change (878a24ee2), new versions of Clang > +reject this code outright. > +https://github.com/libretro/RetroArch/commit/e4b9311ac15570bfe757d77de1c66584f95e1df9 > + > +Index: deps/glslang/glslang/glslang/Include/PoolAlloc.h > +--- deps/glslang/glslang/glslang/Include/PoolAlloc.h.orig > ++++ deps/glslang/glslang/glslang/Include/PoolAlloc.h > +@@ -304,7 +304,6 @@ class pool_allocator { (public) > + size_type max_size() const { return static_cast<size_type>(-1) / > sizeof(T); } > + size_type max_size(int size) const { return static_cast<size_type>(-1) > / size; } > + > +- void setAllocator(TPoolAllocator* a) { allocator = *a; } > + TPoolAllocator& getAllocator() const { return allocator; } > + > + protected: >