[Buildroot] [git commit] cppcms: new package
Thomas Petazzoni
thomas.petazzoni at free-electrons.com
Wed Jul 31 17:02:07 UTC 2013
commit: http://git.buildroot.net/buildroot/commit/?id=c1765637172d31eee63ad955055786d75d8cb4ca
branch: http://git.buildroot.net/buildroot/commit/?id=refs/heads/master
[Thomas: reformat header and Config.in help text, add dependency on
glibc since cppcms uses <monetary.h> functions that aren't available
in uClibc.]
Signed-off-by: Nicolas Ménégale <nicolas.menegale at openwide.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
---
package/Config.in | 1 +
package/cppcms/Config.in | 32 ++++++++++++++++++++++++++++++++
package/cppcms/cppcms.mk | 29 +++++++++++++++++++++++++++++
3 files changed, 62 insertions(+), 0 deletions(-)
diff --git a/package/Config.in b/package/Config.in
index 6171693..7069d77 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -605,6 +605,7 @@ source "package/apr/Config.in"
source "package/apr-util/Config.in"
source "package/libcofi/Config.in"
source "package/classpath/Config.in"
+source "package/cppcms/Config.in"
source "package/elfutils/Config.in"
source "package/fftw/Config.in"
source "package/libargtable2/Config.in"
diff --git a/package/cppcms/Config.in b/package/cppcms/Config.in
new file mode 100644
index 0000000..14fd974
--- /dev/null
+++ b/package/cppcms/Config.in
@@ -0,0 +1,32 @@
+config BR2_PACKAGE_CPPCMS
+ bool "cppcms"
+ select BR2_PACKAGE_ZLIB
+ 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
+ differs from most of other web development frameworks like:
+ Python Django or Java Servlets on the following aspects:
+
+ - It is designed and tuned to handle extremely high loads.
+ - It uses modern C++ as primary development language in
+ order to achieve the above goal.
+ - It is aimed on development of both Web Sites and Web
+ Services.
+
+ http://cppcms.com
+
+config BR2_PACKAGE_CPPCMS_ICU
+ bool "enable icu support"
+ depends on BR2_PACKAGE_CPPCMS
+ select BR2_PACKAGE_ICU
+ help
+ Using ICU allows advanced localization features into CppCMS,
+ in another hand ICU is heavier than iconv.
+
+comment "cppcms requires a glibc toolchain with C++ support"
+ depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_USES_GLIBC
diff --git a/package/cppcms/cppcms.mk b/package/cppcms/cppcms.mk
new file mode 100644
index 0000000..d2b1109
--- /dev/null
+++ b/package/cppcms/cppcms.mk
@@ -0,0 +1,29 @@
+################################################################################
+#
+# cppcms
+#
+################################################################################
+
+CPPCMS_VERSION = 1.0.3
+CPPCMS_SOURCE = cppcms-$(CPPCMS_VERSION).tar.bz2
+CPPCMS_LICENSE = LGPLv3
+CPPCMS_LICENSE_FILE = COPYING.TXT
+CPPCMS_SITE = http://downloads.sourceforge.net/project/cppcms/cppcms/$(CPPCMS_VERSION)
+CPPCMS_INSTALL_STAGING = YES
+
+CPPCMS_DEPENDENCIES = zlib pcre libgcrypt
+
+ifeq ($(BR2_PACKAGE_CPPCMS_ICU),y)
+CPPCMS_CONF_OPT += -DDISABLE_ICONV=ON
+CPPCMS_DEPENDENCIES += icu
+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.
+define CPPCMS_INSTALL_HOST_TOOLS
+ cp $(STAGING_DIR)/usr/bin/cppcms_tmpl_cc $(HOST_DIR)/usr/bin/cppcms_tmpl_cc
+endef
+CPPCMS_POST_INSTALL_STAGING_HOOKS += CPPCMS_INSTALL_HOST_TOOLS
+
+$(eval $(cmake-package))
More information about the buildroot
mailing list