summaryrefslogtreecommitdiff
path: root/dev-libs/poco
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2025-01-04 06:31:29 +0000
committerV3n3RiX <venerix@koprulu.sector>2025-01-04 06:31:29 +0000
commit38efae7f3eb932ed41510139679efd5c1e2f5eda (patch)
treed331259e03d114338bc5a96a883b728facdc4cde /dev-libs/poco
parent5087ee3bf0055aae666159351774f2fb3610e571 (diff)
gentoo auto-resync : 04:01:2025 - 06:31:29
Diffstat (limited to 'dev-libs/poco')
-rw-r--r--dev-libs/poco/Manifest4
-rw-r--r--dev-libs/poco/metadata.xml6
-rw-r--r--dev-libs/poco/poco-1.14.0.ebuild138
3 files changed, 145 insertions, 3 deletions
diff --git a/dev-libs/poco/Manifest b/dev-libs/poco/Manifest
index ec98856a60bd..6e955de1f772 100644
--- a/dev-libs/poco/Manifest
+++ b/dev-libs/poco/Manifest
@@ -1,6 +1,8 @@
AUX poco-1.10.1-iodbc-incdir.patch 369 BLAKE2B 345540ebd9c448a21e6c8adccba040a43fdf1db53cb0139f3cab5eb8ca67ca30dfa97058e4db4618d27ab2cd642e205349f5f70970fd2a4961a018aa7e1c5dac SHA512 1a155b10e98cdce8659a9308ac70e8114361a0062a1af469dc774b5d32bc00b5f1aa0e873fa5061625527ddeb006fdf29939b1899939a193d8724e491dedba10
DIST poco-1.12.4.tar.gz 11296139 BLAKE2B 45e1214616e78041d5ca512cee46621c006fe21f51231f3261dc40ca4941eb3cd4e52db493aa826779784f9d3f35cfd08e3e9d08fb35ebec2d610fb6528c635a SHA512 730700a24b5a00d44aa85914e7d3c9eff76969a123a67315ba5e9b2d18c0ace70d2664d8a611496851f497aa4985d36685a67813a95e814461ae0fffdb460d91
DIST poco-1.13.3.tar.gz 11332562 BLAKE2B 04380cae92bbd2427873f0ea1a3fcade244ee5168390e26081983ded9faaf22e456bdd4ae87f9c77bafc92155f860ea9f56678ec2204bcd7c51a871e7f00d759 SHA512 084064fb462c9e7993d069ebdf395802af900ed92c5b294465a2c246162bb86caa3505985de329e8110d3e9fb3bc39ae9536d523843729d4ed5ce00c35289d92
+DIST poco-1.14.0.tar.gz 12158142 BLAKE2B 3ae9a520941634ac9aa72d323541d6433ac2e73d4d19e0654f932ea031d17870ca4ad764a8e3c5e68d69c5dc9750d779102d80d6d810598db275f269928ae8ea SHA512 4475a0ede5d06e4ce9537295fec92fa39b8fd5635d1cfb38498be4f707bc62b4a8b57672d2a15b557114e4115cc45480d27d0c856b7bd982eeec7adad9ff2582
EBUILD poco-1.12.4.ebuild 4220 BLAKE2B 9be84416a479873236f983cc7b7eed506361e35b6200b8b0f328bc476fec5cf6521a4991198418284136e389cd5ac2a867cf8fd4b66c5251705e781ea51ad2b8 SHA512 dd99c1db6e4e00d31dbe115a972464011b4b138c8f6ef785d3083a7112215fc7655dc199a4b3a913298ac0b9d8ca6c10d63a8d05c0d974ca17f599022f6a2109
EBUILD poco-1.13.3.ebuild 3907 BLAKE2B b570a253f8b7e3d7dc38a2e94b13d518d7e1a5e8e44b1b7d940a88013716a8598b452052ad1978af2a972a669ac4c628975ac6aad503aae0c406be49a8e16c99 SHA512 2d451bf30476b3db92d8155c3f4e60cd64288fc93c1f0a05403d5624d91073135776d8040c0b95c348199672deccb2ff60eb0fe63d07c61bea50eac3d539a768
-MISC metadata.xml 2808 BLAKE2B 4c2ade2415149e209d4ca091a09640c108a8fc182b9c8636f9d52fc8ade3ff89e871f436aaccfc2534f1c91aa3f4213eb16da69d0defcd3faf612e2c8a0fb40e SHA512 5a2aa5c7299d5f9f275364ec22f4d9f426116f02fde30698591e60299e42d54c4a39f2a01a0308fc1407c5065e0bfeaae0698db09713688cbe80faf041fc4c07
+EBUILD poco-1.14.0.ebuild 3849 BLAKE2B 9a2e4aba34218756b32f24295e6193b78eac2b434f81ddb66468f76acc6dd834c92a63aedc74397d264659bcedc24a445d34a219b9e3f0bfb5b5f427bee57265 SHA512 223e7cebfdc00ca4474ba028dfafc2c4081396dc63b87d793974788e7e6a469043627cd9a8c5bad438b11d35ff08422d456d1c53306e493a6818dd775c2efe43
+MISC metadata.xml 2947 BLAKE2B b2c04966e9be3ddebceb3098fa213f2196ac594b96cd6885e3fbc1050971e9bf9e88f234f9680ac4dcc313dd766810315066f212b4411ae56d4689c6ad07a24c SHA512 c9c386bacca78595bf35d77b89fc2935d41bf2290e486532f66e484cee039f66a553475202c78e1eb7f57caa7dec7e723469d67a043e79141f698cbeb7144ed7
diff --git a/dev-libs/poco/metadata.xml b/dev-libs/poco/metadata.xml
index f73e85906ed1..b46a644c0216 100644
--- a/dev-libs/poco/metadata.xml
+++ b/dev-libs/poco/metadata.xml
@@ -31,12 +31,14 @@ done quickly and working on the features that make their application unique.
</upstream>
<use>
<flag name="7z">Add Support for the 7z archive format</flag>
+ <flag name="avahi">Add Support for avahi DNS-SD (zeroconf)</flag>
<flag name="activerecord">Add ActiveRecord support</flag>
<flag name="cppparser">Build and install a minimal C++ parser</flag>
+ <flag name="crypt">Encryption and digital signing classes (including SSL and JWT).</flag>
<flag name="data">Database abstraction layer to easily send/retrieve data to/from various databases</flag>
<flag name="file2pagecompiler">Utility to convert ordinary files to Page Compiler source files</flag>
<flag name="json">Add JSON support</flag>
- <flag name="jwt" restrict="&gt;=dev-libs/poco-1.12.2-r1">Add JSON Web Token support</flag>
+ <flag name="jwt">Add JSON Web Token support</flag>
<flag name="mariadb">Prefer <pkg>dev-db/mariadb-connector-c</pkg> over <pkg>dev-db/mysql-connector-c</pkg></flag>
<flag name="mongodb">Add <pkg>dev-db/mongodb</pkg> support</flag>
<flag name="net">Classes to write network clients &amp; servers</flag>
@@ -44,7 +46,7 @@ done quickly and working on the features that make their application unique.
<flag name="pocodoc">POCO documentation generator</flag>
<flag name="prometheus">Add prometheus monitoring system support</flag>
<flag name="ssl">Encryption and digital signing classes</flag>
- <flag name="util">Several utility classes (like logger, timer, config file parser)</flag>
+ <flag name="util">Several utility classes (like logger, timer, config file parser). Also enables JSON</flag>
<flag name="zip">Add support for the zip &amp; gz archive formats</flag>
</use>
</pkgmetadata>
diff --git a/dev-libs/poco/poco-1.14.0.ebuild b/dev-libs/poco/poco-1.14.0.ebuild
new file mode 100644
index 000000000000..122e330a4374
--- /dev/null
+++ b/dev-libs/poco/poco-1.14.0.ebuild
@@ -0,0 +1,138 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+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"
+S="${WORKDIR}/${PN}-${P}-release"
+
+LICENSE="Boost-1.0"
+# SHARED_LIBRARY_VERSION -> "${S}"/libversion
+SLOT="0/110"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+IUSE="7z activerecord avahi cppparser +crypt +data examples +file2pagecompiler iodbc mariadb +mongodb mysql +net odbc +pagecompiler pdf pocodoc postgres prometheus sqlite test +util +xml +zip"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="
+ activerecord? ( util xml )
+ 7z? ( xml )
+ file2pagecompiler? ( pagecompiler )
+ iodbc? ( odbc )
+ mongodb? ( data )
+ mysql? ( data )
+ odbc? ( data )
+ postgres? ( data )
+ pagecompiler? ( net util xml )
+ pocodoc? ( cppparser util xml )
+ sqlite? ( data )
+ crypt? ( util )
+ test? ( data? ( sqlite ) activerecord cppparser crypt pdf prometheus xml )
+"
+
+BDEPEND="
+ virtual/pkgconfig
+"
+
+RDEPEND="
+ >=dev-libs/libpcre2-10.40:=
+ dev-libs/libutf8proc:=
+
+ activerecord? ( !app-arch/arc )
+ avahi? ( net-dns/avahi:= )
+ mysql? ( dev-db/mysql-connector-c:= )
+ mariadb? ( dev-db/mariadb-connector-c:= )
+ postgres? ( dev-db/postgresql:= )
+ odbc? (
+ iodbc? ( dev-db/libiodbc )
+ !iodbc? ( dev-db/unixODBC )
+ )
+ pdf? ( media-libs/libpng:= )
+ sqlite? ( dev-db/sqlite:3 )
+ crypt? (
+ dev-libs/openssl:=
+ )
+ xml? ( dev-libs/expat )
+ zip? ( sys-libs/zlib:= )
+"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ cmake_src_prepare
+
+ if [[ ${SLOT} != 0/$(< "${S}"/libversion) ]] ; then
+ die "Please update subslot in ebuild to the version in ${S}/libversion!"
+ fi
+
+ if use test ; then
+ # ignore missing tests on experimental library
+ # and tests requiring running DB-servers, internet connections, etc.
+ sed -i -e '/testsuite/d' \
+ {Data/{,MySQL,ODBC},MongoDB,Net,NetSSL_OpenSSL,Redis}/CMakeLists.txt || die
+
+ # Poco expands ~ using passwd, which does not match $HOME in the build environment
+ sed -i -e '/CppUnit_addTest.*testExpand/d' \
+ Foundation/testsuite/src/PathTest.cpp || die
+ fi
+
+ sed -i 's/ENABLE_DNSSD_AVHAI/ENABLE_DNSSD_AVAHI/' DNSSD/CMakeLists.txt || die
+}
+
+src_configure() {
+ # apache support is dead and buggy, https://github.com/pocoproject/poco/issues/1764
+ local mycmakeargs=(
+ -DPOCO_UNBUNDLED=ON
+ -DENABLE_APACHECONNECTOR=OFF
+ -DENABLE_ACTIVERECORD="$(usex activerecord)"
+ -DENABLE_ACTIVERECORD_COMPILER="$(usex activerecord)"
+ -DENABLE_CPPPARSER="$(usex cppparser)"
+ -DENABLE_CRYPTO="$(usex crypt)"
+ -DENABLE_DATA="$(usex data)"
+ -DENABLE_DATA_MYSQL="$(usex mysql)"
+ -DENABLE_DATA_ODBC="$(usex odbc)"
+ -DENABLE_DATA_POSTGRESQL="$(usex postgres)"
+ -DENABLE_DATA_SQLITE="$(usex sqlite)"
+ -DENABLE_DNSSD="$(usex avahi)"
+ -DENABLE_DNSSD_AVAHI="$(usex avahi)"
+ -DENABLE_JSON="$(usex util)"
+ -DENABLE_JWT="$(usex crypt)"
+ -DENABLE_MONGODB="$(usex mongodb)"
+ -DENABLE_NET="$(usex net)"
+ -DENABLE_NETSSL="$(usex crypt)"
+ -DENABLE_NETSSL_WIN=OFF
+ -DENABLE_PAGECOMPILER="$(usex pagecompiler)"
+ -DENABLE_PAGECOMPILER_FILE2PAGE="$(usex file2pagecompiler)"
+ -DENABLE_PDF="$(usex pdf)"
+ -DENABLE_POCODOC="$(usex pocodoc)"
+ -DENABLE_PROMETHEUS="$(usex prometheus)"
+ -DENABLE_SEVENZIP="$(usex 7z)"
+ -DENABLE_TESTS="$(usex test)"
+ -DENABLE_UTIL="$(usex util)"
+ -DENABLE_XML="$(usex xml)"
+ -DENABLE_ZIP="$(usex zip)"
+ )
+
+ cmake_src_configure
+}
+
+src_test() {
+ POCO_BASE="${S}" cmake_src_test -E DataPostgreSQL
+}
+
+src_install() {
+ cmake_src_install
+
+ if use examples ; then
+ for sd in */samples ; do
+ docinto examples/${sd%/samples}
+ dodoc -r ${sd}
+ done
+
+ find "${D}/usr/share/doc/${PF}/examples" \
+ -iname "*.sln" -or -iname "*.vcproj" -or \
+ -iname "*.vmsbuild" -or -iname "*.properties" \
+ | xargs rm -v || die
+ fi
+}