nixpkgs/pkgs/development/libraries/gtk+/2.x.nix

59 lines
1.9 KiB
Nix
Raw Normal View History

{ stdenv, fetchurl, pkgconfig, gettext, glib, atk, pango, cairo, perl, xlibs
, gdk_pixbuf, libintlOrEmpty, x11
, xineramaSupport ? stdenv.isLinux
, cupsSupport ? true, cups ? null
}:
assert xineramaSupport -> xlibs.libXinerama != null;
assert cupsSupport -> cups != null;
2012-09-26 15:39:32 -04:00
stdenv.mkDerivation rec {
2013-05-16 06:05:05 -04:00
name = "gtk+-2.24.18";
src = fetchurl {
2012-09-26 15:39:32 -04:00
url = "mirror://gnome/sources/gtk+/2.24/${name}.tar.xz";
2013-05-16 06:05:05 -04:00
sha256 = "1193frzg0qrwa885w77kd055zfpbdjwby88xn2skpx9g4w0k35kc";
};
enableParallelBuilding = true;
2012-09-26 15:39:32 -04:00
NIX_CFLAGS_COMPILE = "-I${cairo}/include/cairo"
+ stdenv.lib.optionalString (libintlOrEmpty != []) " -lintl";
buildInputs = stdenv.lib.optional stdenv.isDarwin xlibs.libXi;
nativeBuildInputs = [ perl pkgconfig gettext ];
2012-09-26 15:39:32 -04:00
propagatedBuildInputs = with xlibs; with stdenv.lib;
[ glib cairo pango gdk_pixbuf atk ]
++ optionals stdenv.isLinux
[ libXrandr libXrender libXcomposite libXi libXcursor ]
++ optional stdenv.isDarwin x11
++ libintlOrEmpty
++ optional xineramaSupport libXinerama
++ optionals cupsSupport [ cups ];
configureFlags = "--with-xinput=yes";
postInstall = "rm -rf $out/share/gtk-doc";
2012-09-26 15:39:32 -04:00
meta = with stdenv.lib; {
description = "A multi-platform toolkit for creating graphical user interfaces";
homepage = http://www.gtk.org/;
license = licenses.lgpl2Plus;
maintainers = with maintainers; [ lovek323 raskin ];
platforms = platforms.all;
longDescription = ''
GTK+ is a highly usable, feature rich toolkit for creating
graphical user interfaces which boasts cross platform
compatibility and an easy to use API. GTK+ it is written in C,
but has bindings to many other popular programming languages
such as C++, Python and C# among others. GTK+ is licensed
under the GNU LGPL 2.1 allowing development of both free and
proprietary software with GTK+ without any license fees or
royalties.
'';
};
}