瀏覽代碼

poco: add new options for Json, CppParser, MongoDB, PDF and Redis

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>
Yegor Yefremov 7 年之前
父節點
當前提交
ce1104f6a1
共有 2 個文件被更改,包括 22 次插入0 次删除
  1. 17 0
      package/poco/Config.in
  2. 5 0
      package/poco/poco.mk

+ 17 - 0
package/poco/Config.in

@@ -18,6 +18,9 @@ if BR2_PACKAGE_POCO
 
 
 comment "poco components"
 comment "poco components"
 
 
+config BR2_PACKAGE_POCO_JSON
+	bool "json"
+
 config BR2_PACKAGE_POCO_XML
 config BR2_PACKAGE_POCO_XML
 	bool "xml"
 	bool "xml"
 	select BR2_PACKAGE_EXPAT
 	select BR2_PACKAGE_EXPAT
@@ -46,6 +49,20 @@ config BR2_PACKAGE_POCO_ZIP
 	select BR2_PACKAGE_POCO_NET
 	select BR2_PACKAGE_POCO_NET
 	select BR2_PACKAGE_POCO_UTIL
 	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
 config BR2_PACKAGE_POCO_DATA
 	bool
 	bool
 
 

+ 5 - 0
package/poco/poco.mk

@@ -18,12 +18,17 @@ POCO_DEPENDENCIES = zlib pcre \
 	$(if $(BR2_PACKAGE_POCO_DATA_MYSQL),mysql)
 	$(if $(BR2_PACKAGE_POCO_DATA_MYSQL),mysql)
 
 
 POCO_OMIT = Data/ODBC PageCompiler \
 POCO_OMIT = Data/ODBC PageCompiler \
+	$(if $(BR2_PACKAGE_POCO_JSON),,JSON) \
 	$(if $(BR2_PACKAGE_POCO_XML),,XML) \
 	$(if $(BR2_PACKAGE_POCO_XML),,XML) \
 	$(if $(BR2_PACKAGE_POCO_UTIL),,Util) \
 	$(if $(BR2_PACKAGE_POCO_UTIL),,Util) \
 	$(if $(BR2_PACKAGE_POCO_NET),,Net) \
 	$(if $(BR2_PACKAGE_POCO_NET),,Net) \
 	$(if $(BR2_PACKAGE_POCO_NETSSL_OPENSSL),,NetSSL_OpenSSL) \
 	$(if $(BR2_PACKAGE_POCO_NETSSL_OPENSSL),,NetSSL_OpenSSL) \
 	$(if $(BR2_PACKAGE_POCO_CRYPTO),,Crypto) \
 	$(if $(BR2_PACKAGE_POCO_CRYPTO),,Crypto) \
 	$(if $(BR2_PACKAGE_POCO_ZIP),,Zip) \
 	$(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),,Data) \
 	$(if $(BR2_PACKAGE_POCO_DATA_MYSQL),,Data/MySQL) \
 	$(if $(BR2_PACKAGE_POCO_DATA_MYSQL),,Data/MySQL) \
 	$(if $(BR2_PACKAGE_POCO_DATA_SQLITE),,Data/SQLite)
 	$(if $(BR2_PACKAGE_POCO_DATA_SQLITE),,Data/SQLite)