diff options
Diffstat (limited to 'pkgs/development/libraries')
14 files changed, 143 insertions, 64 deletions
diff --git a/pkgs/development/libraries/bcg729/default.nix b/pkgs/development/libraries/bcg729/default.nix new file mode 100644 index 000000000000..4363948e830d --- /dev/null +++ b/pkgs/development/libraries/bcg729/default.nix @@ -0,0 +1,43 @@ +{ stdenv +, fetchFromGitHub +, fetchpatch +, cmake +}: + +stdenv.mkDerivation rec { + pname = "bcg729"; + version = "1.0.4"; + + src = fetchFromGitHub { + owner = "BelledonneCommunications"; + repo = pname; + rev = version; + sha256 = "05s0c5ps3a763y0v34wg5zghj0cdjnq4ch7g81848xxry7q90fwa"; + }; + + patches = [ + (fetchpatch { + url = "https://github.com/BelledonneCommunications/bcg729/commit/a5907daf1b111e4ad7aab4f558f57e2af1e37e55.patch"; + sha256 = "0445syfwj4w4chh8ak80rq77iqcr27924n1ld5snshk3d21nxd64"; + }) + (fetchpatch { + url = "https://github.com/BelledonneCommunications/bcg729/commit/697bf6653a8c7421f0e821ee8d42471246e6850f.patch"; + sha256 = "1h3gf5sj2sg5cs5iv1lcav3lkqmd5jf4agvjzz83l89wd5f5hp5l"; + }) + (fetchpatch { + url = "https://github.com/BelledonneCommunications/bcg729/commit/d63ce04a93711820d9a6985b1d11d8d91ed8e6b6.patch"; + sha256 = "1piwf63ci2gma6jd6b4adkvxirysvazf0vklb5pc6vx1g93nkgxs"; + }) + ]; + + nativeBuildInputs = [ cmake ]; + + meta = with stdenv.lib; { + description = "Opensource implementation of both encoder and decoder of the ITU G729 Annex A/B speech codec"; + homepage = "https://linphone.org/technical-corner/bcg729"; + changelog = "https://gitlab.linphone.org/BC/public/bcg729/raw/${version}/NEWS"; + license = licenses.gpl2Plus; + maintainers = with maintainers; [ c0bw3b ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/development/libraries/bctoolbox/default.nix b/pkgs/development/libraries/bctoolbox/default.nix index 2730696344e0..a9d21a1f5a96 100644 --- a/pkgs/development/libraries/bctoolbox/default.nix +++ b/pkgs/development/libraries/bctoolbox/default.nix @@ -1,19 +1,23 @@ -{stdenv, fetchFromGitHub, cmake, mbedtls, bcunit, srtp}: +{ stdenv, fetchFromGitHub, cmake, bcunit, mbedtls }: + stdenv.mkDerivation rec { - name = "${baseName}-${version}"; - baseName = "bctoolbox"; + pname = "bctoolbox"; version = "0.6.0"; - buildInputs = [cmake mbedtls bcunit srtp]; + + nativeBuildInputs = [ cmake bcunit ]; + buildInputs = [ mbedtls ]; + src = fetchFromGitHub { owner = "BelledonneCommunications"; - repo = baseName; + repo = pname; rev = version; sha256 = "1cxx243wyzkd4xnvpyqf97n0rjhfckpvw1vhwnbwshq3q6fra909"; }; meta = { inherit version; - description = ''Utilities library for Linphone''; + description = "Utilities library for Linphone"; + homepage = "https://github.com/BelledonneCommunications/bctoolbox"; license = stdenv.lib.licenses.gpl2Plus ; maintainers = [stdenv.lib.maintainers.raskin]; platforms = stdenv.lib.platforms.linux; diff --git a/pkgs/development/libraries/belle-sip/default.nix b/pkgs/development/libraries/belle-sip/default.nix index d4420e40ab69..1745614f741c 100644 --- a/pkgs/development/libraries/belle-sip/default.nix +++ b/pkgs/development/libraries/belle-sip/default.nix @@ -1,15 +1,14 @@ -{ stdenv, antlr3_4, libantlr3c, jre, polarssl, fetchFromGitHub +{ stdenv, antlr3_4, libantlr3c, jre, mbedtls, fetchFromGitHub , cmake, zlib, bctoolbox }: stdenv.mkDerivation rec { - baseName = "belle-sip"; + pname = "belle-sip"; version = "1.6.3"; - name = "${baseName}-${version}"; src = fetchFromGitHub { owner = "BelledonneCommunications"; - repo = baseName; + repo = pname; rev = version; sha256 = "0q70db1klvhca1af29bm9paka3gyii5hfbzrj4178gclsg7cj8fk"; }; @@ -24,18 +23,14 @@ stdenv.mkDerivation rec { "-Wno-error=cast-function-type" ]; - propagatedBuildInputs = [ antlr3_4 libantlr3c polarssl bctoolbox ]; - - configureFlags = [ - "--with-polarssl=${polarssl}" - ]; + propagatedBuildInputs = [ antlr3_4 libantlr3c mbedtls bctoolbox ]; # Fails to build with lots of parallel jobs enableParallelBuilding = false; meta = with stdenv.lib; { - homepage = http://www.linphone.org/index.php/eng; - description = "A Voice-over-IP phone"; + homepage = https://linphone.org/technical-corner/belle-sip; + description = "Modern library implementing SIP (RFC 3261) transport, transaction and dialog layers"; license = licenses.gpl2; platforms = platforms.all; }; diff --git a/pkgs/development/libraries/kde-frameworks/default.nix b/pkgs/development/libraries/kde-frameworks/default.nix index aa9f95eebd32..845c911789d0 100644 --- a/pkgs/development/libraries/kde-frameworks/default.nix +++ b/pkgs/development/libraries/kde-frameworks/default.nix @@ -42,7 +42,7 @@ let propagate = out: let setupHook = { writeScript }: writeScript "setup-hook" '' - if [ "${hookName:-}" != postHook ]; then + if [ "''${hookName:-}" != postHook ]; then postHooks+=("source @dev@/nix-support/setup-hook") else # Propagate $dev so that this setup hook is propagated diff --git a/pkgs/development/libraries/kde-frameworks/extra-cmake-modules/setup-hook.sh b/pkgs/development/libraries/kde-frameworks/extra-cmake-modules/setup-hook.sh index 35982e866284..4135f6bfd7aa 100644 --- a/pkgs/development/libraries/kde-frameworks/extra-cmake-modules/setup-hook.sh +++ b/pkgs/development/libraries/kde-frameworks/extra-cmake-modules/setup-hook.sh @@ -42,12 +42,12 @@ ecmPostHook() { cmakeFlags+=" -DKDE_INSTALL_CONFDIR=${!outputBin}/etc/xdg" cmakeFlags+=" -DKDE_INSTALL_AUTOSTARTDIR=${!outputBin}/etc/xdg/autostart" - if [ -n "$qtPluginPrefix" ]; then + if [ -n "${qtPluginPrefix-}" ]; then cmakeFlags+=" -DKDE_INSTALL_QTPLUGINDIR=${!outputBin}/$qtPluginPrefix" cmakeFlags+=" -DKDE_INSTALL_PLUGINDIR=${!outputBin}/$qtPluginPrefix" fi - if [ -n "$qtQmlPrefix" ]; then + if [ -n "${qtQmlPrefix-}" ]; then cmakeFlags+=" -DKDE_INSTALL_QMLDIR=${!outputBin}/$qtQmlPrefix" fi } diff --git a/pkgs/development/libraries/kde-frameworks/kio/default.nix b/pkgs/development/libraries/kde-frameworks/kio/default.nix index 6cf89669df01..fee21a6a9235 100644 --- a/pkgs/development/libraries/kde-frameworks/kio/default.nix +++ b/pkgs/development/libraries/kde-frameworks/kio/default.nix @@ -20,5 +20,6 @@ mkDerivation { kbookmarks kcompletion kconfig kcoreaddons kitemviews kjobwidgets kservice kxmlgui qtbase qttools solid ]; + outputs = [ "out" "dev" ]; patches = (copyPathsToStore (lib.readPathsFromFile ./. ./series)); } diff --git a/pkgs/development/libraries/mediastreamer/default.nix b/pkgs/development/libraries/mediastreamer/default.nix index 93e73a44bc9c..f1ab28dfa1ce 100644 --- a/pkgs/development/libraries/mediastreamer/default.nix +++ b/pkgs/development/libraries/mediastreamer/default.nix @@ -1,17 +1,16 @@ { stdenv, pkgconfig, intltool, alsaLib, libpulseaudio, speex, gsm , libopus, ffmpeg, libX11, libXv, libGLU_combined, glew, libtheora, libvpx, SDL, libupnp , ortp, libv4l, libpcap, srtp, fetchFromGitHub, cmake, bctoolbox, doxygen -, python, libXext, libmatroska, openssl, fetchpatch +, python, libXext, libmatroska, fetchpatch }: stdenv.mkDerivation rec { - baseName = "mediastreamer2"; + pname = "mediastreamer2"; version = "2.16.1"; - name = "${baseName}-${version}"; src = fetchFromGitHub { owner = "BelledonneCommunications"; - repo = baseName; + repo = pname; rev = version; sha256 = "02745bzl2r1jqvdqzyv94fjd4w92zr976la4c4nfvsy52waqah7j"; }; @@ -31,19 +30,18 @@ stdenv.mkDerivation rec { alsaLib libpulseaudio speex gsm libopus ffmpeg libX11 libXv libGLU_combined glew libtheora libvpx SDL libupnp ortp libv4l libpcap srtp bctoolbox libXext libmatroska - openssl ]; NIX_CFLAGS_COMPILE = [ - "-DGIT_VERSION=\"v2.14.0\"" + "-DGIT_VERSION=\"v${version}\"" "-Wno-error=deprecated-declarations" "-Wno-error=cast-function-type" ]; - NIX_LDFLAGS = "-lXext -lssl"; + NIX_LDFLAGS = "-lXext"; meta = with stdenv.lib; { description = "A powerful and lightweight streaming engine specialized for voice/video telephony applications"; - homepage = http://www.linphone.org/technical-corner/mediastreamer2/overview; + homepage = http://www.linphone.org/technical-corner/mediastreamer2; license = licenses.gpl2; platforms = platforms.linux; }; diff --git a/pkgs/development/libraries/mediastreamer/msopenh264.nix b/pkgs/development/libraries/mediastreamer/msopenh264.nix index 38261bd1e53a..f1e9fc301510 100644 --- a/pkgs/development/libraries/mediastreamer/msopenh264.nix +++ b/pkgs/development/libraries/mediastreamer/msopenh264.nix @@ -1,23 +1,30 @@ { stdenv, autoreconfHook, pkgconfig, mediastreamer, openh264 -, fetchgit, cmake +, fetchurl, fetchpatch, cmake }: -stdenv.mkDerivation { +stdenv.mkDerivation rec { pname = "mediastreamer-openh264"; - version = "0.0pre20160801"; + version = "1.2.1"; - src = fetchgit { - url = "git://git.linphone.org/msopenh264.git"; - rev = "4cb4b134bf0f1538fd0c2c928eee2d5388115abc"; - sha256 = "001km4xy1ifwbg1c19ncc75h867fzfcxy9pxvl4pxqb64169xc1k"; + src = fetchurl { + url = "https://www.linphone.org/releases/sources/plugins/msopenh264/msopenh264-${version}.tar.gz"; + sha256 = "0rdxgazm52560g52pp6mp3mwx6j1z3h2zyizzfycp8y8zi92fqm8"; }; + patches = [ + (fetchpatch { + name = "msopenh264-build-with-openh264-v2.patch"; + url = "https://git.pld-linux.org/?p=packages/mediastreamer-plugin-msopenh264.git;a=blob_plain;f=mediastreamer-plugin-msopenh264-openh264.patch;hb=344b8af379701a7e58b4ffb3cbac1517eff079fd"; + sha256 = "10c24b0afchx78q28176pd8iz7i1nlf57f6v6lyqxpz60fm5nrcc"; + }) + ]; + nativeBuildInputs = [ autoreconfHook cmake pkgconfig ]; buildInputs = [ mediastreamer openh264 ]; meta = with stdenv.lib; { description = "H.264 encoder/decoder plugin for mediastreamer2"; - homepage = http://www.linphone.org/technical-corner/mediastreamer2/overview; + homepage = "https://www.linphone.org/technical-corner/mediastreamer2"; license = licenses.gpl2; platforms = platforms.linux; }; diff --git a/pkgs/development/libraries/ortp/default.nix b/pkgs/development/libraries/ortp/default.nix index 58f355b27fe1..7be0e4bb06ab 100644 --- a/pkgs/development/libraries/ortp/default.nix +++ b/pkgs/development/libraries/ortp/default.nix @@ -1,13 +1,12 @@ { stdenv, cmake, fetchFromGitHub, bctoolbox }: stdenv.mkDerivation rec { - baseName = "ortp"; + pname = "ortp"; version = "1.0.2"; - name = "${baseName}-${version}"; src = fetchFromGitHub { owner = "BelledonneCommunications"; - repo = baseName; + repo = pname; rev = version; sha256 = "12cwv593bsdnxs0zfcp07vwyk7ghlz2wv7vdbs1ksv293w3vj2rv"; }; @@ -17,8 +16,8 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { description = "A Real-Time Transport Protocol (RFC3550) stack"; - homepage = http://www.linphone.org/index.php/eng/code_review/ortp; - license = licenses.lgpl21; + homepage = https://linphone.org/technical-corner/ortp; + license = licenses.gpl2Plus; platforms = platforms.all; }; } diff --git a/pkgs/development/libraries/rocksdb/default.nix b/pkgs/development/libraries/rocksdb/default.nix index 2bb56bec8c0a..ac70d6ec0f2c 100644 --- a/pkgs/development/libraries/rocksdb/default.nix +++ b/pkgs/development/libraries/rocksdb/default.nix @@ -1,4 +1,8 @@ -{ stdenv, fetchFromGitHub, lib, bzip2, cmake, lz4, snappy, zlib, zstd, enableLite ? false }: +{ stdenv, fetchFromGitHub, fetchpatch +, cmake, ninja +, bzip2, lz4, snappy, zlib, zstd +, enableLite ? false +}: stdenv.mkDerivation rec { pname = "rocksdb"; @@ -11,9 +15,17 @@ stdenv.mkDerivation rec { sha256 = "0s0n4p1b4jzmslz9d2xd4ajra0m6l9x26mjwlbgw0klxjggmy8qn"; }; - nativeBuildInputs = [ cmake ]; + nativeBuildInputs = [ cmake ninja ]; buildInputs = [ bzip2 lz4 snappy zlib zstd ]; + patches = [ + # https://github.com/facebook/rocksdb/pull/6076 + (fetchpatch { + url = "https://github.com/facebook/rocksdb/commit/c0be4b2ff1a5393419673fab961cb9b09ba38752.diff"; + sha256 = "1f2wg9kqlmf2hiiihmbp8m5fr2wnn7896g6i9yg9hdgi40pw30w6"; + }) + ]; + postPatch = '' substituteInPlace CMakeLists.txt --replace "find_package(zlib " "find_package(ZLIB " ''; @@ -31,13 +43,17 @@ stdenv.mkDerivation rec { "-DWITH_ZSTD=1" "-DWITH_GFLAGS=0" "-DUSE_RTTI=1" - (lib.optional - (stdenv.hostPlatform.system == "i686-linux" - || stdenv.hostPlatform.system == "x86_64-linux") + "-DROCKSDB_INSTALL_ON_WINDOWS=YES" # harmless elsewhere + (stdenv.lib.optional + (stdenv.hostPlatform.isx86 && stdenv.hostPlatform.isLinux) "-DFORCE_SSE42=1") - (lib.optional enableLite "-DROCKSDB_LITE=1") + (stdenv.lib.optional enableLite "-DROCKSDB_LITE=1") + "-DFAIL_ON_WARNINGS=${if stdenv.hostPlatform.isMinGW then "NO" else "YES"}" ]; + # otherwise "cc1: error: -Wformat-security ignored without -Wformat [-Werror=format-security]" + hardeningDisable = stdenv.lib.optional stdenv.hostPlatform.isWindows "format"; + meta = with stdenv.lib; { homepage = https://rocksdb.org; description = "A library that provides an embeddable, persistent key-value store for fast storage"; diff --git a/pkgs/development/libraries/science/math/caffe2/default.nix b/pkgs/development/libraries/science/math/caffe2/default.nix index 26ec1237601f..a5c373ecde97 100644 --- a/pkgs/development/libraries/science/math/caffe2/default.nix +++ b/pkgs/development/libraries/science/math/caffe2/default.nix @@ -57,7 +57,7 @@ let dst = "pybind11"; }; - ccVersion = (builtins.parseDrvName stdenv.cc.name).version; + ccVersion = lib.getVersion stdenv.cc; in stdenv.mkDerivation rec { diff --git a/pkgs/development/libraries/snappy/default.nix b/pkgs/development/libraries/snappy/default.nix index 80c3630af29e..f35f5bfc55a2 100644 --- a/pkgs/development/libraries/snappy/default.nix +++ b/pkgs/development/libraries/snappy/default.nix @@ -32,6 +32,6 @@ stdenv.mkDerivation rec { homepage = https://google.github.io/snappy/; license = licenses.bsd3; description = "Compression/decompression library for very high speeds"; - platforms = platforms.unix; + platforms = platforms.all; }; } diff --git a/pkgs/development/libraries/unixODBCDrivers/default.nix b/pkgs/development/libraries/unixODBCDrivers/default.nix index c1810443bdb3..78f85afca917 100644 --- a/pkgs/development/libraries/unixODBCDrivers/default.nix +++ b/pkgs/development/libraries/unixODBCDrivers/default.nix @@ -1,4 +1,4 @@ -{ fetchurl, stdenv, unixODBC, cmake, postgresql, mysql, libmysqlclient, sqlite, zlib, libxml2, dpkg, lib, openssl, kerberos, libuuid, patchelf }: +{ fetchurl, stdenv, unixODBC, cmake, postgresql, mysql, sqlite, zlib, libxml2, dpkg, lib, openssl, kerberos, libuuid, patchelf, libiconv, fetchFromGitHub }: # I haven't done any parameter tweaking.. So the defaults provided here might be bad @@ -29,35 +29,42 @@ mariadb = stdenv.mkDerivation rec { pname = "mariadb-connector-odbc"; - version = "3.1.2"; - - src = fetchurl { - url = "https://downloads.mariadb.org/interstitial/connector-odbc-${version}/${pname}-${version}-ga-src.tar.gz"; - sha256 = "0iibly2mbqijqyq4pzpb6dh40clqhvqrhgnj8knm4bw3nlksd0d5"; + version = "3.1.4"; + + src = fetchFromGitHub { + owner = "MariaDB"; + repo = "mariadb-connector-odbc"; + rev = version; + sha256 = "1kbz5mng9vx89cw2sx7gsvhbv4h86zwp31fr0hxqing3cwxhkfgw"; + # this driver only seems to build correctly when built against the mariadb-connect-c subrepo + # (see https://github.com/NixOS/nixpkgs/issues/73258) + fetchSubmodules = true; }; nativeBuildInputs = [ cmake ]; - buildInputs = [ unixODBC libmysqlclient openssl ]; + buildInputs = [ unixODBC openssl libiconv ]; + + preConfigure = '' + # we don't want to build a .pkg + sed -i 's/ADD_SUBDIRECTORY(osxinstall)//g' CMakeLists.txt + ''; cmakeFlags = [ "-DWITH_OPENSSL=ON" - ]; - - NIX_CFLAGS_COMPILE = [ - "-I${libmysqlclient}/include/mysql" - "-L${libmysqlclient}/lib/mysql" + # on darwin this defaults to ON but we want to build against unixODBC + "-DWITH_IODBC=OFF" ]; passthru = { fancyName = "MariaDB"; - driver = "lib/libmaodbc.so"; + driver = if stdenv.isDarwin then "lib/libmaodbc.dylib" else "lib/libmaodbc.so"; }; meta = with stdenv.lib; { description = "MariaDB ODBC database driver"; homepage = https://downloads.mariadb.org/connector-odbc/; license = licenses.gpl2; - platforms = platforms.linux; + platforms = platforms.linux ++ platforms.darwin; }; }; diff --git a/pkgs/development/libraries/wlroots/default.nix b/pkgs/development/libraries/wlroots/default.nix index 54464ffd4b66..a567e66285cc 100644 --- a/pkgs/development/libraries/wlroots/default.nix +++ b/pkgs/development/libraries/wlroots/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, meson, ninja, pkgconfig +{ stdenv, fetchFromGitHub, meson, ninja, pkgconfig, fetchpatch , wayland, libGL, wayland-protocols, libinput, libxkbcommon, pixman , xcbutilwm, libX11, libcap, xcbutilimage, xcbutilerrors, mesa , libpng, ffmpeg_4, freerdp @@ -15,6 +15,15 @@ stdenv.mkDerivation rec { sha256 = "1ak86kx617c81dy85wg9rldy1z3n8ch93cjc05a4j6sifv0nkyfm"; }; + patches = [ + # add missing header that changed in mesa-19.2.2 + # https://github.com/swaywm/wlroots/issues/1862 + (fetchpatch { + url = "https://github.com/swaywm/wlroots/commit/d113e48a2a32542fe6e12f1759f07888364609bf.diff"; + sha256 = "1h09j1gmnzlz4py92a92chgy8xzsd8h8xn5irq9s2hq4cla66h87"; + }) + ]; + # $out for the library and $examples for the example programs (in examples): outputs = [ "out" "examples" ]; |