nixpkgs/pkgs/development/libraries/cogl/default.nix

64 lines
2.1 KiB
Nix
Raw Normal View History

{ stdenv, fetchurl, pkgconfig, libGL, glib, gdk_pixbuf, xorg, libintlOrEmpty
2018-03-03 06:13:28 +00:00
, pangoSupport ? true, pango, cairo, gobjectIntrospection, wayland, gnome3
2014-02-19 22:20:33 +00:00
, gstreamerSupport ? true, gst_all_1 }:
2013-12-05 21:50:41 +00:00
let
2018-03-03 06:13:28 +00:00
pname = "cogl";
version = "1.22.2";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
2018-03-03 06:13:28 +00:00
url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "03f0ha3qk7ca0nnkkcr1garrm1n1vvfqhkz9lwjm592fnv6ii9rr";
};
nativeBuildInputs = [ pkgconfig ];
2013-12-23 18:25:29 +00:00
configureFlags = [
"--enable-introspection"
"--enable-kms-egl-platform"
"--enable-wayland-egl-platform"
"--enable-wayland-egl-server"
] ++ stdenv.lib.optional gstreamerSupport "--enable-cogl-gst"
++ stdenv.lib.optionals (!stdenv.isDarwin) [ "--enable-gles1" "--enable-gles2" ];
2013-12-23 18:25:29 +00:00
propagatedBuildInputs = with xorg; [
glib gdk_pixbuf gobjectIntrospection wayland
libGL libXrandr libXfixes libXcomposite libXdamage
2013-12-23 18:25:29 +00:00
]
2014-02-19 22:20:33 +00:00
++ libintlOrEmpty
++ stdenv.lib.optionals gstreamerSupport [ gst_all_1.gstreamer
gst_all_1.gst-plugins-base ];
buildInputs = stdenv.lib.optionals pangoSupport [ pango cairo ];
2013-09-06 14:54:46 +01:00
COGL_PANGO_DEP_CFLAGS
= stdenv.lib.optionalString (stdenv.isDarwin && pangoSupport)
"-I${pango.dev}/include/pango-1.0 -I${cairo.dev}/include/cairo";
2013-09-06 14:54:46 +01:00
NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isDarwin "-lintl";
2013-12-05 21:50:41 +00:00
#doCheck = true; # all tests fail (no idea why)
2018-03-03 06:13:28 +00:00
passthru = {
updateScript = gnome3.updateScript {
packageName = pname;
};
};
2013-09-06 14:54:46 +01:00
meta = with stdenv.lib; {
description = "A small open source library for using 3D graphics hardware for rendering";
2013-09-06 14:54:46 +01:00
maintainers = with maintainers; [ lovek323 ];
longDescription = ''
Cogl is a small open source library for using 3D graphics hardware for
rendering. The API departs from the flat state machine style of OpenGL
and is designed to make it easy to write orthogonal components that can
render without stepping on each other's toes.
'';
2013-10-07 16:36:47 +01:00
platforms = stdenv.lib.platforms.mesaPlatforms;
};
}