From 8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 14 Jul 2018 21:03:06 +0100 Subject: gentoo resync : 14.07.2018 --- dev-libs/poco/Manifest | 12 ++ dev-libs/poco/files/1.4.6_p4-gentoo.patch | 71 ++++++++++++ .../files/poco-1.4.4-patch-for-libpcre-8.32.patch | 45 ++++++++ dev-libs/poco/files/poco-1.7.2-iodbc-incdir.patch | 13 +++ dev-libs/poco/metadata.xml | 47 ++++++++ dev-libs/poco/poco-1.4.6_p4-r1.ebuild | 121 +++++++++++++++++++++ dev-libs/poco/poco-1.4.6_p4.ebuild | 118 ++++++++++++++++++++ dev-libs/poco/poco-1.7.6.ebuild | 115 ++++++++++++++++++++ dev-libs/poco/poco-1.9.0.ebuild | 115 ++++++++++++++++++++ 9 files changed, 657 insertions(+) create mode 100644 dev-libs/poco/Manifest create mode 100644 dev-libs/poco/files/1.4.6_p4-gentoo.patch create mode 100644 dev-libs/poco/files/poco-1.4.4-patch-for-libpcre-8.32.patch create mode 100644 dev-libs/poco/files/poco-1.7.2-iodbc-incdir.patch create mode 100644 dev-libs/poco/metadata.xml create mode 100644 dev-libs/poco/poco-1.4.6_p4-r1.ebuild create mode 100644 dev-libs/poco/poco-1.4.6_p4.ebuild create mode 100644 dev-libs/poco/poco-1.7.6.ebuild create mode 100644 dev-libs/poco/poco-1.9.0.ebuild (limited to 'dev-libs/poco') diff --git a/dev-libs/poco/Manifest b/dev-libs/poco/Manifest new file mode 100644 index 000000000000..a43674b5ef37 --- /dev/null +++ b/dev-libs/poco/Manifest @@ -0,0 +1,12 @@ +AUX 1.4.6_p4-gentoo.patch 2899 BLAKE2B 868b2057a3f51a92d64552393608f51e115a7b50d58d4b5138476c82394e4b30514e9ba6b9310681c1fa1a63b1902cbf4f813ec339def74afe25f23fd7ac869c SHA512 d43ffa2422b8fcf465b94d9cf075ce855a90339949cc662e8c8ab81cdc744cdb7aa6563f872a12bffe87526385b9a6decf2b21f244e2b66c1871b6d578de0e79 +AUX poco-1.4.4-patch-for-libpcre-8.32.patch 1970 BLAKE2B 0a07795b410bcff83a89c4d1d9ede1d39bbddc39c0503ed89afb761e0ff3c736a55c355178c55a3ce765835664f7b218a0e64fe8f9f39ca4c29b4335b95af1a0 SHA512 955a1ed90c1a3ebe50e110ef650853e9e8784aa9ca7c8806478ee4689d886b31f6afb6f613d290dd19b174243001083d975135175027615bf182ad41a9c413b7 +AUX poco-1.7.2-iodbc-incdir.patch 321 BLAKE2B 640c0b69e8c925d48da6f2bfc59cd2c77a02662ad1d8d447bb8c7ca23234ca1859c4aa9497d5703ef5f675d9096606254a9142770c6fffa4334cf71b1ca6953f SHA512 f3a0b4032fd4f71f0281d58c00241b1cd2f92da1a23a8501c420949621167d1fc7e2a2ed3ec48b6f75d35569f6443e3391eaf19a8c8fbd17e24d1cbd9ffd892d +DIST poco-1.4.6-all-doc.zip 2072762 BLAKE2B 51b8426d050e7ae373fbb0f3959657e37f1c3aeda75f5bf5cd3dc99e08414a9e65f61ea71dee6d8c40148f41157e2eac0888e64c5020707352c74b262ffae741 SHA512 458e1a3c6a6017b5ae5efcbd0d7b2bbf50aedd6ddc7ae7befddac07ed133b7243208aadd6ecdb17b3fa273e04eb0da4d73b1d3e5591aee98b754e430b2248e52 +DIST poco-1.4.6p4-all.tar.bz2 3158594 BLAKE2B 76accf617ddd087131a5960c131680451959704fee4b17b65bf85367a172d2fe023c9c7efde59fe5bd4142c7ca153734fb4ccbbf06bd5d0365a59d6e75a328a5 SHA512 ae4e1190a0ba719f807d0abaf1c47ff445a8f5867157f209260672546f3755ff021c7073bc8d5e656be383d5667dc15ad7eae8208728053fb61439c4c80a7fca +DIST poco-1.7.6.tar.gz 8044937 BLAKE2B ad9bf61eb00ce4e1ef5079e07be04ceff79bf823cba49ffb0e144a1e579d9de4f6f8d3df6b629c522de5c2b7b4c7df0933777686b72190d717e407bc28ae2a49 SHA512 a02b7ff66acf080942517b3b8644d6e5c7136c5edc6e58fd13083a74b97b5619253fc9db7863284a565226f95410ad4da1fa9738d14885f560aeb03c1f7c18aa +DIST poco-1.9.0.tar.gz 10012966 BLAKE2B 98848e87008c71dc5131dbd1c2b17afc414074a3e26237918baf231b4e56ce3d69347cf7a3017715895f4ee56a428672fcb804fb3c732da0000ccc9790b0081d SHA512 de2346d62b2e89ba04abe62a83f6ede7a496e80bcbe53a880a1aa8e87a8ebd9a430dd70fdc6aada836bb1021c6df21375fd0cbcf62dbb6e29a2f65d6d90cf2b9 +EBUILD poco-1.4.6_p4-r1.ebuild 3450 BLAKE2B bf27e0ab8a20a5fa04add798f24e6c2199bb0688266a963a020e858d7f77b0e709da65c5d3e0527880d57803341fa6b0dd95b5f1aa13977a364b310a17a14dde SHA512 3d69fe0e340a9406e26902577004c8314192a1794942c70a7f56342f9644fee87909a11ec3172b6d2f7b4c0f3687157f79130e88b60115442e74daafe6cfeb42 +EBUILD poco-1.4.6_p4.ebuild 3384 BLAKE2B a14df4b50fac726746d4692ac651e25ecfbfc487a7322d307d145b6e41de501c727e3d5729c6183275809cd8be3817e3f9ca256069abea147b01366c15375466 SHA512 dd0a231de34a03305f756d676ba6bd7e71bb919fac8752028610a4cbdd89807e058b74b1eba0a50b30878190dd42f2ca20cb84ea0cccbcd8cac8659ea9436a41 +EBUILD poco-1.7.6.ebuild 3302 BLAKE2B f1a53d2e9aefc01c2ea7c34d742e0bb974f2961613a887fc6e5a6a182600e9e9387e5581216d2a5529ca7aa65dba3ba2470dd2aa31bae86f2f4e867373ecc1eb SHA512 fc9587211f348abb68a5d94e76d926ae9e74ae840551d2ca493b0cd680d5be1b1193161ee69aa647f63c7a429465cf2dcfd5a0bbd6494e67156d46c796faf07e +EBUILD poco-1.9.0.ebuild 3302 BLAKE2B f1a53d2e9aefc01c2ea7c34d742e0bb974f2961613a887fc6e5a6a182600e9e9387e5581216d2a5529ca7aa65dba3ba2470dd2aa31bae86f2f4e867373ecc1eb SHA512 fc9587211f348abb68a5d94e76d926ae9e74ae840551d2ca493b0cd680d5be1b1193161ee69aa647f63c7a429465cf2dcfd5a0bbd6494e67156d46c796faf07e +MISC metadata.xml 2516 BLAKE2B b47d63bb959634ff62322bd2fbbb270d9521a2f7d3a40d75adc10420ca725fa9efba7ca0fa9fd956abffd2b74f093e83453395269c13ca3681ca5c96091310bb SHA512 a85a369be9cff2d225b6bedeba4a8fbaaf5735b811367ca6c213c56ffde6165f4e4fac9018243308d0a6b15ff416298a76738f35db10528c20571d5e71998a47 diff --git a/dev-libs/poco/files/1.4.6_p4-gentoo.patch b/dev-libs/poco/files/1.4.6_p4-gentoo.patch new file mode 100644 index 000000000000..8cfc9237db01 --- /dev/null +++ b/dev-libs/poco/files/1.4.6_p4-gentoo.patch @@ -0,0 +1,71 @@ +--- components 2012-11-18 16:56:59.000000000 +0100 ++++ components 2012-12-06 12:29:07.779546771 +0100 +@@ -1,14 +1,8 @@ +-CppUnit + Foundation + XML + Util + Net +-Crypto +-NetSSL_OpenSSL + Data +-Data/SQLite +-Data/ODBC +-Data/MySQL + Zip + PageCompiler + PageCompiler/File2Page +--- Data/ODBC/ODBC.make 2014-04-18 13:41:55.000000000 +0200 ++++ Data/ODBC/ODBC.make.new 2014-12-29 13:44:03.000000000 +0100 +@@ -14,9 +14,9 @@ + ifeq (0, $(shell test -d /usr/lib/$(OSARCH)-linux-gnu; echo $$?)) + ODBCLIBDIR = /usr/lib/$(OSARCH)-linux-gnu + else ifeq (0, $(shell test -d /usr/lib64; echo $$?)) +-ODBCLIBDIR = /usr/lib64 ++ODBCLIBDIR = /usr/$(LIBDIR) + else +-ODBCLIBDIR = /usr/lib ++ODBCLIBDIR = /usr/$(LIBDIR) + endif + endif + +@@ -35,10 +35,10 @@ + # -DODBCVER=0x0300: SQLHandle declaration issue + # -DNOMINMAX : MIN/MAX macros defined in windows conflict with libstdc++ + CXXFLAGS += -DODBCVER=0x0300 -DNOMINMAX +-else ifeq (0, $(shell test -e $(ODBCLIBDIR)/libodbc$(LIBLINKEXT); echo $$?)) ++else ifeq (unixodbc, $(GENTOO_ODBC)) + SYSLIBS += -lodbc + COMMONFLAGS += -DPOCO_UNIXODBC +-else ifeq (0, $(shell test -e $(ODBCLIBDIR)/libiodbc$(LIBLINKEXT); echo $$?)) ++else ifeq (unixodbc, $(GENTOO_ODBC)) + SYSLIBS += -liodbc -liodbcinst + COMMONFLAGS += -DPOCO_IODBC -I/usr/include/iodbc + else +--- Makefile 2012-11-18 16:57:00.000000000 +0100 ++++ Makefile 2012-12-06 12:29:07.779546771 +0100 +@@ -33,7 +33,7 @@ + + install: libexecs + mkdir -p $(INSTALLDIR)/include/Poco +- mkdir -p $(INSTALLDIR)/lib ++ mkdir -p $(INSTALLDIR)/$(LIBDIR) + mkdir -p $(INSTALLDIR)/bin + for comp in $(COMPONENTS) ; do \ + if [ -d "$(POCO_BASE)/$$comp/include" ] ; then \ +@@ -43,11 +43,11 @@ + find $(POCO_BUILD)/$$comp/bin -perm -700 -type f -exec cp -f {} $(INSTALLDIR)/bin \; ; \ + fi ; \ + done +- find $(POCO_BUILD)/lib -name "libPoco*" -type f -exec cp -f {} $(INSTALLDIR)/lib \; +- find $(POCO_BUILD)/lib -name "libPoco*" -type l -exec cp -Rf {} $(INSTALLDIR)/lib \; ++ find $(POCO_BUILD)/$(LIBDIR) -name "libPoco*" -type f -exec cp -f {} $(INSTALLDIR)/$(LIBDIR) \; ++ find $(POCO_BUILD)/$(LIBDIR) -name "libPoco*" -type l -exec cp -Rf {} $(INSTALLDIR)/$(LIBDIR) \; + +-libexecs = Foundation-libexec XML-libexec Util-libexec Net-libexec Crypto-libexec NetSSL_OpenSSL-libexec Data-libexec Data/SQLite-libexec Data/ODBC-libexec Data/MySQL-libexec Zip-libexec PageCompiler-libexec PageCompiler/File2Page-libexec +-tests = Foundation-tests XML-tests Util-tests Net-tests Crypto-tests NetSSL_OpenSSL-tests Data-tests Data/SQLite-tests Data/ODBC-tests Data/MySQL-tests Zip-tests ++libexecs = Foundation-libexec XML-libexec Util-libexec Net-libexec Data-libexec Zip-libexec PageCompiler-libexec ++tests = Foundation-tests XML-tests Util-tests Net-tests Data-tests Zip-tests + samples = Foundation-samples XML-samples Util-samples Net-samples Crypto-samples NetSSL_OpenSSL-samples Data-samples Zip-samples PageCompiler-samples + + .PHONY: $(libexecs) diff --git a/dev-libs/poco/files/poco-1.4.4-patch-for-libpcre-8.32.patch b/dev-libs/poco/files/poco-1.4.4-patch-for-libpcre-8.32.patch new file mode 100644 index 000000000000..d2654b59edec --- /dev/null +++ b/dev-libs/poco/files/poco-1.4.4-patch-for-libpcre-8.32.patch @@ -0,0 +1,45 @@ +Index: poco-1.5.0/Foundation/Makefile +=================================================================== +--- poco-1.5.0.orig/Foundation/Makefile ++++ poco-1.5.0/Foundation/Makefile +@@ -45,6 +45,7 @@ pcre_utf8_objects = pcre_ucd pcre_tables + + ifdef POCO_UNBUNDLED + SYSLIBS += -lpcre -lz ++ objects += $(pcre_utf8_objects) # unicode.cpp uses internal pcre tables + else + objects += $(zlib_objects) $(pcre_objects) $(pcre_utf8_objects) + endif +Index: poco-1.5.0/Foundation/src/pcre_internal.h +=================================================================== +--- poco-1.5.0.orig/Foundation/src/pcre_internal.h ++++ poco-1.5.0/Foundation/src/pcre_internal.h +@@ -1109,6 +1109,16 @@ typedef struct { + } ucp_type_table; + + ++/* renamed to avoid clashes with system pcre */ ++#define _pcre_utf8_table1 _poco__pcre_utf8_table1 ++#define _pcre_utf8_table1_size _poco__pcre_utf8_table1_size ++#define _pcre_utf8_table2 _poco__pcre_utf8_table2 ++#define _pcre_utf8_table3 _poco__pcre_utf8_table3 ++#define _pcre_utf8_table4 _poco__pcre_utf8_table4 ++#define _pcre_utt _poco__pcre_utt ++#define _pcre_utt_size _poco__pcre_utt_size ++#define _pcre_utt_names _poco__pcre_utt_names ++#define _pcre_OP_lengths _poco__pcre_OP_lengths + /* Internal shared data tables. These are tables that are used by more than one + of the exported public functions. They have to be "external" in the C sense, + but are not part of the PCRE public API. The data for these tables is in the +@@ -1153,6 +1163,11 @@ typedef struct { + pcre_int32 other_case; + } ucd_record; + ++/* renamed to avoid clashes with system pcre */ ++#define _pcre_ucd_records _poco__pcre_ucd_records ++#define _pcre_ucd_stage1 _poco__pcre_ucd_stage1 ++#define _pcre_ucd_stage2 _poco__pcre_ucd_stage2 ++#define _pcre_ucp_gentype _poco__pcre_ucp_gentype + extern const ucd_record _pcre_ucd_records[]; + extern const uschar _pcre_ucd_stage1[]; + extern const pcre_uint16 _pcre_ucd_stage2[]; diff --git a/dev-libs/poco/files/poco-1.7.2-iodbc-incdir.patch b/dev-libs/poco/files/poco-1.7.2-iodbc-incdir.patch new file mode 100644 index 000000000000..e41d8f390d9f --- /dev/null +++ b/dev-libs/poco/files/poco-1.7.2-iodbc-incdir.patch @@ -0,0 +1,13 @@ +diff --git a/cmake/FindODBC.cmake b/cmake/FindODBC.cmake +index 9e229ed..5d79c7e 100644 +--- a/cmake/FindODBC.cmake ++++ b/cmake/FindODBC.cmake +@@ -16,7 +16,7 @@ + find_path(ODBC_INCLUDE_DIRECTORIES + NAMES sql.h + HINTS +- /usr/include ++ /usr/include/iodbc + /usr/include/odbc + /usr/local/include + /usr/local/include/odbc diff --git a/dev-libs/poco/metadata.xml b/dev-libs/poco/metadata.xml new file mode 100644 index 000000000000..e115e946586f --- /dev/null +++ b/dev-libs/poco/metadata.xml @@ -0,0 +1,47 @@ + + + + + tommy@gentoo.org + Thomas Sachau (Tommy[D]) + + + cpp@gentoo.org + Gentoo C++ Project + + +POCO, the C++ Portable Components, is a collection of open source +C++ class libraries that simplify and accelerate the development of +network-centric, portable applications in C++. The libraries integrate +perfectly with the C++ Standard Library and fill many of the functional +gaps left open by it. Their modular and efficient design and implementation +makes the C++ Portable Components extremely well suited for embedded +development, an area where the C++ programming language is becoming +increasingly popular, due to its suitability for both low-level (device +I/O, interrupt handlers, etc.) and high-level object-oriented development. +Of course, POCO is also ready for enterprise-level challenges. + +The POCO libraries free developers from re-inventing the wheel, and allow +them to spend their time on more worthwhile areas, such as getting things +done quickly and working on the features that make their application unique. + + + poco + pocoproject/poco + + + Add Support for the 7z archive format + Enable support to write Apache modules using POCO + Build and install a minimal C++ parser + Encryption and digital signing classes + Database abstraction layer to easily send/retrieve data to/from various databases + Utility to convert ordinary files to Page Compiler source files + Add JSON support + Add dev-db/mongodb support + Classes to write network clients & servers + Simple compiler translating HTML pages containing embedded C++ code into HTTPRequestHandler classes + POCO documentation generator + Several utility classes (like logger, timer, config file parser) + Add support for the zip & gz archive formats + + 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..24c307774d53 --- /dev/null +++ b/dev-libs/poco/poco-1.4.6_p4-r1.ebuild @@ -0,0 +1,121 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +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++ libraries for building network-based applications" +HOMEPAGE="https://pocoproject.org/" +SRC_URI="https://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 +} diff --git a/dev-libs/poco/poco-1.4.6_p4.ebuild b/dev-libs/poco/poco-1.4.6_p4.ebuild new file mode 100644 index 000000000000..1a4742f5ae5d --- /dev/null +++ b/dev-libs/poco/poco-1.4.6_p4.ebuild @@ -0,0 +1,118 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +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++ libraries for building network-based applications" +HOMEPAGE="https://pocoproject.org/" +SRC_URI="https://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 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? ( dev-libs/openssl ) + 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 +} diff --git a/dev-libs/poco/poco-1.7.6.ebuild b/dev-libs/poco/poco-1.7.6.ebuild new file mode 100644 index 000000000000..127c9d0ac2c1 --- /dev/null +++ b/dev-libs/poco/poco-1.7.6.ebuild @@ -0,0 +1,115 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit cmake-utils + +DESCRIPTION="C++ libraries for building network-based applications" +HOMEPAGE="https://pocoproject.org/" +SRC_URI="https://github.com/pocoproject/${PN}/archive/${P}-release.tar.gz -> ${P}.tar.gz" +LICENSE="Boost-1.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~x86" +IUSE="7z apache cppparser +crypto +data examples +file2pagecompiler +json +pagecompiler iodbc libressl +mongodb mysql +net odbc pdf pocodoc sqlite +ssl test +util +xml +zip" +REQUIRED_USE="7z? ( xml ) + apache? ( net util ) + file2pagecompiler? ( pagecompiler ) + iodbc? ( odbc ) + mongodb? ( data ) + mysql? ( data ) + odbc? ( data ) + pagecompiler? ( json net util xml ) + pocodoc? ( cppparser util xml ) + sqlite? ( data ) + test? ( data? ( sqlite ) json util xml )" + +RDEPEND=">=dev-libs/libpcre-8.13 + xml? ( dev-libs/expat ) + apache? ( dev-libs/apr + dev-libs/apr-util + www-servers/apache ) + mysql? ( virtual/mysql ) + odbc? ( iodbc? ( dev-db/libiodbc ) + !iodbc? ( dev-db/unixODBC ) ) + ssl? ( + !libressl? (