diff options
Diffstat (limited to 'pkgs/development/libraries')
-rw-r--r-- | pkgs/development/libraries/dlib/default.nix | 15 | ||||
-rw-r--r-- | pkgs/development/libraries/v8/3.14.nix | 28 | ||||
-rw-r--r-- | pkgs/development/libraries/webkitgtk/2.17.nix | 106 | ||||
-rw-r--r-- | pkgs/development/libraries/webkitgtk/gstreamergl-2.17.patch | 13 |
4 files changed, 130 insertions, 32 deletions
diff --git a/pkgs/development/libraries/dlib/default.nix b/pkgs/development/libraries/dlib/default.nix index fe4e7907c9f..61932b29e62 100644 --- a/pkgs/development/libraries/dlib/default.nix +++ b/pkgs/development/libraries/dlib/default.nix @@ -1,18 +1,25 @@ -{ stdenv, fetchFromGitHub, cmake, xlibsWrapper }: +{ stdenv, lib, fetchFromGitHub, cmake, pkgconfig, openblas, libpng, libjpeg +, guiSupport ? false, libX11 +}: stdenv.mkDerivation rec { - version = "19.4"; + version = "19.6"; name = "dlib-${version}"; src = fetchFromGitHub { owner = "davisking"; repo = "dlib"; rev ="v${version}"; - sha256 = "0zqa36i4s5i7n6284sp22qrhm3k37n9vqmpz068nm02vj9h0a2j4"; + sha256 = "1nlx4z53jnk7wysaxrzbyyqb65m45rw4g1fagazl2jvwh1qn49ds"; }; + postPatch = '' + rm -rf dlib/external + ''; + enableParallelBuilding = true; - nativeBuildInputs = [ cmake ]; + nativeBuildInputs = [ cmake pkgconfig ]; + buildInputs = [ openblas libpng libjpeg ] ++ lib.optional guiSupport libX11; meta = with stdenv.lib; { description = "A general purpose cross-platform C++ machine learning library"; diff --git a/pkgs/development/libraries/v8/3.14.nix b/pkgs/development/libraries/v8/3.14.nix deleted file mode 100644 index fee0f868ea9..00000000000 --- a/pkgs/development/libraries/v8/3.14.nix +++ /dev/null @@ -1,28 +0,0 @@ -{ stdenv, callPackage, fetchFromGitHub, python, ... } @ args: -with stdenv.lib; -let - version = "3.14.5.10"; - sha256 = "08vhl84166x13b3cbx8y0g99yqx772zd33gawsa1nxqkyrykql6k"; -in -(callPackage ./generic.nix (args // { - inherit version sha256; -})).overrideDerivation (oldAttrs:{ - patchPhase = [ - oldAttrs.patchPhase - "sed -i 's,#!/usr/bin/python,#!${python}/bin/python,' build/gyp_v8" - ]; - - # http://code.google.com/p/v8/issues/detail?id=2149 - NIX_CFLAGS_COMPILE = concatStringsSep " " [ - oldAttrs.NIX_CFLAGS_COMPILE - "-Wno-unused-local-typedefs" - "-Wno-aggressive-loop-optimizations" - ]; - - src = fetchFromGitHub { - owner = "v8"; - repo = "v8"; - rev = "${version}"; - inherit sha256; - }; -}) diff --git a/pkgs/development/libraries/webkitgtk/2.17.nix b/pkgs/development/libraries/webkitgtk/2.17.nix new file mode 100644 index 00000000000..53718f696cb --- /dev/null +++ b/pkgs/development/libraries/webkitgtk/2.17.nix @@ -0,0 +1,106 @@ +{ stdenv, fetchurl, perl, python2, ruby, bison, gperf, cmake +, pkgconfig, gettext, gobjectIntrospection, libnotify, gnutls +, gtk2, gtk3, wayland, libwebp, enchant, xlibs, libxkbcommon, epoxy, at_spi2_core +, libxml2, libsoup, libsecret, libxslt, harfbuzz, libpthreadstubs, pcre, nettle, libtasn1, p11_kit +, libidn, libedit, readline, mesa, libintlOrEmpty +, enableGeoLocation ? true, geoclue2, sqlite +, gst-plugins-base, gst-plugins-bad +}: + +assert enableGeoLocation -> geoclue2 != null; + +with stdenv.lib; +stdenv.mkDerivation rec { + name = "webkitgtk-${version}"; + version = "2.17.91"; + + meta = { + description = "Web content rendering engine, GTK+ port"; + homepage = http://webkitgtk.org/; + license = licenses.bsd2; + platforms = with platforms; linux ++ darwin; + hydraPlatforms = []; + maintainers = with maintainers; [ ]; + }; + + postConfigure = optionalString stdenv.isDarwin '' + substituteInPlace Source/WebKit2/CMakeFiles/WebKit2.dir/link.txt \ + --replace "../../lib/libWTFGTK.a" "" + substituteInPlace Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/link.txt \ + --replace "../../lib/libbmalloc.a" "" + sed -i "s|[\./]*\.\./lib/lib[^\.]*\.a||g" \ + Source/JavaScriptCore/CMakeFiles/LLIntOffsetsExtractor.dir/link.txt \ + Source/JavaScriptCore/shell/CMakeFiles/jsc.dir/link.txt \ + Source/JavaScriptCore/shell/CMakeFiles/testb3.dir/link.txt \ + Source/WebKit2/CMakeFiles/DatabaseProcess.dir/link.txt \ + Source/WebKit2/CMakeFiles/NetworkProcess.dir/link.txt \ + Source/WebKit2/CMakeFiles/webkit2gtkinjectedbundle.dir/link.txt \ + Source/WebKit2/CMakeFiles/WebProcess.dir/link.txt + substituteInPlace Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/link.txt \ + --replace "../../lib/libWTFGTK.a" "-Wl,-all_load ../../lib/libWTFGTK.a" + ''; + + src = fetchurl { + url = "http://webkitgtk.org/releases/${name}.tar.xz"; + sha256 = "0f158gqb2lvv3v5z6s7gjgwms69fgsjkd8whfks8cq6cybiy9y37"; + }; + + # see if we can clean this up.... + + patches = [ + ./finding-harfbuzz-icu.patch + ./gstreamergl-2.17.patch + ] ++ optionals stdenv.isDarwin [ + ./PR-152650-2.patch + ./PR-153138.patch + ./PR-157554.patch + ./PR-157574.patch + ]; + + cmakeFlags = [ + "-DPORT=GTK" + "-DUSE_LIBHYPHEN=0" + ] + ++ optional stdenv.isLinux "-DENABLE_GLES2=ON" + ++ optionals stdenv.isDarwin [ + "-DUSE_SYSTEM_MALLOC=ON" + "-DUSE_ACCELERATE=0" + "-DENABLE_INTROSPECTION=ON" + "-DENABLE_MINIBROWSER=OFF" + "-DENABLE_PLUGIN_PROCESS_GTK2=OFF" + "-DENABLE_MINIBROWSER=OFF" + "-DENABLE_VIDEO=ON" + "-DENABLE_QUARTZ_TARGET=ON" + "-DENABLE_X11_TARGET=OFF" + "-DENABLE_OPENGL=OFF" + "-DENABLE_WEB_AUDIO=OFF" + "-DENABLE_WEBGL=OFF" + "-DENABLE_GRAPHICS_CONTEXT_3D=OFF" + "-DENABLE_GTKDOC=OFF" + ]; + + # XXX: WebKit2 missing include path for gst-plugins-base. + # Filled: https://bugs.webkit.org/show_bug.cgi?id=148894 + NIX_CFLAGS_COMPILE = "-I${gst-plugins-base.dev}/include/gstreamer-1.0 -I${gst-plugins-bad}/include/gstreamer-1.0" + + (optionalString stdenv.isDarwin " -lintl"); + + nativeBuildInputs = [ + cmake perl python2 ruby bison gperf sqlite + pkgconfig gettext gobjectIntrospection + ]; + + buildInputs = libintlOrEmpty ++ [ + gtk2 libwebp enchant libnotify gnutls pcre nettle libidn + libxml2 libsecret libxslt harfbuzz libpthreadstubs libtasn1 p11_kit + gst-plugins-base gst-plugins-bad libxkbcommon epoxy at_spi2_core + ] ++ optional enableGeoLocation geoclue2 + ++ (with xlibs; [ libXdmcp libXt libXtst ]) + ++ optionals stdenv.isDarwin [ libedit readline mesa ] + ++ optional stdenv.isLinux wayland; + + propagatedBuildInputs = [ + libsoup gtk3 + ]; + + enableParallelBuilding = true; +} diff --git a/pkgs/development/libraries/webkitgtk/gstreamergl-2.17.patch b/pkgs/development/libraries/webkitgtk/gstreamergl-2.17.patch new file mode 100644 index 00000000000..7c47db52aba --- /dev/null +++ b/pkgs/development/libraries/webkitgtk/gstreamergl-2.17.patch @@ -0,0 +1,13 @@ +diff --git i/Source/cmake/OptionsGTK.cmake w/Source/cmake/OptionsGTK.cmake +index d3577a8..9620dc0 100644 +--- i/Source/cmake/OptionsGTK.cmake ++++ w/Source/cmake/OptionsGTK.cmake +@@ -94,7 +94,7 @@ WEBKIT_OPTION_DEFINE(USE_LIBSECRET "Whether to enable the persistent credential + + # Private options specific to the GTK+ port. Changing these options is + # completely unsupported. They are intended for use only by WebKit developers. +-WEBKIT_OPTION_DEFINE(USE_GSTREAMER_GL "Whether to enable support for GStreamer GL" PRIVATE ON) ++WEBKIT_OPTION_DEFINE(USE_GSTREAMER_GL "Whether to enable support for GStreamer GL" PRIVATE OFF) + WEBKIT_OPTION_DEFINE(USE_GSTREAMER_MPEGTS "Whether to enable support for MPEG-TS" PRIVATE OFF) + WEBKIT_OPTION_DEFINE(USE_REDIRECTED_XCOMPOSITE_WINDOW "Whether to use a Redirected XComposite Window for accelerated compositing in X11." PRIVATE ON) + |