poco: add new options for Json, CppParser, MongoDB, PDF and Redis
authorYegor Yefremov <yegorslists@googlemail.com>
Thu, 15 Feb 2018 13:32:35 +0000 (14:32 +0100)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Sun, 1 Apr 2018 19:10:50 +0000 (21:10 +0200)
New options allow to build following components:

* Json
* Redis
* MongoDB
* CppParser
* PDF

This allows to significantly reduce the size of the POCO
libraries. Even though it breaks backward compatibility because those
features were enabled and are now disable by default, Buildroot's
policy is to build the minimal feature-set by default. And users will
get a very clear build failure, which should be easy to fix.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
[Thomas: add an explanation about backward compatibility.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
package/poco/Config.in
package/poco/poco.mk

index 9199b54f0c29617af2c095fa3984e6019d26f854..b908ea220c8909c75317d96dc6b43277191b9d61 100644 (file)
@@ -18,6 +18,9 @@ if BR2_PACKAGE_POCO
 
 comment "poco components"
 
+config BR2_PACKAGE_POCO_JSON
+       bool "json"
+
 config BR2_PACKAGE_POCO_XML
        bool "xml"
        select BR2_PACKAGE_EXPAT
@@ -46,6 +49,20 @@ config BR2_PACKAGE_POCO_ZIP
        select BR2_PACKAGE_POCO_NET
        select BR2_PACKAGE_POCO_UTIL
 
+config BR2_PACKAGE_POCO_CPP_PARSER
+       bool "cpp_parser"
+
+config BR2_PACKAGE_POCO_PDF
+       bool "pdf"
+
+config BR2_PACKAGE_POCO_REDIS
+       bool "redis"
+       select BR2_PACKAGE_POCO_NET
+
+config BR2_PACKAGE_POCO_MONGODB
+       bool "mongodb"
+       select BR2_PACKAGE_POCO_NET
+
 config BR2_PACKAGE_POCO_DATA
        bool
 
index 3dddb435e903db6340b59e1751e1b0af3f1daeea..018344d5c720f193ff087c6b55287168a255c44b 100644 (file)
@@ -18,12 +18,17 @@ POCO_DEPENDENCIES = zlib pcre \
        $(if $(BR2_PACKAGE_POCO_DATA_MYSQL),mysql)
 
 POCO_OMIT = Data/ODBC PageCompiler \
+       $(if $(BR2_PACKAGE_POCO_JSON),,JSON) \
        $(if $(BR2_PACKAGE_POCO_XML),,XML) \
        $(if $(BR2_PACKAGE_POCO_UTIL),,Util) \
        $(if $(BR2_PACKAGE_POCO_NET),,Net) \
        $(if $(BR2_PACKAGE_POCO_NETSSL_OPENSSL),,NetSSL_OpenSSL) \
        $(if $(BR2_PACKAGE_POCO_CRYPTO),,Crypto) \
        $(if $(BR2_PACKAGE_POCO_ZIP),,Zip) \
+       $(if $(BR2_PACKAGE_POCO_CPP_PARSER),,CppParser) \
+       $(if $(BR2_PACKAGE_POCO_PDF),,PDF) \
+       $(if $(BR2_PACKAGE_POCO_REDIS),,Redis) \
+       $(if $(BR2_PACKAGE_POCO_MONGODB),,MongoDB) \
        $(if $(BR2_PACKAGE_POCO_DATA),,Data) \
        $(if $(BR2_PACKAGE_POCO_DATA_MYSQL),,Data/MySQL) \
        $(if $(BR2_PACKAGE_POCO_DATA_SQLITE),,Data/SQLite)