summaryrefslogtreecommitdiff
path: root/package/poco/poco.mk
diff options
context:
space:
mode:
authorBaruch Siach <baruch@tkos.co.il>2011-10-04 10:02:03 +0200
committerPeter Korsgaard <jacmet@sunsite.dk>2011-10-07 00:44:18 +0200
commit811fab1b26f7590c2696801b82347767bbbc0809 (patch)
tree76bba44360a19eb7d165c2d25d6ca339045237b1 /package/poco/poco.mk
parentbc9954e6d6b67556ccb4bcbf9b1e96e24a18b7e1 (diff)
package: add the poco C++ libraries collection
Add the C++ Portable Components libraries. The Data/ODBC components is disabled because its dependency (unixODBC) is not in Buildroot. The Data/MySQL component is build tested only. It probably requires an additional RPATH to actually run, because libmysqlclient resides in a non-standard location under /usr/lib/mysql. [Peter: use depends on for toolchain options] Signed-off-by: Baruch Siach <baruch@tkos.co.il> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Diffstat (limited to 'package/poco/poco.mk')
-rw-r--r--package/poco/poco.mk57
1 files changed, 57 insertions, 0 deletions
diff --git a/package/poco/poco.mk b/package/poco/poco.mk
new file mode 100644
index 000000000..482393577
--- /dev/null
+++ b/package/poco/poco.mk
@@ -0,0 +1,57 @@
+#############################################################
+#
+# poco
+#
+#############################################################
+POCO_VERSION = 1.4.2p1
+POCO_SOURCE = poco-$(POCO_VERSION)-all.tar.gz
+POCO_SITE = http://$(BR2_SOURCEFORGE_MIRROR).dl.sourceforge.net/sourceforge/poco
+POCO_INSTALL_STAGING = YES
+
+POCO_DEPENDENCIES = zlib pcre \
+ $(if $(BR2_PACKAGE_POCO_XML),expat) \
+ $(if $(BR2_PACKAGE_POCO_CRYPTO),openssl) \
+ $(if $(BR2_PACKAGE_POCO_NETSSL_OPENSSL),openssl) \
+ $(if $(BR2_PACKAGE_POCO_DATA_SQLITE),sqlite) \
+ $(if $(BR2_PACKAGE_POCO_DATA_MYSQL),mysql_client)
+
+POCO_OMIT = Data/ODBC PageCompiler \
+ $(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_DATA),,Data) \
+ $(if $(BR2_PACKAGE_POCO_DATA_MYSQL),,Data/MySQL) \
+ $(if $(BR2_PACKAGE_POCO_DATA_SQLITE),,Data/SQLite)
+
+ifeq ($(LIBC),uclibc)
+POCO_CONF_OPT += --no-fpenvironment --no-wstring
+endif
+
+define POCO_CONFIGURE_CMDS
+ (cd $(@D); ./configure \
+ --config=Linux-CrossEnv \
+ --prefix=/usr \
+ --omit="$(POCO_OMIT)" \
+ $(POCO_CONF_OPT) \
+ --unbundled \
+ --no-tests \
+ --no-samples)
+endef
+
+define POCO_BUILD_CMDS
+ $(MAKE) POCO_TARGET_OSARCH=$(ARCH) CROSSENV=$(TARGET_CROSS) \
+ MYSQL_LIBDIR=$(TARGET_DIR)/usr/lib/mysql -C $(@D)
+endef
+
+define POCO_INSTALL_STAGING_CMDS
+ $(MAKE) DESTDIR=$(STAGING_DIR) POCO_TARGET_OSARCH=$(ARCH) install -C $(@D)
+endef
+
+define POCO_INSTALL_TARGET_CMDS
+ $(MAKE) DESTDIR=$(TARGET_DIR) POCO_TARGET_OSARCH=$(ARCH) install -C $(@D)
+endef
+
+$(eval $(call GENTARGETS))