diff --git a/srcpkgs/prboom-plus/patches/gcc14.patch b/srcpkgs/prboom-plus/patches/gcc14.patch new file mode 100644 index 00000000000..1cae1c8e5c1 --- /dev/null +++ b/srcpkgs/prboom-plus/patches/gcc14.patch @@ -0,0 +1,54 @@ +Source: https://src.fedoraproject.org/rpms/prboom-plus/blob/rawhide/f/pointer-types.patch + +--- prboom2/src/gl_preprocess.c~ 2023-06-20 02:50:23.000000000 -0500 ++++ prboom2/src/gl_preprocess.c 2024-02-06 11:30:42.881266822 -0600 +@@ -494,10 +494,10 @@ + return; + } + // set callbacks +- gluTessCallback(tess, GLU_TESS_BEGIN, ntessBegin); +- gluTessCallback(tess, GLU_TESS_VERTEX, ntessVertex); +- gluTessCallback(tess, GLU_TESS_ERROR, ntessError); +- gluTessCallback(tess, GLU_TESS_COMBINE, ntessCombine); ++ gluTessCallback(tess, GLU_TESS_BEGIN, (_GLUfuncptr)ntessBegin); ++ gluTessCallback(tess, GLU_TESS_VERTEX, (_GLUfuncptr)ntessVertex); ++ gluTessCallback(tess, GLU_TESS_ERROR, (_GLUfuncptr)ntessError); ++ gluTessCallback(tess, GLU_TESS_COMBINE, (_GLUfuncptr)ntessCombine); + gluTessCallback(tess, GLU_TESS_END, ntessEnd); + if (levelinfo) fprintf(levelinfo, "sector %i, %i lines in sector\n", num, sectors[num].linecount); + // remove any line which has both sides in the same sector (i.e. Doom2 Map01 Sector 1) +--- prboom2/src/gl_shader.c~ 2023-06-20 02:50:23.000000000 -0500 ++++ prboom2/src/gl_shader.c 2024-02-06 11:33:11.758324558 -0600 +@@ -146,10 +146,10 @@ + filename = malloc(MAX(vp_fnlen, fp_fnlen) + 1); + + sprintf(filename, "%s/shaders/%s.txt", I_DoomExeDir(), vpname); +- vp_size = ReadLump(filename, vpname, &vp_data); ++ vp_size = ReadLump(filename, vpname, (unsigned char **)&vp_data); + + sprintf(filename, "%s/shaders/%s.txt", I_DoomExeDir(), fpname); +- fp_size = ReadLump(filename, fpname, &fp_data); ++ fp_size = ReadLump(filename, fpname, (unsigned char **)&fp_data); + + if (vp_data && fp_data) + { +@@ -159,7 +159,7 @@ + shader->hFragProg = GLEXT_glCreateShaderObjectARB(GL_FRAGMENT_SHADER_ARB); + + GLEXT_glShaderSourceARB(shader->hVertProg, 1, &vp_data, &vp_size); +- GLEXT_glShaderSourceARB(shader->hFragProg, 1, &fp_data, &fp_size); ++ GLEXT_glShaderSourceARB(shader->hFragProg, 1, (const GLcharARB **)&fp_data, &fp_size); + + GLEXT_glCompileShaderARB(shader->hVertProg); + GLEXT_glCompileShaderARB(shader->hFragProg); +--- prboom2/src/gl_shader.c~ 2024-02-06 11:33:11.758324558 -0600 ++++ prboom2/src/gl_shader.c 2024-02-06 15:24:43.325074027 -0600 +@@ -158,7 +158,7 @@ + shader->hVertProg = GLEXT_glCreateShaderObjectARB(GL_VERTEX_SHADER_ARB); + shader->hFragProg = GLEXT_glCreateShaderObjectARB(GL_FRAGMENT_SHADER_ARB); + +- GLEXT_glShaderSourceARB(shader->hVertProg, 1, &vp_data, &vp_size); ++ GLEXT_glShaderSourceARB(shader->hVertProg, 1, (const GLcharARB **)&vp_data, &vp_size); + GLEXT_glShaderSourceARB(shader->hFragProg, 1, (const GLcharARB **)&fp_data, &fp_size); + + GLEXT_glCompileShaderARB(shader->hVertProg); diff --git a/srcpkgs/prboom-plus/template b/srcpkgs/prboom-plus/template index cbb15d2f184..558168ee4f2 100644 --- a/srcpkgs/prboom-plus/template +++ b/srcpkgs/prboom-plus/template @@ -1,7 +1,7 @@ # Template file for 'prboom-plus' pkgname=prboom-plus version=2.5.1.4 -revision=4 +revision=5 build_style=gnu-configure configure_args="--disable-cpu-opt --disable-dogs" hostmakedepends="pcre-devel fluidsynth-devel libmad-devel SDL_mixer-devel SDL_net-devel @@ -16,6 +16,11 @@ checksum=e0e2241d174839b107f1a42b191aa9895dc6749e477cbc850ad520fba2353b94 CFLAGS="-fcommon" +pre_patch() { + # Fix line endings of file for patching + sed -i src/gl_shader.c -e 's;\r;;g' +} + pre_configure() { sed -i 's|^gamesdir = $(prefix)/games|gamesdir = ${bindir}|g' src/Makefile.in sed -i 's|@PACKAGE@-@VERSION@|prboom-plus|g' Makefile.in