summary refs log tree commit diff
path: root/pkgs/desktops
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2009-11-03 23:26:14 +0000
committerEelco Dolstra <eelco.dolstra@logicblox.com>2009-11-03 23:26:14 +0000
commit56ea7df62dd8b0d2fd7160d100c930c84e9ba28b (patch)
tree1231b504b32b06b7e6fd00807e158dc76a128dcd /pkgs/desktops
parent8fd610bff97c93953b45fc3f927705c374e5fb7a (diff)
* Several buildInputs of Gnome-related packages should be
  propagatedBuildInputs, because those inputs are required by the *.pc
  or *.la files of the package:

  - If a *.pc file references a non-propagated input, then Gnome
    packages have the bad tendency to silently ignore this problem in
    configure scripts - the failure of a command like `pkg-config
    --cflags foo' will be ignored if a dependency of foo.pc is
    missing, so no flags will be added, and the build will fail later
    on a missing header or library.

  - If a *.la file references a non-propagated input, the build will
    also fail, because Libtool will add library dependencies that it
    cannot find.  (Arguably *.la files should never reference packages
    that aren't in the corresponding *.pc file, but they do it
    anyway).

  By setting the propagatedBuildInputs properly, it should be possible
  to get rid of all the NIX_CFLAGS_COMPILE / NIX_LDFLAGS hacks in the
  Gnome expressions.

svn path=/nixpkgs/branches/xorg-7.5/; revision=18084
Diffstat (limited to 'pkgs/desktops')
-rw-r--r--pkgs/desktops/gnome-2.28/default.nix8
-rw-r--r--pkgs/desktops/gnome-2.28/platform/GConf/default.nix14
-rw-r--r--pkgs/desktops/gnome-2.28/platform/ORBit2/default.nix5
-rw-r--r--pkgs/desktops/gnome-2.28/platform/esound/default.nix5
-rw-r--r--pkgs/desktops/gnome-2.28/platform/gnome-vfs/default.nix10
-rw-r--r--pkgs/desktops/gnome-2.28/platform/libgnome/default.nix11
6 files changed, 31 insertions, 22 deletions
diff --git a/pkgs/desktops/gnome-2.28/default.nix b/pkgs/desktops/gnome-2.28/default.nix
index 082b72a048d48..5a5cc9dbecf35 100644
--- a/pkgs/desktops/gnome-2.28/default.nix
+++ b/pkgs/desktops/gnome-2.28/default.nix
@@ -44,8 +44,8 @@ rec {
   };
   
   GConf = import ./platform/GConf {
-    inherit (pkgs) stdenv fetchurl pkgconfig dbus_glib libxml2 expat policykit;
-    inherit (pkgs.gtkLibs) glib gtk;
+    inherit (pkgs) stdenv fetchurl pkgconfig dbus_glib libxml2 policykit;
+    inherit (pkgs.gtkLibs) glib;
     inherit intltool ORBit2;
     dbus_libs = pkgs.dbus.libs;
   };
@@ -80,9 +80,9 @@ rec {
   };
   
   libgnome = import ./platform/libgnome {
-    inherit (pkgs) stdenv fetchurl pkgconfig popt;
+    inherit (pkgs) stdenv fetchurl pkgconfig popt zlib;
     inherit (pkgs.gtkLibs) glib;
-    inherit intltool esound audiofile libbonobo GConf gnome_vfs ORBit2;
+    inherit intltool esound libbonobo GConf gnome_vfs ORBit2;
   };
   
   libgnomeui = import ./platform/libgnomeui {
diff --git a/pkgs/desktops/gnome-2.28/platform/GConf/default.nix b/pkgs/desktops/gnome-2.28/platform/GConf/default.nix
index 661a20e2b6591..1b3af898f6eb4 100644
--- a/pkgs/desktops/gnome-2.28/platform/GConf/default.nix
+++ b/pkgs/desktops/gnome-2.28/platform/GConf/default.nix
@@ -1,18 +1,14 @@
-{ stdenv, fetchurl, pkgconfig, dbus_glib, glib, gtk, ORBit2, libxml2
-, expat, policykit, intltool, dbus_libs}:
+{ stdenv, fetchurl, pkgconfig, dbus_glib, glib, ORBit2, libxml2
+, policykit, intltool, dbus_libs }:
 
 stdenv.mkDerivation {
   name = "GConf-2.26.2";
+  
   src = fetchurl {
     url = mirror://gnome/platform/2.26/2.26.2/sources/GConf-2.26.2.tar.bz2;
     sha256 = "1vb7hjxddy54g4vch936621g66n0mhi3wkhm9lwqh449vdqg4yki";
   };
 
-  preConfigure = ''
-    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${dbus_glib}/include/dbus-1.0 -I${policykit}/include/PolicyKit -I${glib}/include/glib-2.0 -I${glib}/lib/glib-2.0/include -I${dbus_libs}/include/dbus-1.0 -I${dbus_libs}/lib/dbus-1.0/include"
-    export NIX_LDFLAGS="$NIX_LDFLAGS $(glib-config --libs)"
-  '';
-
-  buildInputs = [ pkgconfig glib gtk dbus_glib ORBit2 libxml2
-                  expat policykit intltool dbus_libs];
+  buildInputs = [ pkgconfig ORBit2 dbus_libs dbus_glib libxml2 policykit intltool ];
+  propagatedBuildInputs = [ glib ];
 }
diff --git a/pkgs/desktops/gnome-2.28/platform/ORBit2/default.nix b/pkgs/desktops/gnome-2.28/platform/ORBit2/default.nix
index 42db2b450713f..0d536e830b1f8 100644
--- a/pkgs/desktops/gnome-2.28/platform/ORBit2/default.nix
+++ b/pkgs/desktops/gnome-2.28/platform/ORBit2/default.nix
@@ -2,9 +2,12 @@
 
 stdenv.mkDerivation {
   name = "ORBit2-2.14.17";
+  
   src = fetchurl {
     url = mirror://gnome/sources/ORBit2/2.14/ORBit2-2.14.17.tar.bz2;
     sha256 = "0k4px2f949ac7vmj7b155g1rpf7pmvl48sbnkjhlg4wgcwzwxgv2";
   };
-  buildInputs = [ pkgconfig glib libIDL ];
+  
+  buildInputs = [ pkgconfig ];
+  propagatedBuildInputs = [ glib libIDL ];
 }
diff --git a/pkgs/desktops/gnome-2.28/platform/esound/default.nix b/pkgs/desktops/gnome-2.28/platform/esound/default.nix
index 45dd6655a4545..e273251bfa587 100644
--- a/pkgs/desktops/gnome-2.28/platform/esound/default.nix
+++ b/pkgs/desktops/gnome-2.28/platform/esound/default.nix
@@ -2,9 +2,12 @@
 
 stdenv.mkDerivation {
   name = "esound-0.2.41";
+  
   src = fetchurl {
     url = mirror://gnome/sources/esound/0.2/esound-0.2.41.tar.bz2;
     sha256 = "04a9ldy7hsvry1xmfhzg5is2dabsp8m6a82vkai64d2blqlxvday";
   };
-  buildInputs = [ pkgconfig alsaLib audiofile ];
+  
+  buildInputs = [ pkgconfig ];
+  propagatedBuildInputs = [ alsaLib audiofile ];
 }
diff --git a/pkgs/desktops/gnome-2.28/platform/gnome-vfs/default.nix b/pkgs/desktops/gnome-2.28/platform/gnome-vfs/default.nix
index 2a7044c5a2071..4772e2ded9e75 100644
--- a/pkgs/desktops/gnome-2.28/platform/gnome-vfs/default.nix
+++ b/pkgs/desktops/gnome-2.28/platform/gnome-vfs/default.nix
@@ -3,10 +3,16 @@
 
 stdenv.mkDerivation {
   name = "gnome-vfs-2.24.1";
+  
   src = fetchurl {
     url = mirror://gnome/sources/gnome-vfs/2.24/gnome-vfs-2.24.1.tar.bz2;
     sha256 = "1dmyr8nj77717r8dhwkixpar2yp8ld3r683gp222n59v61718ndw";
   };
-  buildInputs = [ pkgconfig libxml2 bzip2 openssl samba dbus_glib glib fam hal cdparanoia
-                  intltool GConf gnome_mime_data ];
+  
+  buildInputs =
+    [ pkgconfig libxml2 bzip2 openssl samba dbus_glib fam hal cdparanoia
+      intltool gnome_mime_data
+    ];
+
+  propagatedBuildInputs = [ GConf glib ];
 }
diff --git a/pkgs/desktops/gnome-2.28/platform/libgnome/default.nix b/pkgs/desktops/gnome-2.28/platform/libgnome/default.nix
index ba403cf5adb98..a5a7c47c949fe 100644
--- a/pkgs/desktops/gnome-2.28/platform/libgnome/default.nix
+++ b/pkgs/desktops/gnome-2.28/platform/libgnome/default.nix
@@ -1,13 +1,14 @@
-{ stdenv, fetchurl, pkgconfig, glib, popt
-, intltool, esound, audiofile, libbonobo, GConf, gnome_vfs, ORBit2}:
+{ stdenv, fetchurl, pkgconfig, glib, popt, zlib
+, intltool, esound, libbonobo, GConf, gnome_vfs, ORBit2}:
 
 stdenv.mkDerivation {
   name = "libgnome-2.28.0";
+  
   src = fetchurl {
     url = mirror://gnome/sources/libgnome/2.28/libgnome-2.28.0.tar.bz2;
     sha256 = "03hc1m88swxxw4cq491kz7495ksv762imamzbbvhci41bc40anwv";
   };
-  buildInputs = [ pkgconfig glib popt intltool esound audiofile libbonobo GConf gnome_vfs ];
-  CPPFLAGS = "-I${glib}/include/glib-2.0 -I${glib}/lib/glib-2.0/include -I${ORBit2}/include/orbit-2.0 -I${libbonobo}/include/libbonobo-2.0 -I${libbonobo}/include/bonobo-activation-2.0 -I${GConf}/include/gconf/2 -I${gnome_vfs}/include/gnome-vfs-2.0";
-  LIBS = "-lesd -lgconf-2 -lbonobo-activation -lbonobo-2 -lgnomevfs-2";
+  
+  buildInputs = [ pkgconfig popt zlib intltool esound GConf gnome_vfs ];
+  propagatedBuildInputs = [ glib libbonobo ];
 }