summary refs log tree commit diff
path: root/pkgs/applications
diff options
context:
space:
mode:
authorLluís Batlle i Rossell <viric@vicerveza.homeunix.net>2009-12-10 22:19:52 +0000
committerLluís Batlle i Rossell <viric@vicerveza.homeunix.net>2009-12-10 22:19:52 +0000
commitf3c23487a2c8a09b7f77bf32e2c1ef7a7276414b (patch)
treebff622ad47b954ba713fc7691e18eaf0eb22741e /pkgs/applications
parent164eb9c699f2dd07d19063127f0a39a0ae208776 (diff)
downloadnixpkgs-f3c23487a2c8a09b7f77bf32e2c1ef7a7276414b.tar
nixpkgs-f3c23487a2c8a09b7f77bf32e2c1ef7a7276414b.tar.gz
nixpkgs-f3c23487a2c8a09b7f77bf32e2c1ef7a7276414b.tar.bz2
nixpkgs-f3c23487a2c8a09b7f77bf32e2c1ef7a7276414b.tar.lz
nixpkgs-f3c23487a2c8a09b7f77bf32e2c1ef7a7276414b.tar.xz
nixpkgs-f3c23487a2c8a09b7f77bf32e2c1ef7a7276414b.tar.zst
nixpkgs-f3c23487a2c8a09b7f77bf32e2c1ef7a7276414b.zip
Adding a new version of the gcc-wrapper, named gcc-wrapper2, in order not to rebuild
stdenv.

In this gcc-wrapper2 I made the ld-wrapper.sh to handle the linking with shared
objects through direct pass as ld command arguments of the absolute path to shared
objects, instead of using the -L/-l combinations.

cmake 'FindXXX.cmake' modules make a strong usage of the dynamic linking directly
passing the absolute path to the shared object to the linker, and as our wrapper did
not add any -rpath for those, writting the nix expressions for some cmake packages
resulted in a lot of tricks, compared to using this gcc-wrapper2.

This gcc-wrapper2/ld-wrapper.sh should become the gcc-wrapper/ld-wrapper in a
stdenv update.

I also updated some cmake expressions to use this gcc-wrapper2, and reduced its
tricks.

I also updated the cmake setup-hook for it to make cmake not touch any rpath decided
at build time, when running the 'make install' of makefiles created by cmake.

svn path=/nixpkgs/trunk/; revision=18885
Diffstat (limited to 'pkgs/applications')
-rw-r--r--pkgs/applications/graphics/autopanosiftc/default.nix21
-rw-r--r--pkgs/applications/graphics/freepv/default.nix20
-rw-r--r--pkgs/applications/graphics/hugin/default.nix26
-rw-r--r--pkgs/applications/graphics/paraview/default.nix32
-rw-r--r--pkgs/applications/graphics/paraview/include-qobject.patch38
-rw-r--r--pkgs/applications/video/avidemux/default.nix6
6 files changed, 11 insertions, 132 deletions
diff --git a/pkgs/applications/graphics/autopanosiftc/default.nix b/pkgs/applications/graphics/autopanosiftc/default.nix
index 424d8dcaf97..a27d982ce8b 100644
--- a/pkgs/applications/graphics/autopanosiftc/default.nix
+++ b/pkgs/applications/graphics/autopanosiftc/default.nix
@@ -10,27 +10,6 @@ stdenv.mkDerivation {
 
   buildInputs = [ cmake libpng libtiff libjpeg panotools libxml2 ];
 
-  # I added these flags to get all the rpaths right, which I guess they are
-  # taken from the qt4 sources. Not very nice.
-  cmakeFlags = "-DCMAKE_SHARED_LINKER_FLAGS=\"-Wl,-rpath,$out/lib\"" +
-    " -DCMAKE_EXE_LINKER_FLAGS=\"-Wl,-rpath,$out/lib" +
-    " -lpng12 -lpano13 -ljpeg -ltiff -lz -lxml2 \"" +
-    " -DCMAKE_SKIP_BUILD_RPATH=ON" +
-    " -DCMAKE_BUILD_TYPE=Release" +
-    " -DCMAKE_INSTALL_PREFIX=$out";
-
-  dontUseCmakeConfigure = true;
-
-  # I rewrote the configure phase to get the $out references evaluated in
-  # cmakeFlags
-  configurePhase = ''
-    set -x
-    mkdir -p build;
-    cd build
-    eval -- "cmake .. $cmakeFlags"
-    set +x
-    '';
-
   meta = {
     homepage = http://hugin.sourceforge.net/;
     description = "Implementation in C of the autopano-sift algorithm for automatically stitching panoramas";
diff --git a/pkgs/applications/graphics/freepv/default.nix b/pkgs/applications/graphics/freepv/default.nix
index 1e414faf2f0..e042b15855c 100644
--- a/pkgs/applications/graphics/freepv/default.nix
+++ b/pkgs/applications/graphics/freepv/default.nix
@@ -17,26 +17,6 @@ stdenv.mkDerivation {
     sed -i -e '/mozilla/d' src/CMakeLists.txt
   '';
 
-  # I added these flags to get all the rpaths right, which I guess they are
-  # taken from the qt4 sources. Not very nice.
-  cmakeFlags = " -DCMAKE_EXE_LINKER_FLAGS=\"" +
-    " -lpng12 -lXxf86vm -ljpeg -lz -lglut -lGLU -lxml2 -lX11\"" +
-    " -DCMAKE_SKIP_BUILD_RPATH=ON" +
-    " -DCMAKE_BUILD_TYPE=Release" +
-    " -DCMAKE_INSTALL_PREFIX=$out";
-
-  dontUseCmakeConfigure = true;
-
-  # I rewrote the configure phase to get the $out references evaluated in
-  # cmakeFlags
-  configurePhase = ''
-    set -x
-    mkdir -p build;
-    cd build
-    eval -- "cmake .. $cmakeFlags"
-    set +x
-    '';
-
   meta = {
     description = "Open source panorama viewer using GL";
     homepage = http://freepv.sourceforge.net/;
diff --git a/pkgs/applications/graphics/hugin/default.nix b/pkgs/applications/graphics/hugin/default.nix
index 134c6ae49d4..9097a5d25a5 100644
--- a/pkgs/applications/graphics/hugin/default.nix
+++ b/pkgs/applications/graphics/hugin/default.nix
@@ -15,29 +15,9 @@ stdenv.mkDerivation {
 
   NIX_LDFLAGS = "-lrt";
 
-  # I added these flags to get all the rpaths right, which I guess they are
-  # taken from the qt4 sources. Not very nice.
-  cmakeFlags = "-DCMAKE_SHARED_LINKER_FLAGS=\"-Wl,-rpath,$out/lib\"" +
-    " -DCMAKE_EXE_LINKER_FLAGS=\"-Wl,-rpath,$out/lib" +
-    " -lpng12 -lpano13 -lImath -lIlmImf -lIex -lHalf -lIlmThread" +
-    " -ljpeg -ltiff -lz -lexiv2 -lboost_thread\"" +
-    " -DCMAKE_SKIP_BUILD_RPATH=ON" +
-    " -DCMAKE_BUILD_TYPE=Release" +
-    " -DCMAKE_INSTALL_PREFIX=$out";
-
-  buildInputs = [ cmake panotools wxGTK libtiff libpng openexr boost pkgconfig exiv2 gettext ilmbase ];
-
-  dontUseCmakeConfigure = true;
-
-  # I rewrote the configure phase to get the $out references evaluated in
-  # cmakeFlags
-  configurePhase = ''
-    set -x
-    mkdir -p build;
-    cd build
-    eval -- "cmake .. $cmakeFlags"
-    set +x
-    '';
+  buildInputs = [ cmake panotools wxGTK libtiff libpng openexr boost pkgconfig
+    exiv2 gettext ilmbase ];
+
   postInstall = ''
     ensureDir "$out/nix-support"
     echo "${enblendenfuse} ${autopanosiftc}" > $out/nix-support/propagated-user-env-packages
diff --git a/pkgs/applications/graphics/paraview/default.nix b/pkgs/applications/graphics/paraview/default.nix
index 452b889566e..6b74a58ef9f 100644
--- a/pkgs/applications/graphics/paraview/default.nix
+++ b/pkgs/applications/graphics/paraview/default.nix
@@ -1,35 +1,15 @@
 { fetchurl, stdenv, cmake, qt4 }:
 
 stdenv.mkDerivation {
-  name = "paraview-3.4.0";
+  name = "paraview-3.6.1";
   src = fetchurl {
-    url = http://www.paraview.org/files/v3.4/paraview-3.4.0.tar.gz;
-    sha256 = "27544f442e957e9aa60b32c674f2dcd84fffeecc9a40071ef6e305333413187d";
+    url = http://www.paraview.org/files/v3.6/paraview-3.6.1.tar.gz;
+    sha256 = "1dh0dqbdvjagy122nbwr1gg03ck2if2aqqbvzcpkx38sz12cjh7h";
   };
 
-  patches = [ ./include-qobject.patch ];
-
-  # I added these flags to get all the rpaths right, which I guess they are
-  # taken from the qt4 sources. Not very nice.
-  cmakeFlags = "-DCMAKE_SHARED_LINKER_FLAGS=\"-Wl,-rpath,$out/lib/paraview-3.4\"" +
-    " -DCMAKE_EXE_LINKER_FLAGS=\"-Wl,-rpath,$out/lib/paraview-3.4" +
-    " -lpng12 -lSM -lICE -lXrender -lXrandr -lXcursor -lXinerama" +
-    " -lXfixes -lfreetype -lfontconfig -lXext -lX11 -lssl -lXt -lz\"" +
-    " -DCMAKE_SKIP_BUILD_RPATH=ON" +
-    " -DCMAKE_BUILD_TYPE=Release" +
-    " -DCMAKE_INSTALL_PREFIX=$out";
-
-  dontUseCmakeConfigure = true;
-
-  # I rewrote the configure phase to get the $out references evaluated in
-  # cmakeFlags
-  configurePhase = ''
-    set -x
-    mkdir -p build;
-    cd build
-    eval -- "cmake .. $cmakeFlags"
-    set +x
-    '';
+  preConfigure = ''
+    export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/paraview-3.6"
+  '';
 
   buildInputs = [ cmake qt4 ];
 
diff --git a/pkgs/applications/graphics/paraview/include-qobject.patch b/pkgs/applications/graphics/paraview/include-qobject.patch
deleted file mode 100644
index bdb95c752e4..00000000000
--- a/pkgs/applications/graphics/paraview/include-qobject.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-diff --git a/VTK/GUISupport/Qt/CMakeLists.txt b/VTK/GUISupport/Qt/CMakeLists.txt
-index 2c35be7..866f1aa 100644
---- a/VTK/GUISupport/Qt/CMakeLists.txt
-+++ b/VTK/GUISupport/Qt/CMakeLists.txt
-@@ -166,6 +166,7 @@ IF(DESIRED_QT_VERSION MATCHES 4)
-      )
-   ENDIF(QT_QTGUI_LIBRARY)
-   INCLUDE_DIRECTORIES(${QT_QTDESIGNER_INCLUDE_DIR})
-+  INCLUDE_DIRECTORIES(${QT_QTCORE_INCLUDE_DIR})
-   QT4_WRAP_CPP ( PluginMocSrcs ${PluginMocHeaders} )
- ELSE(DESIRED_QT_VERSION MATCHES 4)
-   QT_WRAP_CPP ( QVTKWidgetPlugin PluginMocSrcs ${PluginMocHeaders} )
-diff --git a/VTK/GUISupport/Qt/vtkEventQtSlotConnect.h b/VTK/GUISupport/Qt/vtkEventQtSlotConnect.h
-index 6782b90..ced3a67 100644
---- a/VTK/GUISupport/Qt/vtkEventQtSlotConnect.h
-+++ b/VTK/GUISupport/Qt/vtkEventQtSlotConnect.h
-@@ -43,7 +43,7 @@
- #include "vtkObject.h"
- #include "vtkCommand.h"  // for event defines
- #include "QVTKWin32Header.h"  // for export define
--#include "qobject.h"          // for version info
-+#include <qobject.h>          // for version info
- 
- class QObject;
- class vtkQtConnections;
-diff --git a/VTK/GUISupport/Qt/vtkQtConnection.h b/VTK/GUISupport/Qt/vtkQtConnection.h
-index 923ec2e..b189ddc 100644
---- a/VTK/GUISupport/Qt/vtkQtConnection.h
-+++ b/VTK/GUISupport/Qt/vtkQtConnection.h
-@@ -33,7 +33,7 @@
- 
- #include "vtkObject.h"
- #include "vtkCommand.h"  // for event defines
--#include "qobject.h"
-+#include <qobject.h>
- 
- class QObject;
- class vtkCallbackCommand;
diff --git a/pkgs/applications/video/avidemux/default.nix b/pkgs/applications/video/avidemux/default.nix
index c3e39aca888..8ff345d5ea9 100644
--- a/pkgs/applications/video/avidemux/default.nix
+++ b/pkgs/applications/video/avidemux/default.nix
@@ -18,11 +18,9 @@ stdenv.mkDerivation {
 
   cmakeFlags = "-DPTHREAD_INCLUDE_DIR=${stdenv.glibc}/include" +
     " -DGETTEXT_INCLUDE_DIR=${gettext}/include" +
-    " -DSDL_INCLUDE_DIR=${SDL}/include/SDL" +
-    " -DCMAKE_SKIP_BUILD_RPATH=ON" +
-    " -DCMAKE_BUILD_TYPE=Release";
+    " -DSDL_INCLUDE_DIR=${SDL}/include/SDL";
 
-  NIX_LDFLAGS="-lxml2 -lXv -lSDL -lQtGui -lQtCore -lpthread";
+  NIX_LDFLAGS="-lpthread";
 
   postInstall = ''
     cd $NIX_BUILD_TOP/$sourceRoot