diff options
Diffstat (limited to 'pkgs/development/libraries')
41 files changed, 276 insertions, 93 deletions
diff --git a/pkgs/development/libraries/appstream-glib/default.nix b/pkgs/development/libraries/appstream-glib/default.nix index 2499a424c85..6ad6b158826 100644 --- a/pkgs/development/libraries/appstream-glib/default.nix +++ b/pkgs/development/libraries/appstream-glib/default.nix @@ -4,7 +4,7 @@ , libuuid, json-glib, meson, gperf, ninja }: stdenv.mkDerivation rec { - name = "appstream-glib-0.7.7"; + name = "appstream-glib-0.7.8"; outputs = [ "out" "dev" "man" "installedTests" ]; outputBin = "dev"; @@ -13,7 +13,7 @@ stdenv.mkDerivation rec { owner = "hughsie"; repo = "appstream-glib"; rev = stdenv.lib.replaceStrings ["." "-"] ["_" "_"] name; - sha256 = "127m5ds355i1vfvmn9nd4zqqnqm16jpqcn4p2p2pvn7i4wqxra40"; + sha256 = "10hcl3sl3g8ajg9mssq3g4dbzz0d4b2ybimrcq71cpycqrqhilhx"; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/ffmpeg/generic.nix b/pkgs/development/libraries/ffmpeg/generic.nix index 985f328a22d..4a05eab87bd 100644 --- a/pkgs/development/libraries/ffmpeg/generic.nix +++ b/pkgs/development/libraries/ffmpeg/generic.nix @@ -7,8 +7,8 @@ # Build options , runtimeCpuDetectBuild ? true # Detect CPU capabilities at runtime , multithreadBuild ? true # Multithreading via pthreads/win32 threads -, sdlSupport ? !stdenv.isArm, SDL ? null, SDL2 ? null -, vdpauSupport ? !stdenv.isArm, libvdpau ? null +, sdlSupport ? !stdenv.isAarch32, SDL ? null, SDL2 ? null +, vdpauSupport ? !stdenv.isAarch32, libvdpau ? null # Developer options , debugDeveloper ? false , optimizationsDeveloper ? true @@ -42,7 +42,7 @@ */ let - inherit (stdenv) icCygwin isDarwin isFreeBSD isLinux isArm; + inherit (stdenv) icCygwin isDarwin isFreeBSD isLinux isAarch32; inherit (stdenv.lib) optional optionals enableFeature; cmpVer = builtins.compareVersions; @@ -55,9 +55,9 @@ let verFix = withoutFix: fixVer: withFix: if reqMatch fixVer then withFix else withoutFix; # Disable dependency that needs fixes before it will work on Darwin or Arm - disDarwinOrArmFix = origArg: minVer: fixArg: if ((isDarwin || isArm) && reqMin minVer) then fixArg else origArg; + disDarwinOrArmFix = origArg: minVer: fixArg: if ((isDarwin || isAarch32) && reqMin minVer) then fixArg else origArg; - vaapiSupport = reqMin "0.6" && ((isLinux || isFreeBSD) && !isArm); + vaapiSupport = reqMin "0.6" && ((isLinux || isFreeBSD) && !isAarch32); in assert openglSupport -> libGLU_combined != null; @@ -153,8 +153,8 @@ stdenv.mkDerivation rec { bzip2 fontconfig freetype gnutls libiconv lame libass libogg libtheora libvdpau libvorbis lzma soxr x264 x265 xvidcore zlib libopus ] ++ optional openglSupport libGLU_combined - ++ optionals (!isDarwin && !isArm) [ libvpx libpulseaudio ] # Need to be fixed on Darwin and ARM - ++ optional ((isLinux || isFreeBSD) && !isArm) libva + ++ optionals (!isDarwin && !isAarch32) [ libvpx libpulseaudio ] # Need to be fixed on Darwin and ARM + ++ optional ((isLinux || isFreeBSD) && !isAarch32) libva ++ optional isLinux alsaLib ++ optionals isDarwin darwinFrameworks ++ optional vdpauSupport libvdpau diff --git a/pkgs/development/libraries/freetype/default.nix b/pkgs/development/libraries/freetype/default.nix index 3fccce02def..4d2455d4872 100644 --- a/pkgs/development/libraries/freetype/default.nix +++ b/pkgs/development/libraries/freetype/default.nix @@ -52,7 +52,7 @@ in stdenv.mkDerivation rec { configureFlags = [ "--disable-static" "--bindir=$(dev)/bin" ]; # The asm for armel is written with the 'asm' keyword. - CFLAGS = optionalString stdenv.isArm "-std=gnu99"; + CFLAGS = optionalString stdenv.isAarch32 "-std=gnu99"; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/glibc/common.nix b/pkgs/development/libraries/glibc/common.nix index c8716bfdc79..37e0a20a957 100644 --- a/pkgs/development/libraries/glibc/common.nix +++ b/pkgs/development/libraries/glibc/common.nix @@ -95,12 +95,7 @@ stdenv.mkDerivation ({ ./allow-kernel-2.6.32.patch ] ++ lib.optional stdenv.isx86_64 ./fix-x64-abi.patch - ++ lib.optional stdenv.hostPlatform.isMusl - (fetchpatch { - name = "fix-with-musl.patch"; - url = "https://sourceware.org/bugzilla/attachment.cgi?id=10151&action=diff&collapsed=&headers=1&format=raw"; - sha256 = "18kk534k6da5bkbsy1ivbi77iin76lsna168mfcbwv4ik5vpziq2"; - }); + ++ lib.optional stdenv.hostPlatform.isMusl ./fix-rpc-types-musl-conflicts.patch; postPatch = '' @@ -132,7 +127,7 @@ stdenv.mkDerivation ({ (if cross ? float && cross.float == "soft" then "--without-fp" else "--with-fp") ] ++ lib.optionals (cross != null) [ "--with-__thread" - ] ++ lib.optionals (cross == null && stdenv.isArm) [ + ] ++ lib.optionals (cross == null && stdenv.isAarch32) [ "--host=arm-linux-gnueabi" "--build=arm-linux-gnueabi" diff --git a/pkgs/development/libraries/glibc/fix-rpc-types-musl-conflicts.patch b/pkgs/development/libraries/glibc/fix-rpc-types-musl-conflicts.patch new file mode 100644 index 00000000000..19f8bfc7cce --- /dev/null +++ b/pkgs/development/libraries/glibc/fix-rpc-types-musl-conflicts.patch @@ -0,0 +1,38 @@ +@@ -, +, @@ +--- + sunrpc/rpc/types.h | 22 ++++++---------------- + 1 file changed, 6 insertions(+), 16 deletions(-) +--- a/sunrpc/rpc/types.h ++++ a/sunrpc/rpc/types.h +@@ -69,24 +69,14 @@ typedef unsigned long rpcport_t; + #include <sys/types.h> + #endif + +-#if defined __APPLE_CC__ || defined __FreeBSD__ +-# define __u_char_defined +-# define __daddr_t_defined +-#endif +- +-#ifndef __u_char_defined +-typedef __u_char u_char; +-typedef __u_short u_short; +-typedef __u_int u_int; +-typedef __u_long u_long; +-typedef __quad_t quad_t; +-typedef __u_quad_t u_quad_t; +-typedef __fsid_t fsid_t; ++/* IMPORTANT NOTE: This has been modified to build against the musl C ++ * library and it probably now ONLY builds with the musl C library. ++ * ++ * See: https://sourceware.org/bugzilla/show_bug.cgi?id=21604 ++ */ + # define __u_char_defined +-#endif + #ifndef __daddr_t_defined +-typedef __daddr_t daddr_t; +-typedef __caddr_t caddr_t; ++typedef int daddr_t; + # define __daddr_t_defined + #endif + +-- diff --git a/pkgs/development/libraries/glibmm/default.nix b/pkgs/development/libraries/glibmm/default.nix index a3af96d51ed..3c3b49e6616 100644 --- a/pkgs/development/libraries/glibmm/default.nix +++ b/pkgs/development/libraries/glibmm/default.nix @@ -1,19 +1,27 @@ -{ stdenv, fetchurl, pkgconfig, gnum4, glib, libsigcxx }: +{ stdenv, fetchurl, fetchpatch, pkgconfig, gnum4, glib, libsigcxx }: let - ver_maj = "2.54"; - ver_min = "1"; + ver_maj = "2.56"; + ver_min = "0"; in stdenv.mkDerivation rec { name = "glibmm-${ver_maj}.${ver_min}"; src = fetchurl { url = "mirror://gnome/sources/glibmm/${ver_maj}/${name}.tar.xz"; - sha256 = "0jkapw18icz59cmlmsl00nwwz0wh291kb4hc9z9hxmq45drqrhkw"; + sha256 = "1abrkqhca5p8n6ly3vp1232rny03s7lrd8f8iz2m2m141nxgqx3f"; }; outputs = [ "out" "dev" ]; + patchFlags = "-p0"; + patches = [ + (fetchpatch { + url = "https://raw.githubusercontent.com/macports/macports-ports/e864b2340be9ef003d8ff4aef92e7151d06287dd/devel/glibmm/files/0001-ustring-Fix-wchar-conversion-on-macOS-with-libc.patch"; + sha256 = "02qvnailw1i59cjbj3cy7y02kfcivsvkdjrf4njkp4plarayyqp9"; + }) + ]; + nativeBuildInputs = [ pkgconfig gnum4 ]; propagatedBuildInputs = [ glib libsigcxx ]; diff --git a/pkgs/development/libraries/gmp/5.1.x.nix b/pkgs/development/libraries/gmp/5.1.x.nix index b65a8ee5fc1..57204776dec 100644 --- a/pkgs/development/libraries/gmp/5.1.x.nix +++ b/pkgs/development/libraries/gmp/5.1.x.nix @@ -37,7 +37,7 @@ let self = stdenv.mkDerivation rec { # The config.guess in GMP tries to runtime-detect various # ARM optimization flags via /proc/cpuinfo (and is also # broken on multicore CPUs). Avoid this impurity. - preConfigure = optionalString stdenv.isArm '' + preConfigure = optionalString stdenv.isAarch32 '' configureFlagsArray+=("--build=$(./configfsf.guess)") ''; diff --git a/pkgs/development/libraries/gmp/6.x.nix b/pkgs/development/libraries/gmp/6.x.nix index 5973c89cef7..551e7e5e1f6 100644 --- a/pkgs/development/libraries/gmp/6.x.nix +++ b/pkgs/development/libraries/gmp/6.x.nix @@ -38,7 +38,7 @@ let self = stdenv.mkDerivation rec { # The config.guess in GMP tries to runtime-detect various # ARM optimization flags via /proc/cpuinfo (and is also # broken on multicore CPUs). Avoid this impurity. - preConfigure = optionalString stdenv.isArm '' + preConfigure = optionalString stdenv.isAarch32 '' configureFlagsArray+=("--build=$(./configfsf.guess)") ''; diff --git a/pkgs/development/libraries/gnu-efi/default.nix b/pkgs/development/libraries/gnu-efi/default.nix index 940b4e2aee4..1f8a518d69e 100644 --- a/pkgs/development/libraries/gnu-efi/default.nix +++ b/pkgs/development/libraries/gnu-efi/default.nix @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { "AR=${stdenv.cc.targetPrefix}ar" "RANLIB=${stdenv.cc.targetPrefix}ranlib" "OBJCOPY=${stdenv.cc.targetPrefix}objcopy" - ] ++ stdenv.lib.optional stdenv.isArm "ARCH=arm" + ] ++ stdenv.lib.optional stdenv.isAarch32 "ARCH=arm" ++ stdenv.lib.optional stdenv.isAarch64 "ARCH=aarch64"; meta = with stdenv.lib; { diff --git a/pkgs/development/libraries/gstreamer/bad/default.nix b/pkgs/development/libraries/gstreamer/bad/default.nix index 73cbaa0f807..8ebd7092113 100644 --- a/pkgs/development/libraries/gstreamer/bad/default.nix +++ b/pkgs/development/libraries/gstreamer/bad/default.nix @@ -35,6 +35,7 @@ stdenv.mkDerivation rec { ''; license = licenses.lgpl2Plus; platforms = platforms.linux ++ platforms.darwin; + maintainers = with maintainers; [ matthewbauer ]; }; preConfigure = '' diff --git a/pkgs/development/libraries/gstreamer/good/default.nix b/pkgs/development/libraries/gstreamer/good/default.nix index 5c10221b27d..21376ce79c1 100644 --- a/pkgs/development/libraries/gstreamer/good/default.nix +++ b/pkgs/development/libraries/gstreamer/good/default.nix @@ -6,6 +6,7 @@ , libsoup, libpulseaudio, libintl , darwin, lame, mpg123, twolame , gtkSupport ? false, gtk3 ? null +, ncurses }: assert gtkSupport -> gtk3 != null; @@ -26,6 +27,7 @@ stdenv.mkDerivation rec { ''; license = licenses.lgpl2Plus; platforms = platforms.linux ++ platforms.darwin; + maintainers = with maintainers; [ matthewbauer ]; }; src = fetchurl { @@ -39,11 +41,14 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig python meson ninja gettext ]; + NIX_LDFLAGS = "-lncurses"; + buildInputs = [ gst-plugins-base orc bzip2 libdv libvpx speex flac taglib cairo gdk_pixbuf aalib libcaca libsoup libshout lame mpg123 twolame libintl + ncurses ] ++ optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Cocoa ] ++ optionals stdenv.isLinux [ libv4l libpulseaudio libavc1394 libiec61883 ]; diff --git a/pkgs/development/libraries/gstreamer/ugly/default.nix b/pkgs/development/libraries/gstreamer/ugly/default.nix index a5449abb9f7..004bb0715f2 100644 --- a/pkgs/development/libraries/gstreamer/ugly/default.nix +++ b/pkgs/development/libraries/gstreamer/ugly/default.nix @@ -1,13 +1,14 @@ { stdenv, fetchurl, meson, ninja, pkgconfig, python , gst-plugins-base, orc, gettext , a52dec, libcdio, libdvdread -, libmad, libmpeg2, x264, libintl +, libmad, libmpeg2, x264, libintl, lib +, darwin }: stdenv.mkDerivation rec { name = "gst-plugins-ugly-1.14.0"; - meta = with stdenv.lib; { + meta = with lib; { description = "Gstreamer Ugly Plugins"; homepage = "https://gstreamer.freedesktop.org"; longDescription = '' @@ -18,6 +19,7 @@ stdenv.mkDerivation rec { ''; license = licenses.lgpl2Plus; platforms = platforms.unix; + maintainers = with maintainers; [ matthewbauer ]; }; src = fetchurl { @@ -34,5 +36,6 @@ stdenv.mkDerivation rec { a52dec libcdio libdvdread libmad libmpeg2 x264 libintl - ]; + ] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; + [ IOKit CoreFoundation DiskArbitration ]); } diff --git a/pkgs/development/libraries/icu/base.nix b/pkgs/development/libraries/icu/base.nix index 87551ee6ee0..ee868d371ce 100644 --- a/pkgs/development/libraries/icu/base.nix +++ b/pkgs/development/libraries/icu/base.nix @@ -31,7 +31,7 @@ let # $(includedir) is different from $(prefix)/include due to multiple outputs sed -i -e 's|^\(CPPFLAGS = .*\) -I\$(prefix)/include|\1 -I$(includedir)|' config/Makefile.inc.in - '' + stdenv.lib.optionalString stdenv.isArm '' + '' + stdenv.lib.optionalString stdenv.isAarch32 '' # From https://archlinuxarm.org/packages/armv7h/icu/files/icudata-stdlibs.patch sed -e 's/LDFLAGSICUDT=-nodefaultlibs -nostdlib/LDFLAGSICUDT=/' -i config/mh-linux ''; diff --git a/pkgs/development/libraries/jemalloc/common.nix b/pkgs/development/libraries/jemalloc/common.nix index 1a26bd13d41..d8866ae3ff8 100644 --- a/pkgs/development/libraries/jemalloc/common.nix +++ b/pkgs/development/libraries/jemalloc/common.nix @@ -16,7 +16,7 @@ stdenv.mkDerivation (rec { # jemalloc is unable to correctly detect transparent hugepage support on # ARM (https://github.com/jemalloc/jemalloc/issues/526), and the default # kernel ARMv6/7 kernel does not enable it, so we explicitly disable support - ++ stdenv.lib.optional stdenv.isArm "--disable-thp"; + ++ stdenv.lib.optional stdenv.isAarch32 "--disable-thp"; doCheck = true; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/kde-frameworks/default.nix b/pkgs/development/libraries/kde-frameworks/default.nix index 08eebfd83ae..f54139836b1 100644 --- a/pkgs/development/libraries/kde-frameworks/default.nix +++ b/pkgs/development/libraries/kde-frameworks/default.nix @@ -129,6 +129,7 @@ let syntax-highlighting = callPackage ./syntax-highlighting.nix {}; threadweaver = callPackage ./threadweaver.nix {}; kirigami2 = callPackage ./kirigami2.nix {}; + kholidays = callPackage ./kholidays.nix {}; # TIER 2 kactivities = callPackage ./kactivities.nix {}; diff --git a/pkgs/development/libraries/kde-frameworks/kholidays.nix b/pkgs/development/libraries/kde-frameworks/kholidays.nix new file mode 100644 index 00000000000..2ede69e7495 --- /dev/null +++ b/pkgs/development/libraries/kde-frameworks/kholidays.nix @@ -0,0 +1,16 @@ +{ + mkDerivation, lib, + extra-cmake-modules, kdoctools, + qtbase, qtdeclarative, qttools, +}: + +mkDerivation { + name = "kholidays"; + meta = { + license = with lib.licenses; [ gpl2 lgpl21 fdl12 ]; + maintainers = with lib.maintainers; [ bkchr ]; + }; + nativeBuildInputs = [ extra-cmake-modules kdoctools ]; + buildInputs = [ qtbase qtdeclarative qttools ]; + outputs = [ "out" "dev" ]; +} diff --git a/pkgs/development/libraries/kproperty/default.nix b/pkgs/development/libraries/kproperty/default.nix index 52b5d944b41..455fb5a711c 100644 --- a/pkgs/development/libraries/kproperty/default.nix +++ b/pkgs/development/libraries/kproperty/default.nix @@ -1,22 +1,23 @@ { mkDerivation, lib, fetchurl, extra-cmake-modules, - qtbase, kconfig, kcoreaddons, kwidgetsaddons, kguiaddons + qtbase, kconfig, kcoreaddons, kwidgetsaddons, kguiaddons, + qttools }: mkDerivation rec { pname = "kproperty"; - version = "3.0.2"; + version = "3.1.0"; name = "${pname}-${version}"; src = fetchurl { url = "mirror://kde/stable/${pname}/src/${name}.tar.xz"; - sha256 = "1hzkvdap7dzpnxlp4rfg5f24fhqjpqm2hlvv88gj4c0scbp73ynm"; + sha256 = "18qlwp7ajpx16bd0lfzqfx8y9cbrs8k4nax3cr30wj5sd3l8xpky"; }; nativeBuildInputs = [ extra-cmake-modules ]; - buildInputs = [ kconfig kcoreaddons kwidgetsaddons kguiaddons ]; + buildInputs = [ kconfig kcoreaddons kwidgetsaddons kguiaddons qttools ]; propagatedBuildInputs = [ qtbase ]; diff --git a/pkgs/development/libraries/kreport/default.nix b/pkgs/development/libraries/kreport/default.nix index 561e964c961..3f44dbb9c13 100644 --- a/pkgs/development/libraries/kreport/default.nix +++ b/pkgs/development/libraries/kreport/default.nix @@ -6,12 +6,12 @@ mkDerivation rec { pname = "kreport"; - version = "3.0.2"; + version = "3.1.0"; name = "${pname}-${version}"; src = fetchurl { url = "mirror://kde/stable/${pname}/src/${name}.tar.xz"; - sha256 = "1zd3vhf26cyp8xrq11awm9pmhnk88ppyc0riyr0gxj8y703ahkp0"; + sha256 = "0v7krpfx0isij9wzwam28fqn039i4wcznbplvnvl6hsykdi8ar1v"; }; nativeBuildInputs = [ extra-cmake-modules ]; diff --git a/pkgs/development/libraries/libdrm/default.nix b/pkgs/development/libraries/libdrm/default.nix index 82307e9ab16..ccae6ce5014 100644 --- a/pkgs/development/libraries/libdrm/default.nix +++ b/pkgs/development/libraries/libdrm/default.nix @@ -20,7 +20,7 @@ stdenv.mkDerivation rec { "echo : \\\${ac_cv_func_clock_gettime=\'yes\'} > config.cache"; configureFlags = [ "--enable-install-test-programs" ] - ++ stdenv.lib.optionals (stdenv.isArm || stdenv.isAarch64) + ++ stdenv.lib.optionals (stdenv.isAarch32 || stdenv.isAarch64) [ "--enable-tegra-experimental-api" "--enable-etnaviv-experimental-api" ] ++ stdenv.lib.optional stdenv.isDarwin "-C"; diff --git a/pkgs/development/libraries/libdvdnav/default.nix b/pkgs/development/libraries/libdvdnav/default.nix index 42321b2f866..b0dfd1e8fc1 100644 --- a/pkgs/development/libraries/libdvdnav/default.nix +++ b/pkgs/development/libraries/libdvdnav/default.nix @@ -17,7 +17,7 @@ stdenv.mkDerivation rec { description = "A library that implements DVD navigation features such as DVD menus"; license = stdenv.lib.licenses.gpl2; maintainers = [ stdenv.lib.maintainers.wmertens ]; - platforms = stdenv.lib.platforms.linux; + platforms = stdenv.lib.platforms.unix; }; passthru = { inherit libdvdread; }; diff --git a/pkgs/development/libraries/libglvnd/default.nix b/pkgs/development/libraries/libglvnd/default.nix index 4bc1d1addcf..7e1a2b54968 100644 --- a/pkgs/development/libraries/libglvnd/default.nix +++ b/pkgs/development/libraries/libglvnd/default.nix @@ -22,6 +22,9 @@ in stdenv.mkDerivation rec { "-DDEFAULT_EGL_VENDOR_CONFIG_DIRS=\"${driverLink}/share/glvnd/egl_vendor.d:/etc/glvnd/egl_vendor.d:/usr/share/glvnd/egl_vendor.d\"" ]; + # Indirectly: https://bugs.freedesktop.org/show_bug.cgi?id=35268 + configureFlags = stdenv.lib.optional stdenv.hostPlatform.isMusl "--disable-tls"; + # Upstream patch fixing use of libdl, should be in next release. patches = [ (fetchpatch { diff --git a/pkgs/development/libraries/liblouis/default.nix b/pkgs/development/libraries/liblouis/default.nix index bde1ff4e493..a6005d66b4d 100644 --- a/pkgs/development/libraries/liblouis/default.nix +++ b/pkgs/development/libraries/liblouis/default.nix @@ -50,6 +50,7 @@ in stdenv.mkDerivation rec { meta = with stdenv.lib; { description = "Open-source braille translator and back-translator"; homepage = http://liblouis.org/; + broken = true; license = licenses.lgpl21; maintainers = with maintainers; [ jtojnar ]; platforms = platforms.unix; diff --git a/pkgs/development/libraries/libmtp/default.nix b/pkgs/development/libraries/libmtp/default.nix index 88ef55715a7..c3061626a6a 100644 --- a/pkgs/development/libraries/libmtp/default.nix +++ b/pkgs/development/libraries/libmtp/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, libusb1 }: +{ stdenv, fetchurl, pkgconfig, libusb1, libiconv }: stdenv.mkDerivation rec { name = "libmtp-1.1.15"; @@ -10,6 +10,7 @@ stdenv.mkDerivation rec { outputs = [ "bin" "dev" "out" ]; + buildInputs = [ libiconv ]; propagatedBuildInputs = [ libusb1 ]; nativeBuildInputs = [ pkgconfig ]; @@ -24,7 +25,7 @@ stdenv.mkDerivation rec { in the form of a library suitable primarily for POSIX compliant operating systems. We implement MTP Basic, the stuff proposed for standardization. ''; - platforms = stdenv.lib.platforms.linux; + platforms = stdenv.lib.platforms.unix; maintainers = [ ]; }; } diff --git a/pkgs/development/libraries/libre/default.nix b/pkgs/development/libraries/libre/default.nix index ebe765a0d0d..c996c5c25f9 100644 --- a/pkgs/development/libraries/libre/default.nix +++ b/pkgs/development/libraries/libre/default.nix @@ -1,10 +1,10 @@ {stdenv, fetchurl, zlib, openssl}: stdenv.mkDerivation rec { - version = "0.5.7"; + version = "0.5.8"; name = "libre-${version}"; src = fetchurl { url = "http://www.creytiv.com/pub/re-${version}.tar.gz"; - sha256 = "0f8h224xfzvnb2ngvhxz8gzxqjlkkfr6d0nj8zqivzr81ihibk2x"; + sha256 = "0w0f8j43j0nzgvkmv3ayzrssppgjmsh6z8mpa5iqsz8nv99dc3qr"; }; buildInputs = [ zlib openssl ]; makeFlags = [ "USE_ZLIB=1" "USE_OPENSSL=1" "PREFIX=$(out)" ] diff --git a/pkgs/development/libraries/librem/default.nix b/pkgs/development/libraries/librem/default.nix index f6e041e5732..b173eddda7d 100644 --- a/pkgs/development/libraries/librem/default.nix +++ b/pkgs/development/libraries/librem/default.nix @@ -1,10 +1,10 @@ {stdenv, fetchurl, zlib, openssl, libre}: stdenv.mkDerivation rec { - version = "0.5.2"; + version = "0.5.3"; name = "librem-${version}"; src=fetchurl { url = "http://www.creytiv.com/pub/rem-${version}.tar.gz"; - sha256 = "1sv4986yyq42irk9alwp20gc3r5y0r6kix15sl8qmljgxn0lxigv"; + sha256 = "0l401sn8lkzz9gvnvww6839xa0ys1q7w66krln194w6l8ycsg64z"; }; buildInputs = [zlib openssl libre]; makeFlags = [ diff --git a/pkgs/development/libraries/libtoxcore/default.nix b/pkgs/development/libraries/libtoxcore/default.nix index 16fca9ce3d3..9af8718dc5f 100644 --- a/pkgs/development/libraries/libtoxcore/default.nix +++ b/pkgs/development/libraries/libtoxcore/default.nix @@ -20,7 +20,7 @@ stdenv.mkDerivation rec { buildInputs = [ libsodium libmsgpack ncurses libconfig - ] ++ stdenv.lib.optionals (!stdenv.isArm) [ + ] ++ stdenv.lib.optionals (!stdenv.isAarch32) [ libopus libvpx ]; diff --git a/pkgs/development/libraries/libtoxcore/new-api.nix b/pkgs/development/libraries/libtoxcore/new-api.nix index 8d0a467c82a..785bc6f3c84 100644 --- a/pkgs/development/libraries/libtoxcore/new-api.nix +++ b/pkgs/development/libraries/libtoxcore/new-api.nix @@ -33,11 +33,11 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ autoreconfHook pkgconfig ]; buildInputs = [ autoreconfHook libsodium ncurses check libconfig - ] ++ stdenv.lib.optionals (!stdenv.isArm) [ + ] ++ stdenv.lib.optionals (!stdenv.isAarch32) [ libopus ]; - propagatedBuildInputs = stdenv.lib.optionals (!stdenv.isArm) [ libvpx ]; + propagatedBuildInputs = stdenv.lib.optionals (!stdenv.isAarch32) [ libvpx ]; # Some tests fail randomly due to timeout. This kind of problem is well known # by upstream: https://github.com/irungentoo/toxcore/issues/{950,1054} diff --git a/pkgs/development/libraries/libvpx/default.nix b/pkgs/development/libraries/libvpx/default.nix index 1e96ff9bb1a..272761cc6af 100644 --- a/pkgs/development/libraries/libvpx/default.nix +++ b/pkgs/development/libraries/libvpx/default.nix @@ -41,7 +41,7 @@ }: let - inherit (stdenv) isi686 isx86_64 isArm is64bit isMips isDarwin isCygwin; + inherit (stdenv) isi686 isx86_64 isAarch32 is64bit isMips isDarwin isCygwin; inherit (stdenv.lib) enableFeature optional optionals; in diff --git a/pkgs/development/libraries/libvpx/git.nix b/pkgs/development/libraries/libvpx/git.nix index ef499f238d6..e2b94dda28e 100644 --- a/pkgs/development/libraries/libvpx/git.nix +++ b/pkgs/development/libraries/libvpx/git.nix @@ -43,11 +43,11 @@ }: let - inherit (stdenv) isi686 isx86_64 isArm is64bit isMips isDarwin isCygwin; + inherit (stdenv) isi686 isx86_64 isAarch32 is64bit isMips isDarwin isCygwin; inherit (stdenv.lib) enableFeature optional optionals; in -assert isi686 || isx86_64 || isArm || isMips; # Requires ARM with floating point support +assert isi686 || isx86_64 || isAarch32 || isMips; # Requires ARM with floating point support assert vp8DecoderSupport || vp8EncoderSupport || vp9DecoderSupport || vp9EncoderSupport; assert internalStatsSupport && (vp9DecoderSupport || vp9EncoderSupport) -> postprocSupport; diff --git a/pkgs/development/libraries/live555/default.nix b/pkgs/development/libraries/live555/default.nix index 1479f7b6153..e0cf3328bac 100644 --- a/pkgs/development/libraries/live555/default.nix +++ b/pkgs/development/libraries/live555/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl }: +{ stdenv, fetchurl, lib, darwin }: # Based on https://projects.archlinux.org/svntogit/packages.git/tree/trunk/PKGBUILD let @@ -12,19 +12,23 @@ stdenv.mkDerivation { sha256 = "0zi47asv1qmb09g321m02q684i3c90vci0mgkdh1mlmx2rbg1d1d"; }; - postPatch = "sed 's,/bin/rm,rm,g' -i genMakefiles" - + stdenv.lib.optionalString (stdenv ? glibc) '' - + postPatch = '' + sed 's,/bin/rm,rm,g' -i genMakefiles + sed \ + -e 's/$(INCLUDES) -I. -O2 -DSOCKLEN_T/$(INCLUDES) -I. -O2 -I. -fPIC -DRTSPCLIENT_SYNCHRONOUS_INTERFACE=1 -DSOCKLEN_T/g' \ + -i config.linux + '' + stdenv.lib.optionalString (stdenv ? glibc) '' substituteInPlace liveMedia/include/Locale.hh \ --replace '<xlocale.h>' '<locale.h>' ''; configurePhase = '' - sed \ - -e 's/$(INCLUDES) -I. -O2 -DSOCKLEN_T/$(INCLUDES) -I. -O2 -I. -fPIC -DRTSPCLIENT_SYNCHRONOUS_INTERFACE=1 -DSOCKLEN_T/g' \ - -i config.linux - - ./genMakefiles linux + ./genMakefiles ${{ + x86_64-darwin = "macosx"; + i686-linux = "linux"; + x86_64-linux = "linux-64bit"; + aarch64-linux = "linux-64bit"; + }.${stdenv.system}} ''; installPhase = '' @@ -35,10 +39,12 @@ stdenv.mkDerivation { done ''; - meta = with stdenv.lib; { + nativeBuildInputs = lib.optional stdenv.isDarwin darwin.cctools; + + meta = with lib; { description = "Set of C++ libraries for multimedia streaming, using open standard protocols (RTP/RTCP, RTSP, SIP)"; homepage = http://www.live555.com/liveMedia/; license = licenses.lgpl21Plus; - platforms = platforms.linux; + platforms = platforms.unix; }; } diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix index e77a4e1414e..2beb7e60080 100644 --- a/pkgs/development/libraries/mesa/default.nix +++ b/pkgs/development/libraries/mesa/default.nix @@ -33,17 +33,17 @@ else let defaultGalliumDrivers = - if stdenv.isArm + if stdenv.isAarch32 then ["nouveau" "freedreno" "vc4" "etnaviv" "imx"] else if stdenv.isAarch64 then ["nouveau" "vc4" ] else ["svga" "i915" "r300" "r600" "radeonsi" "nouveau"]; defaultDriDrivers = - if (stdenv.isArm || stdenv.isAarch64) + if (stdenv.isAarch32 || stdenv.isAarch64) then ["nouveau"] else ["i915" "i965" "nouveau" "radeon" "r200"]; defaultVulkanDrivers = - if (stdenv.isArm || stdenv.isAarch64) + if (stdenv.isAarch32 || stdenv.isAarch64) then [] else ["intel"] ++ lib.optional enableRadv "radeon"; in @@ -125,7 +125,8 @@ let self = stdenv.mkDerivation { "--enable-gles1" "--enable-gles2" "--enable-glx" - "--enable-glx-tls" + # https://bugs.freedesktop.org/show_bug.cgi?id=35268 + (enableFeature (!stdenv.hostPlatform.isMusl) "glx-tls") "--enable-gallium-osmesa" # used by wine "--enable-llvm" "--enable-egl" diff --git a/pkgs/development/libraries/pixman/default.nix b/pkgs/development/libraries/pixman/default.nix index e70ffc3eb2f..2987c67ae75 100644 --- a/pkgs/development/libraries/pixman/default.nix +++ b/pkgs/development/libraries/pixman/default.nix @@ -22,7 +22,7 @@ stdenv.mkDerivation rec { buildInputs = stdenv.lib.optional doCheck libpng; - configureFlags = stdenv.lib.optional stdenv.isArm "--disable-arm-iwmmxt"; + configureFlags = stdenv.lib.optional stdenv.isAarch32 "--disable-arm-iwmmxt"; doCheck = true; diff --git a/pkgs/development/libraries/pth/default.nix b/pkgs/development/libraries/pth/default.nix index b7b09caed9b..6118d9c41d6 100644 --- a/pkgs/development/libraries/pth/default.nix +++ b/pkgs/development/libraries/pth/default.nix @@ -8,7 +8,7 @@ stdenv.mkDerivation rec { sha256 = "0ckjqw5kz5m30srqi87idj7xhpw6bpki43mj07bazjm2qmh3cdbj"; }; - preConfigure = stdenv.lib.optionalString stdenv.isArm '' + preConfigure = stdenv.lib.optionalString stdenv.isAarch32 '' configureFlagsArray=("CFLAGS=-DJB_SP=8 -DJB_PC=9") ''; diff --git a/pkgs/development/libraries/qt-5/mkDerivation.nix b/pkgs/development/libraries/qt-5/mkDerivation.nix index 739c9b4a160..96014cfbc77 100644 --- a/pkgs/development/libraries/qt-5/mkDerivation.nix +++ b/pkgs/development/libraries/qt-5/mkDerivation.nix @@ -9,9 +9,8 @@ args: let args_ = { - qmakeFlags = - (args.qmakeFlags or []) - ++ [ ("CONFIG+=" + (if debug then "debug" else "release")) ]; + qmakeFlags = [ ("CONFIG+=" + (if debug then "debug" else "release")) ] + ++ (args.qmakeFlags or []); NIX_CFLAGS_COMPILE = optional (!debug) "-DQT_NO_DEBUG" diff --git a/pkgs/development/libraries/qt-5/modules/qtwebengine.nix b/pkgs/development/libraries/qt-5/modules/qtwebengine.nix index 08345510d78..e798d529ce1 100644 --- a/pkgs/development/libraries/qt-5/modules/qtwebengine.nix +++ b/pkgs/development/libraries/qt-5/modules/qtwebengine.nix @@ -11,9 +11,8 @@ , libcap , pciutils , systemd - , enableProprietaryCodecs ? true - +, gn, darwin, openbsm , lib, stdenv # lib.optional, needsPax }: @@ -25,7 +24,7 @@ qtModule { name = "qtwebengine"; qtInputs = [ qtdeclarative qtquickcontrols qtlocation qtwebchannel ]; nativeBuildInputs = [ - bison coreutils flex git gperf ninja pkgconfig python2 which + bison coreutils flex git gperf ninja pkgconfig python2 which gn ]; doCheck = true; outputs = [ "bin" "dev" "out" ]; @@ -61,8 +60,50 @@ qtModule { sed -i -e '/libpci_loader.*Load/s!"\(libpci\.so\)!"${pciutils}/lib/\1!' \ src/3rdparty/chromium/gpu/config/gpu_info_collector_linux.cc + '' + + optionalString stdenv.isDarwin '' + # Remove annoying xcode check + substituteInPlace mkspecs/features/platform.prf \ + --replace "lessThan(QMAKE_XCODE_VERSION, 7.3)" false + substituteInPlace src/core/config/mac_osx.pri \ + --replace /usr ${stdenv.cc} \ + --replace "isEmpty(QMAKE_MAC_SDK_VERSION)" false + + # FIXME Needed with old Apple SDKs + # Abandon all hope ye who try to make sense of this. + substituteInPlace src/3rdparty/chromium/base/mac/foundation_util.mm \ + --replace "NSArray<NSString*>*" "NSArray*" + substituteInPlace src/3rdparty/chromium/base/mac/sdk_forward_declarations.h \ + --replace "NSDictionary<VNImageOption, id>*" "NSDictionary*" \ + --replace "NSArray<VNRequest*>*" "NSArray*" \ + --replace "typedef NSString* VNImageOption NS_STRING_ENUM" "typedef NSString* VNImageOption" + + cat <<EOF > src/3rdparty/chromium/build/mac/find_sdk.py +#!/usr/bin/env python +print("10.10.0") +print("") +EOF + + cat <<EOF > src/3rdparty/chromium/build/config/mac/sdk_info.py +#!/usr/bin/env python +print('xcode_version="9.1"') +print('xcode_version_int=9') +print('xcode_build="9B55"') +print('machine_os_build="17E199"') +print('sdk_path=""') +print('sdk_version="10.10"') +print('sdk_platform_path=""') +print('sdk_build="17B41"') +EOF + + # Apple has some secret stuff they don't share with OpenBSM + substituteInPlace src/3rdparty/chromium/base/mac/mach_port_broker.mm \ + --replace "audit_token_to_pid(msg.trailer.msgh_audit)" "msg.trailer.msgh_audit.val[5]" + substituteInPlace src/3rdparty/chromium/sandbox/mac/bootstrap_sandbox.cc \ + --replace "audit_token_to_pid(msg.trailer.msgh_audit)" "msg.trailer.msgh_audit.val[5]" ''; + NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-DMAC_OS_X_VERSION_MAX_ALLOWED=MAC_OS_X_VERSION_10_10 -DMAC_OS_X_VERSION_MIN_REQUIRED=MAC_OS_X_VERSION_10_10"; preConfigure = '' export NINJAFLAGS=-j$NIX_BUILD_CORES @@ -70,13 +111,9 @@ qtModule { if [ -d "$PWD/tools/qmake" ]; then QMAKEPATH="$PWD/tools/qmake''${QMAKEPATH:+:}$QMAKEPATH" fi - ''; + ''; - qmakeFlags = - [ - # Use system Ninja because bootstrapping it is fragile - "WEBENGINE_CONFIG+=use_system_ninja" - ] ++ optional enableProprietaryCodecs "WEBENGINE_CONFIG+=use_proprietary_codecs"; + qmakeFlags = optional enableProprietaryCodecs "-- -proprietary-codecs"; propagatedBuildInputs = [ # Image formats @@ -90,9 +127,10 @@ qtModule { # Text rendering harfbuzz icu - ] - ++ optionals (!stdenv.isDarwin) [ - dbus zlib minizip snappy nss protobuf jsoncpp libevent + + libevent + ] ++ optionals (!stdenv.isDarwin) [ + dbus zlib minizip snappy nss protobuf jsoncpp # Audio formats alsaLib @@ -106,17 +144,44 @@ qtModule { # X11 libs xorg.xrandr libXScrnSaver libXcursor libXrandr xorg.libpciaccess libXtst xorg.libXcomposite xorg.libXdamage libdrm - ]; + ] + + # FIXME These dependencies shouldn't be needed but can't find a way + # around it. Chromium pulls this in while bootstrapping GN. + ++ lib.optionals stdenv.isDarwin (with darwin; with apple_sdk.frameworks; [ + libobjc + cctools + + # frameworks + ApplicationServices + Foundation + AppKit + ImageCaptureCore + CoreBluetooth + IOBluetooth + CoreWLAN + Quartz + Cocoa + + openbsm + libunwind + ]); dontUseNinjaBuild = true; dontUseNinjaInstall = true; - postInstall = '' + postInstall = lib.optionalString stdenv.isLinux '' cat > $out/libexec/qt.conf <<EOF [Paths] Prefix = .. EOF - paxmark m $out/libexec/QtWebEngineProcess ''; + + meta = with lib; { + description = "A web engine based on the Chromium web browser"; + maintainers = with maintainers; [ matthewbauer ]; + platforms = platforms.unix; + }; + } diff --git a/pkgs/development/libraries/rarian/default.nix b/pkgs/development/libraries/rarian/default.nix new file mode 100644 index 00000000000..484e5856872 --- /dev/null +++ b/pkgs/development/libraries/rarian/default.nix @@ -0,0 +1,31 @@ +{stdenv, fetchurl, pkgconfig, perl, perlXMLParser, libxml2, libxslt, docbook_xml_dtd_42, gnome3}: +let + pname = "rarian"; + version = "0.8.1"; +in stdenv.mkDerivation rec { + name = "${pname}-${version}"; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.gz"; + sha256 = "aafe886d46e467eb3414e91fa9e42955bd4b618c3e19c42c773026b205a84577"; + }; + + nativeBuildInputs = [ pkgconfig ]; + buildInputs = [ perl perlXMLParser libxml2 libxslt]; + configureFlags = "--with-xml-catalog=${docbook_xml_dtd_42}/xml/dtd/docbook/docbook.cat"; + + passthru = { + updateScript = gnome3.updateScript { + packageName = pname; + attrPath = "gnome3.${pname}"; + }; + }; + + meta = with stdenv.lib; { + description = "Documentation metadata library based on the proposed Freedesktop.org spec"; + homepage = https://rarian.freedesktop.org/; + license = licenses.lgpl21Plus; + maintainers = gnome3.maintainers; + platforms = platforms.linux; + }; +} diff --git a/pkgs/development/libraries/schroedinger/default.nix b/pkgs/development/libraries/schroedinger/default.nix index 2309719c2bd..167fe419076 100644 --- a/pkgs/development/libraries/schroedinger/default.nix +++ b/pkgs/development/libraries/schroedinger/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, orc, pkgconfig }: +{ stdenv, fetchurl, orc, pkgconfig, fetchpatch, autoreconfHook }: stdenv.mkDerivation { name = "schroedinger-1.0.11"; @@ -13,15 +13,23 @@ stdenv.mkDerivation { outputs = [ "out" "dev" "devdoc" ]; - nativeBuildInputs = [ pkgconfig ]; + nativeBuildInputs = [ pkgconfig autoreconfHook ]; buildInputs = [ orc ]; - doCheck = true; + doCheck = (!stdenv.isDarwin); + + patchFlags = "-p0"; + patches = [ + (fetchpatch { + url = "https://raw.githubusercontent.com/macports/macports-ports/master/multimedia/schroedinger/files/patch-testsuite-Makefile.am.diff"; + sha256 = "0cc8ymvgjgwy7ghca2dd8m8pxpinf27s2i8krf2m3fzv2ckq09v3"; + }) + ]; meta = with stdenv.lib; { homepage = http://diracvideo.org/; maintainers = [ maintainers.spwhitt ]; license = [ licenses.mpl11 licenses.lgpl2 licenses.mit ]; - platforms = platforms.linux; + platforms = platforms.unix; }; } diff --git a/pkgs/development/libraries/v8/3.16.14.nix b/pkgs/development/libraries/v8/3.16.14.nix index 73f5febb668..e1a9336e3a5 100644 --- a/pkgs/development/libraries/v8/3.16.14.nix +++ b/pkgs/development/libraries/v8/3.16.14.nix @@ -3,10 +3,10 @@ assert readline != null; let - arch = if stdenv.isArm + arch = if stdenv.isAarch32 then (if stdenv.is64bit then "arm64" else "arm") else (if stdenv.is64bit then "x64" else "ia32"); - armHardFloat = stdenv.isArm && (stdenv.platform.gcc.float or null) == "hard"; + armHardFloat = stdenv.isAarch32 && (stdenv.platform.gcc.float or null) == "hard"; in stdenv.mkDerivation rec { diff --git a/pkgs/development/libraries/v8/6_x.nix b/pkgs/development/libraries/v8/6_x.nix index 4095ff20c2b..adebedbf2ac 100644 --- a/pkgs/development/libraries/v8/6_x.nix +++ b/pkgs/development/libraries/v8/6_x.nix @@ -4,7 +4,7 @@ }: let - arch = if stdenv.isArm + arch = if stdenv.isAarch32 then if stdenv.is64bit then"arm64" else "arm" diff --git a/pkgs/development/libraries/v8/default.nix b/pkgs/development/libraries/v8/default.nix index f14ec4fc608..099794f6623 100644 --- a/pkgs/development/libraries/v8/default.nix +++ b/pkgs/development/libraries/v8/default.nix @@ -10,7 +10,7 @@ let arch = if stdenv.isx86_64 then "x64" else if stdenv.isi686 then "ia32" else if stdenv.isAarch64 then "arm64" - else if stdenv.isArm then "arm" + else if stdenv.isAarch32 then "arm" else throw "Unknown architecture for v8"; git_url = "https://chromium.googlesource.com"; clangFlag = if stdenv.isDarwin then "1" else "0"; diff --git a/pkgs/development/libraries/webrtc-audio-processing/default.nix b/pkgs/development/libraries/webrtc-audio-processing/default.nix index b5a3aed91d9..529091518eb 100644 --- a/pkgs/development/libraries/webrtc-audio-processing/default.nix +++ b/pkgs/development/libraries/webrtc-audio-processing/default.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { # Avoid this error: # signal_processing/filter_ar_fast_q12_armv7.S:88: Error: selected processor does not support `sbfx r11,r6,#12,#16' in ARM mode - patchPhase = stdenv.lib.optionalString stdenv.isArm '' + patchPhase = stdenv.lib.optionalString stdenv.isAarch32 '' substituteInPlace configure --replace 'armv7*|armv8*' 'disabled' '' + stdenv.lib.optionalString stdenv.hostPlatform.isMusl '' substituteInPlace webrtc/base/checks.cc --replace 'defined(__UCLIBC__)' 1 |