浏览代码

cppcms: fix build with uClibc

This patch modifies the cppcms package in order to support uClibc-based
toolchains.

The booster library by default compiles with the posix backend under
Linux, but this needs monetary.h which isn't provided by uClibc, so
work around that with the help of the DISABLE_POSIX_LOCALE configure
option.

Signed-off-by: Lucile Quirion <lucile.quirion@savoirfairelinux.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Lucile Quirion 11 年之前
父节点
当前提交
a518381ed8
共有 2 个文件被更改,包括 7 次插入4 次删除
  1. 2 4
      package/cppcms/Config.in
  2. 5 0
      package/cppcms/cppcms.mk

+ 2 - 4
package/cppcms/Config.in

@@ -4,8 +4,6 @@ config BR2_PACKAGE_CPPCMS
 	select BR2_PACKAGE_PCRE
 	select BR2_PACKAGE_LIBGCRYPT
 	depends on BR2_INSTALL_LIBSTDCPP
-	# cppcms uses <monetary.h> which doesn't exist in uClibc
-	depends on BR2_TOOLCHAIN_USES_GLIBC
 	help
 	  CppCMS is a Free High Performance Web Development Framework
 	  (not a CMS) aimed for Rapid Web Application Development. It
@@ -33,5 +31,5 @@ config BR2_PACKAGE_CPPCMS_ICU
 
 endif
 
-comment "cppcms needs an (e)glibc toolchain w/ C++"
-	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_USES_GLIBC
+comment "cppcms needs a toolchain w/ C++"
+	depends on !BR2_INSTALL_LIBSTDCPP

+ 5 - 0
package/cppcms/cppcms.mk

@@ -18,6 +18,11 @@ CPPCMS_CONF_OPT += -DDISABLE_ICONV=ON
 CPPCMS_DEPENDENCIES += icu
 endif
 
+ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y)
+# posix backend needs monetary.h which isn't available on uClibc
+CPPCMS_CONF_OPT += -DDISABLE_POSIX_LOCALE=on
+endif
+
 # We copy cppcms_tmpl_cc from staging to host because this file can be
 # needed for compiling packages using cppcms. And it is not worth
 # creating a host package just for a python script.