mirror of
https://github.com/RetroPie/RetroPie-Setup.git
synced 2025-04-02 10:51:41 -04:00
Remove -ffast-math from makefiles on armv8. This option causes the following error when building on the rpi5 (armv8.2a): /usr/lib/gcc/arm-linux-gnueabihf/12/include/arm_neon.h: In function ‘float16x4_t vmul_n_f16(float16x4_t, float16_t)’: /usr/lib/gcc/arm-linux-gnueabihf/12/include/arm_neon.h:17755:14: error: conversion of scalar ‘float’ to vector ‘float16x4_t’ involves truncation This also disables it for other armv8 platforms (that didn't have this problem), but the option does come with some risks and was added to code which I don't think will benefit such as mupen64plus-ui-console.
66 lines
3 KiB
Diff
66 lines
3 KiB
Diff
--- a/mupen64plus-audio-sdl/projects/unix/Makefile
|
|
+++ b/mupen64plus-audio-sdl/projects/unix/Makefile
|
|
@@ -99,7 +99,7 @@ OBJDIR = _obj$(POSTFIX)
|
|
# base CFLAGS, LDLIBS, and LDFLAGS
|
|
OPTFLAGS ?= -O3 -flto
|
|
WARNFLAGS ?= -Wall
|
|
-CFLAGS += $(OPTFLAGS) $(WARNFLAGS) -ffast-math -fvisibility=hidden -I$(SRCDIR)
|
|
+CFLAGS += $(OPTFLAGS) $(WARNFLAGS) -fvisibility=hidden -I$(SRCDIR)
|
|
LDFLAGS += $(SHARED)
|
|
|
|
# Since we are building a shared library, we must compile with -fPIC on some architectures
|
|
--- a/mupen64plus-input-sdl/projects/unix/Makefile
|
|
+++ b/mupen64plus-input-sdlprojects/unix/Makefile
|
|
@@ -96,7 +96,7 @@ OBJDIR = _obj$(POSTFIX)
|
|
# base CFLAGS, LDLIBS, and LDFLAGS
|
|
OPTFLAGS ?= -O3 -flto
|
|
WARNFLAGS ?= -Wall
|
|
-CFLAGS += $(OPTFLAGS) $(WARNFLAGS) -ffast-math -fvisibility=hidden -I$(SRCDIR) -D_GNU_SOURCE=1
|
|
+CFLAGS += $(OPTFLAGS) $(WARNFLAGS) -fvisibility=hidden -I$(SRCDIR) -D_GNU_SOURCE=1
|
|
LDFLAGS += $(SHARED)
|
|
LDLIBS += -lm
|
|
|
|
--- a/mupen64plus-rsp-hle/projects/unix/Makefile
|
|
+++ b/mupen64plus-rsp-hle/projects/unix/Makefile
|
|
@@ -147,7 +147,7 @@ OBJDIR = _obj$(POSTFIX)
|
|
# base CFLAGS, LDLIBS, and LDFLAGS
|
|
OPTFLAGS ?= -O3 -flto
|
|
WARNFLAGS ?= -Wall
|
|
-CFLAGS += $(OPTFLAGS) $(WARNFLAGS) -ffast-math -fvisibility=hidden -I$(SRCDIR)
|
|
+CFLAGS += $(OPTFLAGS) $(WARNFLAGS) -fvisibility=hidden -I$(SRCDIR)
|
|
LDFLAGS += $(SHARED)
|
|
|
|
# Since we are building a shared library, we must compile with -fPIC on some architectures
|
|
--- a/mupen64plus-ui-console/projects/unix/Makefile
|
|
+++ b/mupen64plus-ui-console/projects/unix/Makefile
|
|
@@ -74,7 +74,7 @@ OBJDIR = _obj$(POSTFIX)
|
|
OPTFLAGS ?= -O3 -flto
|
|
WARNFLAGS ?= -Wall
|
|
|
|
-CFLAGS += $(OPTFLAGS) $(WARNFLAGS) -ffast-math -I$(SRCDIR)
|
|
+CFLAGS += $(OPTFLAGS) $(WARNFLAGS) -I$(SRCDIR)
|
|
ifeq ($(OS), MINGW)
|
|
CFLAGS += -lpthread
|
|
LDLIBS += -lpthread
|
|
--- a/mupen64plus-video-gles2n64/projects/unix/Makefile
|
|
+++ b/mupen64plus-video-gles2n64/projects/unix/Makefile
|
|
@@ -132,7 +132,7 @@ endif
|
|
# base CFLAGS, LDLIBS, and LDFLAGS
|
|
OPTFLAGS ?= -O3 -flto
|
|
WARNFLAGS ?= -Wall
|
|
-CFLAGS += $(OPTFLAGS) $(WARNFLAGS) -ffast-math -fno-strict-aliasing -fvisibility=hidden -I../../src -DSDL_VIDEO_OPENGL_ES2=1 -DSDL_VIDEO_OPENGL=0
|
|
+CFLAGS += $(OPTFLAGS) $(WARNFLAGS) -fno-strict-aliasing -fvisibility=hidden -I../../src -DSDL_VIDEO_OPENGL_ES2=1 -DSDL_VIDEO_OPENGL=0
|
|
CXXFLAGS += $(OPTFLAGS) -std=c++11 -fvisibility-inlines-hidden -DSDL_VIDEO_OPENGL_ES2=1 -DSDL_VIDEO_OPENGL=0
|
|
LDFLAGS += $(SHARED)
|
|
|
|
--- a/mupen64plus-video-gles2rice/projects/unix/Makefile
|
|
+++ b/mupen64plus-video-gles2rice/projects/unix/Makefile
|
|
@@ -133,7 +133,7 @@ endif
|
|
# base CFLAGS, LDLIBS, and LDFLAGS
|
|
OPTFLAGS ?= -flto
|
|
WARNFLAGS ?= -Wall
|
|
-CFLAGS += $(OPTFLAGS) $(WARNFLAGS) -ffast-math -fsingle-precision-constant -fno-strict-aliasing -fvisibility=hidden -I../../src -DSDL_VIDEO_OPENGL_ES2=1 -DSDL_VIDEO_OPENGL=0
|
|
+CFLAGS += $(OPTFLAGS) $(WARNFLAGS) -fsingle-precision-constant -fno-strict-aliasing -fvisibility=hidden -I../../src -DSDL_VIDEO_OPENGL_ES2=1 -DSDL_VIDEO_OPENGL=0
|
|
CXXFLAGS += -fvisibility-inlines-hidden -DSDL_VIDEO_OPENGL_ES2=1 -DSDL_VIDEO_OPENGL=0
|
|
LDFLAGS += $(SHARED)
|
|
|