FreeBSD Bugzilla – Attachment 254061 Details for
Bug 281906
emulators/mupen64plus-core: fix build with clang and lld 19
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
emulators/mupen64plus-core: fix build with clang and lld 19
emulators__mupen64plus-core-fix-clang-lld19-build-1.diff (text/plain), 2.78 KB, created by
Dimitry Andric
on 2024-10-06 21:42:22 UTC
(
hide
)
Description:
emulators/mupen64plus-core: fix build with clang and lld 19
Filename:
MIME Type:
Creator:
Dimitry Andric
Created:
2024-10-06 21:42:22 UTC
Size:
2.78 KB
patch
obsolete
>commit c241573700d01f614f8132edbc63912a2861c94d >Author: Dimitry Andric <dim@FreeBSD.org> >Date: 2024-10-06T23:40:43+02:00 > > emulators/mupen64plus-core: fix build with clang and lld 19 > > lld 19 has become more strict about 32-bit relocations that require PIC, > resulting in link errors when building emulators/mupen64plus-core: > > LD libmupen64plus.so.2.0.0 > ld: error: relocation R_386_32 cannot be used against symbol '__gxx_personality_v0'; recompile with -fPIC > >>> defined in /usr/lib/libcxxrt.so > >>> referenced by oglft_c.cpp > >>> _obj/osd/oglft_c.o:(.eh_frame+0xFA63) > > ld: error: relocation R_386_32 cannot be used against local symbol; recompile with -fPIC > >>> defined in _obj/osd/oglft_c.o > >>> referenced by oglft_c.cpp > >>> _obj/osd/oglft_c.o:(.eh_frame+0xFA81) > > ld: error: relocation R_386_32 cannot be used against local symbol; recompile with -fPIC > >>> defined in _obj/osd/oglft_c.o > >>> referenced by oglft_c.cpp > >>> _obj/osd/oglft_c.o:(.eh_frame+0xFAB1) > > ld: error: relocation R_386_32 cannot be used against local symbol; recompile with -fPIC > >>> defined in _obj/osd/oglft_c.o > >>> referenced by oglft_c.cpp > >>> _obj/osd/oglft_c.o:(.eh_frame+0xFAE1) > > [...more of these...] > > Make it compile with -fPIC even on i386, by adjusting the PIC make > variable. This also removes the need to use -Wl,-znotext as a workaround. > > PR: 281906 > MFH: 2024Q3 > >diff --git a/emulators/mupen64plus-core/Makefile b/emulators/mupen64plus-core/Makefile >index 0193eebc1d44..eef7478a88da 100644 >--- a/emulators/mupen64plus-core/Makefile >+++ b/emulators/mupen64plus-core/Makefile >@@ -19,7 +19,6 @@ USE_GL?= glu > USE_SDL?= sdl2 > USE_LDCONFIG?= yes > ONLY_FOR_ARCHS= i386 amd64 >-LDFLAGS_i386= -Wl,-znotext > > RELEASE_DATE?= 20240714 > OPTFLAGS= # >diff --git a/emulators/mupen64plus-core/files/patch-projects_unix_Makefile b/emulators/mupen64plus-core/files/patch-projects_unix_Makefile >new file mode 100644 >index 000000000000..6445ad2a0454 >--- /dev/null >+++ b/emulators/mupen64plus-core/files/patch-projects_unix_Makefile >@@ -0,0 +1,20 @@ >+--- projects/unix/Makefile.orig 2024-10-06 21:34:50 UTC >++++ projects/unix/Makefile >+@@ -61,7 +61,7 @@ ifneq ("$(filter x86_64 amd64,$(HOST_CPU))","") >+ CPU := X86 >+ ifeq ("$(BITS)", "32") >+ ARCH_DETECTED := 64BITS_32 >+- PIC ?= 0 >++ PIC ?= 1 >+ else >+ ARCH_DETECTED := 64BITS >+ PIC ?= 1 >+@@ -70,7 +70,7 @@ ifneq ("$(filter pentium i%86,$(HOST_CPU))","") >+ ifneq ("$(filter pentium i%86,$(HOST_CPU))","") >+ CPU := X86 >+ ARCH_DETECTED := 32BITS >+- PIC ?= 0 >++ PIC ?= 1 >+ endif >+ ifneq ("$(filter ppc macppc socppc powerpc,$(HOST_CPU))","") >+ CPU := PPC
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 281906
: 254061