From 64754519d9b0c7a15ef61e408d86b9240078f960 Mon Sep 17 00:00:00 2001 From: Charles Strahan Date: Fri, 25 Apr 2014 18:09:13 -0400 Subject: [PATCH] libmx: Add package --- pkgs/development/libraries/libmx/default.nix | 60 ++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 62 insertions(+) create mode 100644 pkgs/development/libraries/libmx/default.nix diff --git a/pkgs/development/libraries/libmx/default.nix b/pkgs/development/libraries/libmx/default.nix new file mode 100644 index 000000000000..ab2a2d2afddd --- /dev/null +++ b/pkgs/development/libraries/libmx/default.nix @@ -0,0 +1,60 @@ +{ stdenv, fetchurl +, libtool, pkgconfig, automake, autoconf, intltool +, glib, gobjectIntrospection, gtk2, gtk_doc +, clutter, clutter_gtk +}: + +stdenv.mkDerivation rec { + name = "libmx-${version}"; + version = "1.4.7"; + + src = fetchurl { + url = "https://github.com/clutter-project/mx/archive/${version}.tar.gz"; + sha256 = "8a7514ea33c1dec7251d0141e24a702e7701dc9f00348cbcf1816925b7f74dbc"; + }; + + # remove the following superfluous checks + preConfigure = '' + substituteInPlace "autogen.sh" \ + --replace '`which intltoolize`' '"x"' \ + --replace '`which gtkdocize`' '"x"' \ + --replace '`which autoreconf`' '"x"' + ''; + + configureFlags = [ "--enable-introspection" + "--without-startup-notification" + "--without-dbus" + "--without-glade" + "--without-clutter-imcontext" + "--without-clutter-gesture" + ]; + + configureScript = "sh autogen.sh"; + + buildInputs = [ + pkgconfig automake autoconf libtool + intltool + gobjectIntrospection glib + gtk2 gtk_doc clutter clutter_gtk + ]; + + # patch to resolve GL errors + # source : https://github.com/clutter-project/mx/pull/62 + preBuild = '' + sed -i 's/GLushort/gushort/g' mx/mx-deform-texture.c + sed -i 's/GLfloat/gfloat/g' mx/mx-texture-frame.c + ''; + + meta = with stdenv.lib; { + homepage = http://www.clutter-project.org/; + description = "A Clutter-based toolkit"; + longDescription = + ''Mx is a widget toolkit using Clutter that provides a set of standard + interface elements, including buttons, progress bars, scroll bars and + others. It also implements some standard managers. One other interesting + feature is the possibility setting style properties from a CSS format + file.''; + license = licenses.lgpl21; + maintainers = with maintainers; [ cstrahan ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4761d787fa56..f4229d6d9e98 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5150,6 +5150,8 @@ let libmusicbrainz = libmusicbrainz3; + libmx = callPackage ../development/libraries/libmx { }; + libnet = callPackage ../development/libraries/libnet { }; libnetfilter_conntrack = callPackage ../development/libraries/libnetfilter_conntrack { };