summary refs log tree commit diff
path: root/pkgs/applications/science/robotics
diff options
context:
space:
mode:
authoradisbladis <adis@blad.is>2018-01-13 02:18:08 +0800
committeradisbladis <adis@blad.is>2018-01-13 04:03:38 +0800
commit5f232de6cda58185c4a0a4f3d4a73b9e9f2856be (patch)
tree0956b18ce52678ff77cf9612c850a64cf072a83f /pkgs/applications/science/robotics
parentcad14c782b15da7bb5b636a8bd70fee985905b40 (diff)
downloadnixlib-5f232de6cda58185c4a0a4f3d4a73b9e9f2856be.tar
nixlib-5f232de6cda58185c4a0a4f3d4a73b9e9f2856be.tar.gz
nixlib-5f232de6cda58185c4a0a4f3d4a73b9e9f2856be.tar.bz2
nixlib-5f232de6cda58185c4a0a4f3d4a73b9e9f2856be.tar.lz
nixlib-5f232de6cda58185c4a0a4f3d4a73b9e9f2856be.tar.xz
nixlib-5f232de6cda58185c4a0a4f3d4a73b9e9f2856be.tar.zst
nixlib-5f232de6cda58185c4a0a4f3d4a73b9e9f2856be.zip
qgroundcontrol: 2.9.4 -> 3.2.7, unbreak build
Diffstat (limited to 'pkgs/applications/science/robotics')
-rw-r--r--pkgs/applications/science/robotics/qgroundcontrol/default.nix56
1 files changed, 19 insertions, 37 deletions
diff --git a/pkgs/applications/science/robotics/qgroundcontrol/default.nix b/pkgs/applications/science/robotics/qgroundcontrol/default.nix
index 98ec39eb2064..087969fe61a0 100644
--- a/pkgs/applications/science/robotics/qgroundcontrol/default.nix
+++ b/pkgs/applications/science/robotics/qgroundcontrol/default.nix
@@ -1,13 +1,13 @@
-{ stdenv, fetchgit, git,  espeak, SDL, udev, doxygen, cmake
+{ stdenv, fetchgit, git,  espeak, SDL2, udev, doxygen, cmake
 , qtbase, qtlocation, qtserialport, qtdeclarative, qtconnectivity, qtxmlpatterns
 , qtsvg, qtquick1, qtquickcontrols, qtgraphicaleffects, qmake
 , makeWrapper, lndir
 , gst_all_1, qt-gstreamer1, pkgconfig, glibc
-, version ? "2.9.4"
 }:
 
 stdenv.mkDerivation rec {
   name = "qgroundcontrol-${version}";
+  version = "3.2.7";
 
   qtInputs = [
     qtbase qtlocation qtserialport qtdeclarative qtconnectivity qtxmlpatterns qtsvg
@@ -19,72 +19,54 @@ stdenv.mkDerivation rec {
   ];
 
   enableParallelBuilding = true;
-  buildInputs = [ SDL udev doxygen git ] ++ gstInputs ++ qtInputs;
+  buildInputs = [ SDL2 udev doxygen git ] ++ gstInputs ++ qtInputs;
   nativeBuildInputs = [ pkgconfig makeWrapper qmake ];
 
-  patches = [ ./0001-fix-gcc-cmath-namespace-issues.patch ];
-  postPatch = ''
-    sed '1i#include <cmath>' -i src/Vehicle/Vehicle.cc \
-      -i src/comm/{QGCFlightGearLink,QGCJSBSimLink}.cc \
-      -i src/{uas/UAS,ui/QGCDataPlot2D}.cc
-  '';
-
   preConfigure = ''
     mkdir build
     cd build
   '';
 
-  qmakeFlags = [ "../qgroundcontrol.pro" ];
+  qmakeFlags = [
+    # Default install tries to copy Qt files into package
+    "CONFIG+=QGC_DISABLE_BUILD_SETUP"
+    "../qgroundcontrol.pro"
+  ];
 
   installPhase = ''
     cd ..
+
     mkdir -p $out/share/applications
-    cp -v qgroundcontrol.desktop $out/share/applications
-    
+    cp -v deploy/qgroundcontrol.desktop $out/share/applications
+
     mkdir -p $out/bin
-    cp -v build/release/qgroundcontrol "$out/bin/"
-    
+    cp -v build/release/QGroundControl "$out/bin/"
+
     mkdir -p $out/share/qgroundcontrol
     cp -rv resources/ $out/share/qgroundcontrol
-    
+
     mkdir -p $out/share/pixmaps
     cp -v resources/icons/qgroundcontrol.png $out/share/pixmaps
-
-    # we need to link to our Qt deps in our own output if we want
-    # this package to work without being installed as a system pkg
-    mkdir -p $out/lib/qt-$qtCompatVersion $out/etc/xdg
-    for pkg in $qtInputs; do
-      if [[ -d $pkg/lib/qt-$qtCompatVersion ]]; then
-        for dir in lib/qt-$qtCompatVersion share etc/xdg; do
-          if [[ -d $pkg/$dir ]]; then
-            ${lndir}/bin/lndir "$pkg/$dir" "$out/$dir"
-          fi
-        done
-      fi
-    done
   '';
 
-
   postInstall = ''
     wrapProgram "$out/bin/qgroundcontrol" \
       --prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH"
   '';
-  
 
   # TODO: package mavlink so we can build from a normal source tarball
   src = fetchgit {
     url = "https://github.com/mavlink/qgroundcontrol.git";
     rev = "refs/tags/v${version}";
-    sha256 = "0isr0zamhvr853c94lblazkilil6zzmvf7afs3mxgn07jn9wrqz3";
+    sha256 = "1sla3sgj2p3h87d7kcaj53f8z5xzyadvsqlqzgh4d2n1f7sikdc5";
     fetchSubmodules = true;
   };
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Provides full ground station support and configuration for the PX4 and APM Flight Stacks";
     homepage = http://qgroundcontrol.org/;
-    license = stdenv.lib.licenses.gpl3Plus;
-    platforms = with stdenv.lib.platforms; linux;
-    maintainers = with stdenv.lib.maintainers; [ pxc ];
-    broken = true; # relies improperly on private Qt 5.5 headers
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ pxc ];
   };
 }