浏览代码

beecrypt: make a config option for C++ support

beecrypt used to pull in icu automatically when C++ support was enabled,
but since icu is pretty large and slow, that automatic dependency was
removed.  However, it is not obvious to the user that he should enable
icu in order to get C++ support in beecrypt. Therefore, make the C++
support a user visible config option and mention icu in the help text.

It would also be possible to automatically enable C++ support if icu
happens to be selected for another reason, but that doesn't really seem
to offer an advantage.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Arnout Vandecappelle 11 年之前
父节点
当前提交
3fb263f714
共有 2 个文件被更改,包括 22 次插入4 次删除
  1. 21 2
      package/beecrypt/Config.in
  2. 1 2
      package/beecrypt/beecrypt.mk

+ 21 - 2
package/beecrypt/Config.in

@@ -1,3 +1,6 @@
+comment "beecrypt needs a toolchain w/ threads"
+	depends on !BR2_TOOLCHAIN_HAS_THREADS
+
 config BR2_PACKAGE_BEECRYPT
 	bool "beecrypt"
 	depends on BR2_TOOLCHAIN_HAS_THREADS
@@ -6,5 +9,21 @@ config BR2_PACKAGE_BEECRYPT
 
 	  http://beecrypt.sf.net
 
-comment "beecrypt needs a toolchain w/ threads"
-	depends on !BR2_TOOLCHAIN_HAS_THREADS
+if BR2_PACKAGE_BEECRYPT
+
+config BR2_PACKAGE_BEECRYPT_CPP
+	bool "C++ support"
+	depends on BR2_INSTALL_LIBSTDCPP
+	depends on BR2_USE_WCHAR # icu
+	depends on !BR2_arc # icu
+	depends on !BR2_BINFMT_FLAT # icu
+	select BR2_PACKAGE_ICU
+	help
+	  Enable C++ support. This pulls in the (large) icu package.
+
+comment "C++ support needs a toolchain w/ wchar"
+	depends on !BR2_arc
+	depends on !BR2_BINFMT_FLAT
+	depends on BR2_INSTALL_LIBSTDCPP && !BR2_USE_WCHAR
+
+endif # BR2_PACKAGE_BEECRYPT

+ 1 - 2
package/beecrypt/beecrypt.mk

@@ -22,8 +22,7 @@ BEECRYPT_CONF_OPT = \
 		--without-python \
 		--disable-openmp
 
-ifeq ($(BR2_INSTALL_LIBSTDCPP)$(BR2_USE_WCHAR)$(BR2_PACKAGE_ICU),yyy)
-# C++ support needs icu
+ifeq ($(BR2_PACKAGE_BEECRYPT_CPP),y)
 BEECRYPT_DEPENDENCIES += icu
 else
 BEECRYPT_CONF_OPT += --without-cplusplus