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 { lib
, mkDerivation , mkDerivation
, fetchFromGitHub , fetchFromGitHub
, fetchpatch
, cmake , cmake
, pkg-config , pkg-config
, doxygen , doxygen
@ -33,6 +34,12 @@ mkDerivation rec {
patches = [ patches = [
# spuce's CMakeLists.txt uses QT5_USE_Modules, which does not seem to work on Nix # spuce's CMakeLists.txt uses QT5_USE_Modules, which does not seem to work on Nix
./spuce.patch ./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 ]; 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 { stdenv.mkDerivation rec {
pname = "poco"; pname = "poco";
version = "1.11.1"; version = "1.12.4";
src = fetchurl { src = fetchFromGitHub {
url = "https://pocoproject.org/releases/${pname}-${version}/${pname}-${version}-all.tar.gz"; owner = "pocoproject";
sha256 = "sha256-MczOYCAEcnAAO/tbDafirUMohMI9PNUJyG9HzzpeXSo="; 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 ]; nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ unixODBC libmysqlclient ]; buildInputs = [ unixODBC libmysqlclient ];
propagatedBuildInputs = [ zlib pcre expat sqlite openssl ]; propagatedBuildInputs = [ zlib pcre2 expat sqlite openssl ];
outputs = [ "out" "dev" ]; outputs = [ "out" "dev" ];
@ -43,11 +26,18 @@ stdenv.mkDerivation rec {
"-DPOCO_UNBUNDLED=ON" "-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; { meta = with lib; {
homepage = "https://pocoproject.org/"; homepage = "https://pocoproject.org/";
description = "Cross-platform C++ libraries with a network/internet focus"; description = "Cross-platform C++ libraries with a network/internet focus";
license = licenses.boost; license = licenses.boost;
maintainers = with maintainers; [ orivej ]; maintainers = with maintainers; [ orivej tomodachi94 ];
platforms = platforms.unix; platforms = platforms.unix;
}; };
} }