Loading pkgs/development/libraries/brunsli/default.nix 0 → 100644 +56 −0 Original line number Diff line number Diff line { lib , stdenv , fetchFromGitHub , fetchpatch , cmake , brotli }: stdenv.mkDerivation rec { pname = "brunsli"; version = "0.1"; outputs = [ "out" "dev" ]; src = fetchFromGitHub { owner = "google"; repo = "brunsli"; rev = "v${version}"; hash = "sha256-ZcrRz2xSoRepgG8KZYY/JzgONerItW0e6mH1PYsko98="; }; patches = [ # unvendor brotli (fetchpatch { url = "https://cgit.freebsd.org/ports/plain/graphics/brunsli/files/patch-CMakeLists.txt"; extraPrefix = ""; hash = "sha256-/WPOG9OcEDj9ObBSXEM8Luq4Rix+PS2MvsYyHhK5mns="; }) (fetchpatch { url = "https://cgit.freebsd.org/ports/plain/graphics/brunsli/files/patch-brunsli.cmake"; extraPrefix = ""; hash = "sha256-+HXA9Tin+l2St7rRUEBM0AfhAjSoFxz8UX7hsg12aFg="; }) ]; postPatch = '' rm -r third_party '' + lib.optionalString stdenv.isDarwin '' rm -r build ''; nativeBuildInputs = [ cmake ]; buildInputs = [ brotli ]; meta = { description = "Lossless JPEG repacking library"; homepage = "https://github.com/google/brunsli"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ dotlambda ]; }; } pkgs/development/libraries/gdal/default.nix +141 −70 Original line number Diff line number Diff line { lib, stdenv, fetchFromGitHub, fetchpatch, unzip, libjpeg, libtiff, zlib, postgresql , libmysqlclient, libgeotiff, pythonPackages, proj, geos, openssl, libpng , sqlite, libspatialite, poppler, hdf4, qhull, giflib, expat, libiconv, libxml2 , autoreconfHook, netcdfSupport ? true, netcdf, hdf5, curl, pkg-config }: with lib; { lib , stdenv , fetchFromGitHub , bison , cmake , doxygen , graphviz , pkg-config , python3 , swig , armadillo , arrow-cpp , c-blosc , brunsli , cfitsio , crunch , curl , cryptopp , libdeflate , expat , libgeotiff , geos , giflib , libheif , dav1d , libaom , libde265 , rav1e , x265 , hdf4 , hdf5-cpp , libiconv , libjpeg , json_c , libjxl , libhwy , lerc , xz , libxml2 , lz4 , libmysqlclient , netcdf , openexr , openjpeg , openssl , pcre2 , libpng , poppler , postgresql , proj , qhull , libspatialite , sqlite , libtiff , tiledb , libwebp , xercesc , zlib , zstd }: stdenv.mkDerivation rec { pname = "gdal"; version = "3.4.2"; version = "3.5.2"; src = fetchFromGitHub { owner = "OSGeo"; repo = "gdal"; rev = "v${version}"; sha256 = "sha256-bE55VV0SrG8nxCLdpODRalnuAkn+olRdMLUjduavj6M="; sha256 = "sha256-jtAFI1J64ZaTqIljqQL1xOiTGC79AZWcIgidozWczMM="; }; sourceRoot = "source/gdal"; nativeBuildInputs = [ bison cmake doxygen graphviz pkg-config python3.pkgs.setuptools python3.pkgs.wrapPython swig ]; nativeBuildInputs = [ autoreconfHook pkg-config unzip ]; cmakeFlags = [ "-DGDAL_USE_INTERNAL_LIBS=OFF" "-DGEOTIFF_INCLUDE_DIR=${lib.getDev libgeotiff}/include" "-DGEOTIFF_LIBRARY_RELEASE=${lib.getLib libgeotiff}/lib/libgeotiff${stdenv.hostPlatform.extensions.sharedLibrary}" "-DMYSQL_INCLUDE_DIR=${lib.getDev libmysqlclient}/include/mysql" "-DMYSQL_LIBRARY=${lib.getLib libmysqlclient}/lib/mysql/libmysqlclient${stdenv.hostPlatform.extensions.sharedLibrary}" ] ++ lib.optionals (!stdenv.isDarwin) [ "-DCMAKE_SKIP_BUILD_RPATH=ON" # without, libgdal.so can't find libmariadb.so ] ++ lib.optionals stdenv.isDarwin [ "-DCMAKE_BUILD_WITH_INSTALL_NAME_DIR=ON" ]; buildInputs = [ libjpeg libtiff libpng proj openssl sqlite libspatialite armadillo c-blosc brunsli cfitsio crunch curl cryptopp libdeflate expat libgeotiff poppler hdf4 qhull geos giflib expat libheif dav1d # required by libheif libaom # required by libheif libde265 # required by libheif rav1e # required by libheif x265 # required by libheif hdf4 hdf5-cpp libjpeg json_c libjxl libhwy # required by libjxl lerc xz libxml2 lz4 libmysqlclient netcdf openjpeg openssl pcre2 libpng poppler postgresql ] ++ (with pythonPackages; [ python setuptools numpy wrapPython ]) ++ lib.optional stdenv.isDarwin libiconv ++ lib.optionals netcdfSupport [ netcdf hdf5 curl ]; configureFlags = [ "--with-expat=${expat.dev}" "--with-jpeg=${libjpeg.dev}" "--with-libtiff=${libtiff.dev}" # optional (without largetiff support) "--with-png=${libpng.dev}" # optional "--with-poppler=${poppler.dev}" # optional "--with-libz=${zlib.dev}" # optional "--with-pg=yes" # since gdal 3.0 doesn't use ${postgresql}/bin/pg_config "--with-mysql=${getDev libmysqlclient}/bin/mysql_config" "--with-geotiff=${libgeotiff}" "--with-sqlite3=${sqlite.dev}" "--with-spatialite=${libspatialite.dev}" "--with-python" # optional "--with-proj=${proj.dev}" # optional "--with-geos=${geos}/bin/geos-config" # optional "--with-hdf4=${hdf4.dev}" # optional "--with-xml2=yes" # optional (if netcdfSupport then "--with-netcdf=${netcdf}" else "") ]; hardeningDisable = [ "format" ]; CXXFLAGS = lib.concatStringsSep " " [ "-fpermissive" # poppler uses std::optional "-std=c++17" ]; # - Unset CC and CXX as they confuse libtool. # - teach gdal that libdf is the legacy name for libhdf preConfigure = '' substituteInPlace configure \ --replace "-lmfhdf -ldf" "-lmfhdf -lhdf" ''; preBuild = '' substituteInPlace swig/python/GNUmakefile \ --replace "ifeq (\$(STD_UNIX_LAYOUT),\"TRUE\")" "ifeq (1,1)" ''; proj qhull libspatialite sqlite libtiff tiledb libwebp zlib zstd python3 python3.pkgs.numpy ] ++ lib.optionals (!stdenv.isDarwin) [ # tests for formats enabled by these packages fail on macos arrow-cpp openexr xercesc ] ++ lib.optional stdenv.isDarwin libiconv; postInstall = '' wrapPythonPrograms Loading @@ -91,13 +159,11 @@ stdenv.mkDerivation rec { # calls (coming from the python world) preCheck = '' pushd ../autotest # something has made files here read-only by this point chmod -R u+w . export HOME=$(mktemp -d) export PYTHONPATH="$out/${pythonPackages.python.sitePackages}:$PYTHONPATH" export PYTHONPATH="$out/${python3.sitePackages}:$PYTHONPATH" ''; installCheckInputs = with pythonPackages; [ installCheckInputs = with python3.pkgs; [ pytestCheckHook pytest-env lxml Loading @@ -115,12 +181,16 @@ stdenv.mkDerivation rec { # https://github.com/OSGeo/gdal/issues/5523 "test_transformer_dem_overrride_srs" "test_osr_ct_options_area_of_interest" # ZIP does not support timestamps before 1980 " test_sentinel2_zipped" ] ++ lib.optionals (!stdenv.isx86_64) [ # likely precision-related expecting x87 behaviour "test_jp2openjpeg_22" ] ++ lib.optionals stdenv.isDarwin [ # flaky on macos "test_rda_download_queue" ] ++ lib.optionals (lib.versionOlder proj.version "8") [ "test_ogr_parquet_write_crs_without_id_in_datum_ensemble_members" ]; postCheck = '' popd # ../autotest Loading @@ -129,8 +199,9 @@ stdenv.mkDerivation rec { meta = { description = "Translator library for raster geospatial data formats"; homepage = "https://www.gdal.org/"; changelog = "https://docs.unidata.ucar.edu/netcdf-c/${src.rev}/RELEASE_NOTES.html"; license = lib.licenses.mit; maintainers = [ lib.maintainers.marcweber ]; platforms = with lib.platforms; linux ++ darwin; maintainers = with lib.maintainers; [ marcweber dotlambda ]; platforms = lib.platforms.unix; }; } pkgs/development/libraries/lerc/default.nix 0 → 100644 +30 −0 Original line number Diff line number Diff line { lib , stdenv , fetchFromGitHub , cmake }: stdenv.mkDerivation rec { pname = "lerc"; version = "3.0"; outputs = [ "out" "dev" ]; src = fetchFromGitHub { owner = "esri"; repo = "lerc"; rev = "v${version}"; hash = "sha256-QO5+ouQy5nOcAgvxMeBDoSBP+G3ClDjXipnkuSIDcP0="; }; nativeBuildInputs = [ cmake ]; meta = { description = "C++ library for Limited Error Raster Compression"; homepage = "https://github.com/esri/lerc"; license = lib.licenses.asl20; maintainers = with lib.maintainers; [ dotlambda ]; }; } pkgs/development/libraries/libgeotiff/default.nix +18 −5 Original line number Diff line number Diff line { lib, stdenv, fetchFromGitHub, libtiff, libjpeg, proj, zlib, autoreconfHook }: { lib , stdenv , fetchFromGitHub , autoreconfHook , pkg-config , libjpeg , libtiff , proj , zlib }: stdenv.mkDerivation rec { version = "1.5.1"; version = "1.7.1"; pname = "libgeotiff"; src = fetchFromGitHub { owner = "OSGeo"; repo = "libgeotiff"; rev = version; sha256 = "081ag23pn2n5y4fkb2rnh4hmcnq92siqiqv0s20jmx0j3s2nvfxy"; hash = "sha256-bE6UAUKiorriTgYrqhxbMAN2NEtmV/8IIfF02RUghSI="; }; outputs = [ "out" "dev" ]; Loading @@ -20,15 +29,19 @@ stdenv.mkDerivation rec { "--with-zlib=${zlib.dev}" ]; nativeBuildInputs = [ autoreconfHook ]; nativeBuildInputs = [ autoreconfHook pkg-config ]; buildInputs = [ libtiff proj ]; hardeningDisable = [ "format" ]; #hardeningDisable = [ "format" ]; meta = { description = "Library implementing attempt to create a tiff based interchange format for georeferenced raster imagery"; homepage = "https://github.com/OSGeo/libgeotiff"; changelog = "https://github.com/OSGeo/libgeotiff/blob/${src.rev}/libgeotiff/NEWS"; license = lib.licenses.mit; maintainers = [lib.maintainers.marcweber]; platforms = with lib.platforms; linux ++ darwin; Loading pkgs/development/libraries/mapnik/catch2-src.patch 0 → 100644 +14 −0 Original line number Diff line number Diff line diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 0705ddce1..771291b88 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -7,8 +7,7 @@ include(FetchContent) FetchContent_Declare( Catch2 - GIT_REPOSITORY https://github.com/catchorg/Catch2.git - GIT_TAG v2.13.7) + SOURCE_DIR @catch2_src@) FetchContent_MakeAvailable(Catch2) if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.19.0") Loading
pkgs/development/libraries/brunsli/default.nix 0 → 100644 +56 −0 Original line number Diff line number Diff line { lib , stdenv , fetchFromGitHub , fetchpatch , cmake , brotli }: stdenv.mkDerivation rec { pname = "brunsli"; version = "0.1"; outputs = [ "out" "dev" ]; src = fetchFromGitHub { owner = "google"; repo = "brunsli"; rev = "v${version}"; hash = "sha256-ZcrRz2xSoRepgG8KZYY/JzgONerItW0e6mH1PYsko98="; }; patches = [ # unvendor brotli (fetchpatch { url = "https://cgit.freebsd.org/ports/plain/graphics/brunsli/files/patch-CMakeLists.txt"; extraPrefix = ""; hash = "sha256-/WPOG9OcEDj9ObBSXEM8Luq4Rix+PS2MvsYyHhK5mns="; }) (fetchpatch { url = "https://cgit.freebsd.org/ports/plain/graphics/brunsli/files/patch-brunsli.cmake"; extraPrefix = ""; hash = "sha256-+HXA9Tin+l2St7rRUEBM0AfhAjSoFxz8UX7hsg12aFg="; }) ]; postPatch = '' rm -r third_party '' + lib.optionalString stdenv.isDarwin '' rm -r build ''; nativeBuildInputs = [ cmake ]; buildInputs = [ brotli ]; meta = { description = "Lossless JPEG repacking library"; homepage = "https://github.com/google/brunsli"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ dotlambda ]; }; }
pkgs/development/libraries/gdal/default.nix +141 −70 Original line number Diff line number Diff line { lib, stdenv, fetchFromGitHub, fetchpatch, unzip, libjpeg, libtiff, zlib, postgresql , libmysqlclient, libgeotiff, pythonPackages, proj, geos, openssl, libpng , sqlite, libspatialite, poppler, hdf4, qhull, giflib, expat, libiconv, libxml2 , autoreconfHook, netcdfSupport ? true, netcdf, hdf5, curl, pkg-config }: with lib; { lib , stdenv , fetchFromGitHub , bison , cmake , doxygen , graphviz , pkg-config , python3 , swig , armadillo , arrow-cpp , c-blosc , brunsli , cfitsio , crunch , curl , cryptopp , libdeflate , expat , libgeotiff , geos , giflib , libheif , dav1d , libaom , libde265 , rav1e , x265 , hdf4 , hdf5-cpp , libiconv , libjpeg , json_c , libjxl , libhwy , lerc , xz , libxml2 , lz4 , libmysqlclient , netcdf , openexr , openjpeg , openssl , pcre2 , libpng , poppler , postgresql , proj , qhull , libspatialite , sqlite , libtiff , tiledb , libwebp , xercesc , zlib , zstd }: stdenv.mkDerivation rec { pname = "gdal"; version = "3.4.2"; version = "3.5.2"; src = fetchFromGitHub { owner = "OSGeo"; repo = "gdal"; rev = "v${version}"; sha256 = "sha256-bE55VV0SrG8nxCLdpODRalnuAkn+olRdMLUjduavj6M="; sha256 = "sha256-jtAFI1J64ZaTqIljqQL1xOiTGC79AZWcIgidozWczMM="; }; sourceRoot = "source/gdal"; nativeBuildInputs = [ bison cmake doxygen graphviz pkg-config python3.pkgs.setuptools python3.pkgs.wrapPython swig ]; nativeBuildInputs = [ autoreconfHook pkg-config unzip ]; cmakeFlags = [ "-DGDAL_USE_INTERNAL_LIBS=OFF" "-DGEOTIFF_INCLUDE_DIR=${lib.getDev libgeotiff}/include" "-DGEOTIFF_LIBRARY_RELEASE=${lib.getLib libgeotiff}/lib/libgeotiff${stdenv.hostPlatform.extensions.sharedLibrary}" "-DMYSQL_INCLUDE_DIR=${lib.getDev libmysqlclient}/include/mysql" "-DMYSQL_LIBRARY=${lib.getLib libmysqlclient}/lib/mysql/libmysqlclient${stdenv.hostPlatform.extensions.sharedLibrary}" ] ++ lib.optionals (!stdenv.isDarwin) [ "-DCMAKE_SKIP_BUILD_RPATH=ON" # without, libgdal.so can't find libmariadb.so ] ++ lib.optionals stdenv.isDarwin [ "-DCMAKE_BUILD_WITH_INSTALL_NAME_DIR=ON" ]; buildInputs = [ libjpeg libtiff libpng proj openssl sqlite libspatialite armadillo c-blosc brunsli cfitsio crunch curl cryptopp libdeflate expat libgeotiff poppler hdf4 qhull geos giflib expat libheif dav1d # required by libheif libaom # required by libheif libde265 # required by libheif rav1e # required by libheif x265 # required by libheif hdf4 hdf5-cpp libjpeg json_c libjxl libhwy # required by libjxl lerc xz libxml2 lz4 libmysqlclient netcdf openjpeg openssl pcre2 libpng poppler postgresql ] ++ (with pythonPackages; [ python setuptools numpy wrapPython ]) ++ lib.optional stdenv.isDarwin libiconv ++ lib.optionals netcdfSupport [ netcdf hdf5 curl ]; configureFlags = [ "--with-expat=${expat.dev}" "--with-jpeg=${libjpeg.dev}" "--with-libtiff=${libtiff.dev}" # optional (without largetiff support) "--with-png=${libpng.dev}" # optional "--with-poppler=${poppler.dev}" # optional "--with-libz=${zlib.dev}" # optional "--with-pg=yes" # since gdal 3.0 doesn't use ${postgresql}/bin/pg_config "--with-mysql=${getDev libmysqlclient}/bin/mysql_config" "--with-geotiff=${libgeotiff}" "--with-sqlite3=${sqlite.dev}" "--with-spatialite=${libspatialite.dev}" "--with-python" # optional "--with-proj=${proj.dev}" # optional "--with-geos=${geos}/bin/geos-config" # optional "--with-hdf4=${hdf4.dev}" # optional "--with-xml2=yes" # optional (if netcdfSupport then "--with-netcdf=${netcdf}" else "") ]; hardeningDisable = [ "format" ]; CXXFLAGS = lib.concatStringsSep " " [ "-fpermissive" # poppler uses std::optional "-std=c++17" ]; # - Unset CC and CXX as they confuse libtool. # - teach gdal that libdf is the legacy name for libhdf preConfigure = '' substituteInPlace configure \ --replace "-lmfhdf -ldf" "-lmfhdf -lhdf" ''; preBuild = '' substituteInPlace swig/python/GNUmakefile \ --replace "ifeq (\$(STD_UNIX_LAYOUT),\"TRUE\")" "ifeq (1,1)" ''; proj qhull libspatialite sqlite libtiff tiledb libwebp zlib zstd python3 python3.pkgs.numpy ] ++ lib.optionals (!stdenv.isDarwin) [ # tests for formats enabled by these packages fail on macos arrow-cpp openexr xercesc ] ++ lib.optional stdenv.isDarwin libiconv; postInstall = '' wrapPythonPrograms Loading @@ -91,13 +159,11 @@ stdenv.mkDerivation rec { # calls (coming from the python world) preCheck = '' pushd ../autotest # something has made files here read-only by this point chmod -R u+w . export HOME=$(mktemp -d) export PYTHONPATH="$out/${pythonPackages.python.sitePackages}:$PYTHONPATH" export PYTHONPATH="$out/${python3.sitePackages}:$PYTHONPATH" ''; installCheckInputs = with pythonPackages; [ installCheckInputs = with python3.pkgs; [ pytestCheckHook pytest-env lxml Loading @@ -115,12 +181,16 @@ stdenv.mkDerivation rec { # https://github.com/OSGeo/gdal/issues/5523 "test_transformer_dem_overrride_srs" "test_osr_ct_options_area_of_interest" # ZIP does not support timestamps before 1980 " test_sentinel2_zipped" ] ++ lib.optionals (!stdenv.isx86_64) [ # likely precision-related expecting x87 behaviour "test_jp2openjpeg_22" ] ++ lib.optionals stdenv.isDarwin [ # flaky on macos "test_rda_download_queue" ] ++ lib.optionals (lib.versionOlder proj.version "8") [ "test_ogr_parquet_write_crs_without_id_in_datum_ensemble_members" ]; postCheck = '' popd # ../autotest Loading @@ -129,8 +199,9 @@ stdenv.mkDerivation rec { meta = { description = "Translator library for raster geospatial data formats"; homepage = "https://www.gdal.org/"; changelog = "https://docs.unidata.ucar.edu/netcdf-c/${src.rev}/RELEASE_NOTES.html"; license = lib.licenses.mit; maintainers = [ lib.maintainers.marcweber ]; platforms = with lib.platforms; linux ++ darwin; maintainers = with lib.maintainers; [ marcweber dotlambda ]; platforms = lib.platforms.unix; }; }
pkgs/development/libraries/lerc/default.nix 0 → 100644 +30 −0 Original line number Diff line number Diff line { lib , stdenv , fetchFromGitHub , cmake }: stdenv.mkDerivation rec { pname = "lerc"; version = "3.0"; outputs = [ "out" "dev" ]; src = fetchFromGitHub { owner = "esri"; repo = "lerc"; rev = "v${version}"; hash = "sha256-QO5+ouQy5nOcAgvxMeBDoSBP+G3ClDjXipnkuSIDcP0="; }; nativeBuildInputs = [ cmake ]; meta = { description = "C++ library for Limited Error Raster Compression"; homepage = "https://github.com/esri/lerc"; license = lib.licenses.asl20; maintainers = with lib.maintainers; [ dotlambda ]; }; }
pkgs/development/libraries/libgeotiff/default.nix +18 −5 Original line number Diff line number Diff line { lib, stdenv, fetchFromGitHub, libtiff, libjpeg, proj, zlib, autoreconfHook }: { lib , stdenv , fetchFromGitHub , autoreconfHook , pkg-config , libjpeg , libtiff , proj , zlib }: stdenv.mkDerivation rec { version = "1.5.1"; version = "1.7.1"; pname = "libgeotiff"; src = fetchFromGitHub { owner = "OSGeo"; repo = "libgeotiff"; rev = version; sha256 = "081ag23pn2n5y4fkb2rnh4hmcnq92siqiqv0s20jmx0j3s2nvfxy"; hash = "sha256-bE6UAUKiorriTgYrqhxbMAN2NEtmV/8IIfF02RUghSI="; }; outputs = [ "out" "dev" ]; Loading @@ -20,15 +29,19 @@ stdenv.mkDerivation rec { "--with-zlib=${zlib.dev}" ]; nativeBuildInputs = [ autoreconfHook ]; nativeBuildInputs = [ autoreconfHook pkg-config ]; buildInputs = [ libtiff proj ]; hardeningDisable = [ "format" ]; #hardeningDisable = [ "format" ]; meta = { description = "Library implementing attempt to create a tiff based interchange format for georeferenced raster imagery"; homepage = "https://github.com/OSGeo/libgeotiff"; changelog = "https://github.com/OSGeo/libgeotiff/blob/${src.rev}/libgeotiff/NEWS"; license = lib.licenses.mit; maintainers = [lib.maintainers.marcweber]; platforms = with lib.platforms; linux ++ darwin; Loading
pkgs/development/libraries/mapnik/catch2-src.patch 0 → 100644 +14 −0 Original line number Diff line number Diff line diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 0705ddce1..771291b88 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -7,8 +7,7 @@ include(FetchContent) FetchContent_Declare( Catch2 - GIT_REPOSITORY https://github.com/catchorg/Catch2.git - GIT_TAG v2.13.7) + SOURCE_DIR @catch2_src@) FetchContent_MakeAvailable(Catch2) if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.19.0")