espeak: fix build on sparc64
PATCH 1/1 espeak: fix build on sparc64
sparc64 needs object files to be built with -fPIC in order to be usable in shared libraries, otherwise the shared library cannot be created.
Fixes:
http://autobuild.buildroot.org/results/8b8/8b894f0bd42c18e7cda98c15480757f10d743423/
--- ...f-shared-library-on-architectures-needing.patch | 31 ++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 package/espeak/0001-Fix-build-of-shared-library-on-architectures-needing.patch
package/espeak/0001-Fix-build-of-shared-library-on-architectures-needing.patch new file +31 -0
@@ -0,0 +1,31 @@ +From 08a464e2b6bd31bb2bf4e258ebfa9b9d65805abf Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni <[email protected]> +Date: Fri, 27 Nov 2015 15:17:02 +0100 +Subject: [PATCH] Fix build of shared library on architectures needing -fPIC + +Certain architectures, like Sparc and Sparc64 require objects to be +built with -fPIC (and not just -fpic) to be usable in shared +libraries. On other architectures, -fPIC is the same as -fpic so this +patch doesn't affect such architectures. + +Signed-off-by: Thomas Petazzoni <[email protected]> +--- + src/Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/Makefile b/src/Makefile +index 95fe549..c293611 100755 +--- a/src/Makefile ++++ b/src/Makefile +@@ -110,7 +110,7 @@ $(BIN2_NAME): $(OBJS3) $(LIB_NAME) + + + x_%.o: %.cpp +- $(CXX) $(CXXFLAGS) $(USE_AUDIO) -D PATH_ESPEAK_DATA=\"$(DATADIR)\" -Wall -fpic -fvisibility=hidden -pedantic \ ++ $(CXX) $(CXXFLAGS) $(USE_AUDIO) -D PATH_ESPEAK_DATA=\"$(DATADIR)\" -Wall -fPIC -fvisibility=hidden -pedantic \ + -I. -D LIBRARY -c -fno-exceptions $< -o x_$*.o + + $(LIB_NAME): $(OBJS2) +-- +2.6.3 +
Signature · 1 line
2.6.3
PATCH 1/1 espeak: fix build on sparc64
Quoted 7 lines · Thomas Petazzoni
sparc64 needs object files to be built with -fPIC in order to be usable in shared libraries, otherwise the shared library cannot be created.
Fixes:
http://autobuild.buildroot.org/results/8b8/8b894f0bd42c18e7cda98c15480757f10d743423/
Hi.
I wonder if all these sparc fixes wouldn't be better suited for the wrapper, after all -fpic in sparc is generally useless, and try to handle these upstream would be a PITA.
Regards.
PATCH 1/1 espeak: fix build on sparc64
Gustavo,
Quoted 3 lines · Gustavo Zacarias
I wonder if all these sparc fixes wouldn't be better suited for the wrapper, after all -fpic in sparc is generally useless, and try to handle these upstream would be a PITA.
This is indeed another possibility. Generally speaking, I am not a huge fan of hiding too much magic/sorcery in the wrapper. But it's already a big amount of black magic, so a little bit more or less maybe does not hurt that much.
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH 1/1 espeak: fix build on sparc64
In reply to Thomas PetazzoniQuoted 11 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Thomas" == Thomas Petazzoni <[email protected]> writes:
sparc64 needs object files to be built with -fPIC in order to be usable in shared libraries, otherwise the shared library cannot be created.
Fixes:
http://autobuild.buildroot.org/results/8b8/8b894f0bd42c18e7cda98c15480757f10d743423/
Signed-off-by Thomas Petazzoni <[email protected]>
Committed, thanks.
Signature · 1 line
Bye, Peter Korsgaard