packages/libs/libzdb/Makefile
Sebastian Kemper 9c7613dd25 libzdb: fix uclibc build issue
libmariadb 10.2 needs to be linked in together with iconv. On musl and
glibc iconv is part of libc. That's not the case for uclibc, where
libiconv-full needs to be used. This commit adds -liconv to the linker
flags and aids libzdb in finding libiconv.

Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
2018-07-08 12:02:51 +02:00

97 lines
2.5 KiB
Makefile

#
# Copyright (C) 2007-2016 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=libzdb
PKG_VERSION:=3.1
PKG_RELEASE:=5
PKG_LICENSE:=GPL-3.0
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://www.tildeslash.com/libzdb/dist/
PKG_HASH:=0f01abb1b01d1a1f4ab9b55ad3ba445d203fc3b4757abdf53e1d85e2b7b42695
PKG_FIXUP:=autoreconf
PKG_INSTALL:=1
PKG_BUILD_DEPENDS:=libzdb/host
include $(INCLUDE_DIR)/package.mk
# Help libzdb find libiconv.so when using uClibc.
ifneq ($(CONFIG_USE_UCLIBC),)
TARGET_CPPFLAGS+= \
-I$(STAGING_DIR)/usr/lib/libiconv-full/include
TARGET_LDFLAGS += \
-L$(STAGING_DIR)/usr/lib/libiconv-full/lib
endif
define Package/libzdb
SECTION:=libs
CATEGORY:=Libraries
TITLE:=A thread-safe multi database connection pool library
MAINTAINER:=Gergely Kiss <mail.gery@gmail.com>
URL:=http://www.tildeslash.com/libzdb/
DEPENDS:=+libsqlite3 +libpq +libmysqlclient +zlib +libpthread +libopenssl
endef
define Package/libzdb/description
zdb is a database library with thread-safe connection pooling. The library can connect
transparently to multiple database systems. It has zero runtime configuration and connections
are specified via a URL scheme. A modern object-oriented API is provided.
zdb supports MySQL, PostgreSQL, SQLite, and Oracle.
NOTE: This package does not include Oracle support.
endef
CONFIGURE_ARGS += --disable-profiling \
--enable-optimized \
--with-mysql \
--with-postgresql \
--with-sqlite \
--enable-sqliteunlock \
--enable-openssl
TARGET_CPPFLAGS += -std=c99
include $(INCLUDE_DIR)/host-build.mk
define Hooks/HostConfigure/Pre
endef
define Host/Configure
endef
define Host/Compile
$(HOSTCC) $(HOST_BUILD_DIR)/tools/filterh/lex.yy.c -o $(HOST_BUILD_DIR)/tools/bin/filterh
endef
define Host/Install
$(INSTALL_DIR) $(STAGING_DIR_HOSTPKG)/bin
$(CP) $(HOST_BUILD_DIR)/tools/bin/filterh $(STAGING_DIR_HOSTPKG)/bin/
endef
$(eval $(call HostBuild))
define Build/Compile
$(call Build/Compile/Default)
endef
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include/zdb
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
$(CP) $(PKG_INSTALL_DIR)/usr/include/zdb/ $(1)/usr/include/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libzdb* $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/zdb.pc $(1)/usr/lib/pkgconfig
endef
define Package/libzdb/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libzdb.so* $(1)/usr/lib/
endef
$(eval $(call BuildPackage,libzdb))