diff options
author | Julian Ospald <hasufell@gentoo.org> | 2015-10-05 10:44:27 +0200 |
---|---|---|
committer | Julian Ospald <hasufell@gentoo.org> | 2015-10-05 10:45:16 +0200 |
commit | 1be55360957328366f0baa16cd65652ac716d8f3 (patch) | |
tree | c367096ea535e41be9abbff720ee19b5c2d04624 /dev-libs/poco | |
parent | dev-libs/pkcs11-helper: add libressl support (diff) | |
download | gentoo-1be55360957328366f0baa16cd65652ac716d8f3.tar.gz gentoo-1be55360957328366f0baa16cd65652ac716d8f3.tar.bz2 gentoo-1be55360957328366f0baa16cd65652ac716d8f3.zip |
dev-libs/poco: add libressl support
Diffstat (limited to 'dev-libs/poco')
-rw-r--r-- | dev-libs/poco/poco-1.4.6_p4-r1.ebuild | 122 |
1 files changed, 122 insertions, 0 deletions
diff --git a/dev-libs/poco/poco-1.4.6_p4-r1.ebuild b/dev-libs/poco/poco-1.4.6_p4-r1.ebuild new file mode 100644 index 000000000000..0e0e4d461149 --- /dev/null +++ b/dev-libs/poco/poco-1.4.6_p4-r1.ebuild @@ -0,0 +1,122 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" + +inherit eutils toolchain-funcs flag-o-matic multilib versionator + +MY_P="${P/_}" +MY_DOCP="${PN}-$(get_version_component_range 1-3)-all-doc" + +DESCRIPTION="C++ class libraries to simplify the development of network-centric, portable applications" +HOMEPAGE="http://pocoproject.org/" +SRC_URI="http://pocoproject.org/releases/poco-$(get_version_component_range 1-3)/${MY_P}-all.tar.bz2 + doc? ( mirror://sourceforge/poco/${MY_DOCP}.zip )" +LICENSE="Boost-1.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~x86" +IUSE="doc examples iodbc libressl mysql odbc sqlite ssl test" + +DEPEND=">=dev-libs/libpcre-8.13 + dev-libs/expat + sys-libs/zlib + mysql? ( virtual/mysql ) + odbc? ( iodbc? ( dev-db/libiodbc ) + !iodbc? ( dev-db/unixODBC ) ) + ssl? ( + !libressl? ( dev-libs/openssl:0 ) + libressl? ( dev-libs/libressl ) + ) + sqlite? ( dev-db/sqlite:3 )" +RDEPEND="${DEPEND}" + +S="${WORKDIR}/${MY_P}-all" + +src_prepare() { + epatch \ + "${FILESDIR}"/${PV}-gentoo.patch \ + "${FILESDIR}"/poco-1.4.4-patch-for-libpcre-8.32.patch +} + +src_configure() { + targets="libexecs" + odbc="unixodbc" + + if use ssl; then + targets="${targets} NetSSL_OpenSSL-libexec Crypto-libexec" + echo NetSSL_OpenSSL >> components + echo Crypto >> components + fi + if use odbc; then + targets="${targets} Data/ODBC-libexec" + echo Data/ODBC >> components + if use iodbc; then + append-flags "-I/usr/include/iodbc" + odbc="iodbc" + fi + fi + if use sqlite; then + targets="${targets} Data/SQLite-libexec" + echo Data/SQLite >> components + fi + if use mysql; then + targets="${targets} Data/MySQL-libexec" + echo Data/MySQL >> components + fi + + if use test; then + targets="${targets} cppunit tests" + echo CppUnit >> components + use ssl && targets="${targets} NetSSL_OpenSSL-tests Crypto-tests" + use odbc && targets="${targets} Data/ODBC-tests" + use sqlite && targets="${targets} Data/SQLite-tests" + use mysql && targets="${targets} Data/MySQL-tests" + fi + + local myconf + use test || myconf="--no-tests" + # not autoconf + ./configure \ + --no-samples ${myconf} \ + --prefix=/usr \ + --unbundled \ + || die "configure failed" + + sed -i \ + -e 's|-O2||g' \ + -e "s|CC = .*|CC = $(tc-getCC)|" \ + -e "s|CXX = .*|CXX = $(tc-getCXX)|" \ + -e "s|RANLIB = .*|RANLIB = $(tc-getRANLIB)|" \ + -e "s|LIB = ar|LIB = $(tc-getAR)|" \ + -e "s|STRIP = .*|STRIP = /bin/true|" \ + -e "s|CFLAGS = |CFLAGS = ${CFLAGS}|" \ + -e "s|CXXFLAGS = |CXXFLAGS = ${CXXFLAGS} |" \ + -e "s|LINKFLAGS =|LINKFLAGS = ${LDFLAGS} |" \ + -e "s|SHAREDOPT_LINK = -Wl,-rpath,\$(LIBPATH)|SHAREDOPT_LINK =|" \ + build/config/Linux build/config/FreeBSD || die "sed failed" + sed -i -e "s|SHLIBFLAGS)|SHLIBFLAGS) ${LDFLAGS}|" build/rules/lib || die +} + +src_compile() { + emake POCO_PREFIX=/usr GENTOO_ODBC="${odbc}" LIBDIR="$(get_libdir)" ${targets} || die "emake failed" +} + +src_install() { + emake POCO_PREFIX=/usr LIBDIR="$(get_libdir)" DESTDIR="${D}" install || die "emake install failed" + + dodoc CHANGELOG CONTRIBUTORS NEWS README + + use doc && dohtml -r "${WORKDIR}/${MY_DOCP}"/* + + if use examples ; then + for d in Net XML Data Util NetSSL_OpenSSL Foundation ; do + insinto /usr/share/doc/${PF}/examples/${d} + doins -r ${d}/samples + done + find "${D}/usr/share/doc/${PF}/examples" \ + -iname "*.sln" -or -iname "*.vcproj" -or \ + -iname "*.vmsbuild" -or -iname "*.properties" \ + | xargs rm + fi +} |