2
1
Эх сурвалжийг харах

package/boinc: needs at least gcc 4.8 for c++11 features

Fixes:
http://autobuild.buildroot.net/results/ed3/ed3656f443364f01895600f332816d20e340f315/

hostinfo_unix.cpp:1695:37: error: range-based 'for' loops are not allowed in C++98 mode
         for (const string &ignore : ignore_list) {

Adding -std=c++11 to CXXFLAGS is done in _MAKE_OPTS due to the Makefiles
not passing CXXFLAGS from _CONV_ENV down to client/Makefile.

This is needed since bump to version 7.18.1 in commit
fe79fba3fd52cd6445c5a1d90629c94605c93519 and
https://github.com/BOINC/boinc/commit/ed70369c091923addf5a8d64bed92c0417e91e07

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
[Peter: extend commit message as suggested by Fabrice Fontaine]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Bernd Kuhls 3 жил өмнө
parent
commit
12ef36004b

+ 3 - 1
package/boinc/Config.in

@@ -2,6 +2,7 @@ config BR2_PACKAGE_BOINC
 	bool "boinc"
 	depends on BR2_USE_MMU # fork()
 	depends on !BR2_STATIC_LIBS # dlfcn.h
+	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11
 	depends on BR2_TOOLCHAIN_HAS_THREADS
 	depends on BR2_INSTALL_LIBSTDCPP
 	select BR2_PACKAGE_LIBCURL
@@ -16,7 +17,8 @@ config BR2_PACKAGE_BOINC
 
 	  https://boinc.berkeley.edu
 
-comment "boinc needs a toolchain w/ dynamic library, C++, threads"
+comment "boinc needs a toolchain w/ dynamic library, C++, threads, gcc >= 4.8"
 	depends on BR2_USE_MMU
 	depends on BR2_STATIC_LIBS || !BR2_INSTALL_LIBSTDCPP \
+		|| !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 \
 		|| !BR2_TOOLCHAIN_HAS_THREADS

+ 2 - 0
package/boinc/boinc.mk

@@ -45,6 +45,8 @@ else
 BOINC_CONF_OPTS += --disable-fcgi
 endif
 
+BOINC_MAKE_OPTS = CXXFLAGS="$(TARGET_CXXFLAGS) -std=c++11"
+
 # Remove boinc-client because it is incompatible with buildroot
 define BOINC_REMOVE_UNNEEDED_FILE
 	$(RM) $(TARGET_DIR)/etc/init.d/boinc-client