From 169fee5644bd0a9e7994b1a6ed40460d4b52ba99 Mon Sep 17 00:00:00 2001 From: "Yury G. Kudryashov" Date: Fri, 7 May 2010 20:08:37 +0000 Subject: [PATCH] Add qt-4.7-beta1 with low priority svn path=/nixpkgs/trunk/; revision=21659 --- .../libraries/qt-4.x/4.7/default.nix | 107 ++++++++++++++++++ pkgs/top-level/all-packages.nix | 11 ++ 2 files changed, 118 insertions(+) create mode 100644 pkgs/development/libraries/qt-4.x/4.7/default.nix diff --git a/pkgs/development/libraries/qt-4.x/4.7/default.nix b/pkgs/development/libraries/qt-4.x/4.7/default.nix new file mode 100644 index 00000000000..0bb61a07bcb --- /dev/null +++ b/pkgs/development/libraries/qt-4.x/4.7/default.nix @@ -0,0 +1,107 @@ +{ stdenv, fetchurl, lib +, alsaLib, gstreamer, gstPluginsBase, pulseaudio +, libXft, libXrender, randrproto, xextproto, libXinerama, xineramaproto, libXcursor, libXmu +, libXv, libXext, libXfixes, inputproto, fixesproto, libXrandr, freetype, fontconfig +, zlib, libjpeg, libpng, which, mesa, openssl, dbus, cups, pkgconfig, libtiff, glib +, mysql, postgresql, sqlite +, perl, coreutils, libXi +, buildDemos ? false, buildExamples ? false, useDocs ? true}: + +stdenv.mkDerivation rec { + name = "qt-4.7.0-beta1"; + + src = fetchurl { + url = ftp://ftp.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.7.0-beta1.tar.gz; + sha256 = "0ac9dk2xdcbwjmh9hgmnp60df9shv2ss78lls2apgnjddscdw1qi"; + }; + + preConfigure = '' + export LD_LIBRARY_PATH="`pwd`/lib:$LD_LIBRARY_PATH" + configureFlags+=" + -docdir $out/share/doc/${name} + -plugindir $out/lib/qt4/plugins + -examplesdir $out/share/doc/${name}/examples + -demosdir $out/share/doc/${name}/demos + -datadir $out/share/qt4 + " + ''; + + propagatedBuildInputs = [ + alsaLib + sqlite + libXft + libXrender + libXrandr + libXi + randrproto + xextproto + libXinerama + xineramaproto + libXcursor + zlib + libjpeg + mysql + postgresql + libpng + which + mesa + libXmu + libXv + openssl + dbus.libs + cups + pkgconfig + libXext + freetype + fontconfig + inputproto + fixesproto + libXfixes + glib + libtiff + gstreamer + gstPluginsBase + pulseaudio + ]; + + buildInputs = [ perl ]; + + # libQtNetwork will call libQtCore for it to dlopen openssl. + NIX_LDFLAGS = "-rpath ${openssl}/lib"; + # Don't shrink the rpath, to keep ${openssl} in it. + dontPatchELF = 1; + + prefixKey = "-prefix "; + + configureFlags = '' + -v -no-separate-debug-info -release -fast -confirm-license -opensource + -system-zlib -system-libpng -system-libjpeg -qt-gif + -opengl -xrender -xrandr -xinerama -xcursor + -plugin-sql-mysql -system-sqlite + -qdbus -cups -glib -xfixes -dbus-linked + -fontconfig -I${freetype}/include/freetype2 + -exceptions -xmlpatterns + -multimedia -mediaservices + -javascript-jit + ${if buildDemos == true then "-make demos" else "-nomake demos"} + ${if buildExamples == true then "-make examples" else "-nomake examples"} + ${if useDocs then "-make docs" else "-nomake docs"} + ''; + + patchPhase = '' + substituteInPlace configure --replace /bin/pwd pwd + substituteInPlace src/corelib/global/global.pri --replace /bin/ls ${coreutils}/bin/ls + sed -e 's@/usr@/FOO@' -i config.tests/*/*.test -i mkspecs/*/*.conf + ''; + + postInstall = if useDocs then "rm -rf $out/share/doc/${name}/{html,src}" else ""; + + meta = { + homepage = http://qt.nokia.com/products; + description = "A cross-platform application framework for C++"; + license = "GPL/LGPL"; + maintainers = with lib.maintainers; [ urkud sander ]; + platforms = stdenv.lib.platforms.linux; + priority = 10; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 50aa6ac84bc..f34a369b41f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5041,6 +5041,17 @@ let inherit (gnome) glib; }; + qt47 = makeOverridable (import ../development/libraries/qt-4.x/4.7) { + inherit fetchurl stdenv lib zlib libjpeg libpng which mysql mesa openssl cups dbus + fontconfig freetype pkgconfig libtiff perl coreutils sqlite alsaLib + postgresql pulseaudio; + inherit (gst_all) gstreamer gstPluginsBase; + inherit (xlibs) xextproto libXft libXrender libXrandr randrproto + libXmu libXinerama xineramaproto libXcursor libXext libXi + inputproto fixesproto libXfixes libXv; + inherit (gnome) glib; + }; + qtscriptgenerator = makeOverridable (import ../development/libraries/qtscriptgenerator) { inherit stdenv fetchurl; qt4 = qt46;