diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/poco')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/poco/default.nix | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/poco/default.nix b/nixpkgs/pkgs/development/libraries/poco/default.nix new file mode 100644 index 000000000000..57e8fb1a5a75 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/poco/default.nix @@ -0,0 +1,53 @@ +{ lib, stdenv, fetchurl, fetchpatch, cmake, pkg-config, zlib, pcre, expat, sqlite, openssl, unixODBC, libmysqlclient }: + +stdenv.mkDerivation rec { + pname = "poco"; + + version = "1.10.1"; + + src = fetchurl { + url = "https://pocoproject.org/releases/${pname}-${version}/${pname}-${version}-all.tar.gz"; + sha256 = "1jilzh0h6ik5lr167nax7q6nrpzxl99p11pkl202ig06pgh32nbz"; + }; + + patches = [ + # Use GNUInstallDirs (https://github.com/pocoproject/poco/pull/3105) + (fetchpatch { + name = "use-gnuinstalldirs.patch"; + url = "https://github.com/pocoproject/poco/commit/9e8f84dff4575f01be02e0b07364efd1561ce66c.patch"; + sha256 = "1bj4i93gxr7pwx33bfyhg20ad4ak1rbxkrlpsgzk7rm6mh0mld26"; + # 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 = [ openssl unixODBC libmysqlclient ]; + propagatedBuildInputs = [ zlib pcre expat sqlite ]; + + outputs = [ "out" "dev" ]; + + MYSQL_DIR = libmysqlclient; + MYSQL_INCLUDE_DIR = "${MYSQL_DIR}/include/mysql"; + + cmakeFlags = [ + "-DPOCO_UNBUNDLED=ON" + ]; + + meta = with lib; { + homepage = "https://pocoproject.org/"; + description = "Cross-platform C++ libraries with a network/internet focus"; + license = licenses.boost; + maintainers = with maintainers; [ orivej ]; + platforms = platforms.unix; + }; +} |