Merge pull request #232340 from tomodachi94/update/poco/1.12.4

poco: 1.11.1 -> 1.12.4
This commit is contained in:
Robert Scott 2023-05-20 13:39:01 +01:00 committed by GitHub
commit 4babdb661c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 23 additions and 26 deletions

View file

@ -1,6 +1,7 @@
{ lib
, mkDerivation
, fetchFromGitHub
, fetchpatch
, cmake
, pkg-config
, doxygen
@ -33,6 +34,12 @@ mkDerivation rec {
patches = [
# spuce's CMakeLists.txt uses QT5_USE_Modules, which does not seem to work on Nix
./spuce.patch
# Poco had some breaking API changes in 1.12
(fetchpatch {
name = "poco-1.12-compat.patch";
url = "https://github.com/pothosware/PothosCore/commit/092d1209b0fd0aa8a1733706c994fa95e66fd017.patch";
hash = "sha256-bZXG8kD4+1LgDV8viZrJ/DMjg8UvW7b5keJQDXurfkA=";
})
];
nativeBuildInputs = [ cmake pkg-config doxygen wrapQtAppsHook ];

View file

@ -1,38 +1,21 @@
{ lib, stdenv, fetchurl, fetchpatch, cmake, pkg-config, zlib, pcre, expat, sqlite, openssl, unixODBC, libmysqlclient }:
{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, zlib, pcre2, expat, sqlite, openssl, unixODBC, libmysqlclient }:
stdenv.mkDerivation rec {
pname = "poco";
version = "1.11.1";
version = "1.12.4";
src = fetchurl {
url = "https://pocoproject.org/releases/${pname}-${version}/${pname}-${version}-all.tar.gz";
sha256 = "sha256-MczOYCAEcnAAO/tbDafirUMohMI9PNUJyG9HzzpeXSo=";
src = fetchFromGitHub {
owner = "pocoproject";
repo = "poco";
sha256 = "sha256-gQ97fkoTGI6yuMPjEsITfapH9FSQieR8rcrPR1nExxc=";
rev = "poco-${version}-release";
};
patches = [
# Use GNUInstallDirs (https://github.com/pocoproject/poco/pull/3503)
(fetchpatch {
name = "use-gnuinstalldirs.patch";
url = "https://github.com/pocoproject/poco/commit/16a2a74f6c28c6e6baca2ba26b4964b51d8a1b74.patch";
sha256 = "sha256-mkemG8UemJEUQxae1trKakhnJFJW0AufDYFAbmnINbY=";
# Files not included in release tarball
excludes = [
"Encodings/Compiler/CMakeLists.txt"
"PocoDoc/CMakeLists.txt"
"NetSSL_Win/CMakeLists.txt"
"PDF/CMakeLists.txt"
"SevenZip/CMakeLists.txt"
"ApacheConnector/CMakeLists.txt"
"CppParser/CMakeLists.txt"
];
})
];
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ unixODBC libmysqlclient ];
propagatedBuildInputs = [ zlib pcre expat sqlite openssl ];
propagatedBuildInputs = [ zlib pcre2 expat sqlite openssl ];
outputs = [ "out" "dev" ];
@ -43,11 +26,18 @@ stdenv.mkDerivation rec {
"-DPOCO_UNBUNDLED=ON"
];
postFixup = ''
grep -rlF INTERFACE_INCLUDE_DIRECTORIES "$dev/lib/cmake/Poco" | while read -r f; do
substituteInPlace "$f" \
--replace "$"'{_IMPORT_PREFIX}/include' ""
done
'';
meta = with lib; {
homepage = "https://pocoproject.org/";
description = "Cross-platform C++ libraries with a network/internet focus";
license = licenses.boost;
maintainers = with maintainers; [ orivej ];
maintainers = with maintainers; [ orivej tomodachi94 ];
platforms = platforms.unix;
};
}