Browse Source

uclibc++: fix build with gcc 6.1.0, which defaults to using C++14 ABI

Signed-off-by: Felix Fietkau <[email protected]>
Felix Fietkau 9 years ago
parent
commit
b948c9371b

+ 1 - 0
package/libs/uclibc++/Makefile

@@ -63,6 +63,7 @@ MAKE_FLAGS:= \
 	LDFLAGS="-Wl,--warn-common -Wl,--warn-once -Wl,-z,combreloc -Wl,-z,defs $(TARGET_LDFLAGS)" \
 	CP="$(CP)" \
 	GEN_LIBS="-lc $(LIBGCC_S) $(SSP_LIB)" \
+	GEN_CFLAGS="-std=gnu++98 -nostdinc++" \
 	check_as_needed=
 
 # check_as_needed overrides dependency on libgcc_s

+ 20 - 0
package/libs/uclibc++/patches/040-delete-c++14.patch

@@ -0,0 +1,20 @@
+--- a/src/del_op.cpp
++++ b/src/del_op.cpp
+@@ -24,3 +24,7 @@
+ _UCXXEXPORT void operator delete(void* ptr) throw(){
+ 	free(ptr);
+ }
++
++_UCXXEXPORT void operator delete(void* ptr, size_t size) throw(){
++	free(ptr);
++}
+--- a/src/del_opv.cpp
++++ b/src/del_opv.cpp
+@@ -24,3 +24,7 @@
+ _UCXXEXPORT void operator delete[](void * ptr) throw(){
+ 	free(ptr);
+ }
++
++_UCXXEXPORT void operator delete[](void * ptr, size_t size) throw(){
++	free(ptr);
++}