diff options
author | Sergio Conde Gómez | 2015-06-08 12:25:13 +0200 |
---|---|---|
committer | Sergio Conde Gómez | 2015-06-08 12:25:13 +0200 |
commit | 8dfc546ba95da974106327ad841acd8b1daf23df (patch) | |
tree | c0f2d3521b45be6cb5d09a45dab14715e658ff61 | |
download | aur-8dfc546ba95da974106327ad841acd8b1daf23df.tar.gz |
Import 20150508-1
-rw-r--r-- | .SRCINFO | 31 | ||||
-rw-r--r-- | PKGBUILD | 62 | ||||
-rw-r--r-- | fix-pyqtconfig-missing-for-new-pyqt4.patch | 84 | ||||
-rw-r--r-- | gr-air-modes-git.install | 18 |
4 files changed, 195 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..39043557218f --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,31 @@ +pkgbase = gr-air-modes-git + pkgdesc = A software-defined radio receiver for Mode S transponder signals, including ADS-B reports from equipped aircraft. + pkgver = 20150508 + pkgrel = 1 + url = https://github.com/bistromath/gr-air-modes + install = gr-air-modes-git.install + arch = i686 + arch = x86_64 + license = BSD + makedepends = git + makedepends = cmake + makedepends = swig + depends = python2 + depends = python2-pyzmq + depends = gnuradio + depends = gnuradio-osmosdr + depends = libuhd + depends = sqlite + depends = boost + optdepends = python2-pyqt4: GUI application (needs rebuild, install before). + optdepends = python2-pyqwt: GUI application (needs rebuild, install before). + optdepends = python2-numpy: FlightGear interface support. + optdepends = python2-scipy: FlightGear interface support. + provides = gr-air-modes + source = git+https://github.com/bistromath/gr-air-modes.git + source = fix-pyqtconfig-missing-for-new-pyqt4.patch + sha256sums = SKIP + sha256sums = 346532b617e5557188a3493a5be2bd08ff29823eb11cc207336a0e32f9ac7344 + +pkgname = gr-air-modes-git + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..cf8bd091d289 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,62 @@ +# Maintainer: Sergio Conde <skgsergio@gmail.com> + +pkgname=gr-air-modes-git +pkgver=20150508 +pkgrel=1 +pkgdesc="A software-defined radio receiver for Mode S transponder signals, including ADS-B reports from equipped aircraft." +arch=('i686' 'x86_64') +url='https://github.com/bistromath/gr-air-modes' +license=('BSD') +depends=('python2' 'python2-pyzmq' 'gnuradio' 'gnuradio-osmosdr' 'libuhd' 'sqlite' 'boost') +makedepends=('git' 'cmake' 'swig') +optdepends=('python2-pyqt4: GUI application (needs rebuild, install before).' + 'python2-pyqwt: GUI application (needs rebuild, install before).' + 'python2-numpy: FlightGear interface support.' + 'python2-scipy: FlightGear interface support.') +provides=('gr-air-modes') +install="${pkgname}.install" +source=('git+https://github.com/bistromath/gr-air-modes.git' + 'fix-pyqtconfig-missing-for-new-pyqt4.patch') +sha256sums=('SKIP' + '346532b617e5557188a3493a5be2bd08ff29823eb11cc207336a0e32f9ac7344') + +_gitname="gr-air-modes" + +pkgver() { + cd "$srcdir/$_gitname" + git show -s --format="%cd" --date=short HEAD | tr -d '-' +} + +prepare() { + cd "$srcdir/$_gitname" + # Fix pyqt4 detection, this patch should be deleted when this pull request + # is accepted https://github.com/bistromath/gr-air-modes/pull/67 + patch -Np1 -i "../fix-pyqtconfig-missing-for-new-pyqt4.patch" +} + +build() { + cd "$srcdir/$_gitname" + mkdir -p build + cd build + + # Run cmake with python vars adjusted for using python2 + cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr \ + -DPYTHON_EXECUTABLE:FILEPATH=$(which python2) \ + -DPYTHON_INCLUDE_DIR:PATH=$(echo /usr/include/python2*) \ + -DPYTHON_LIBRARY:FILEPATH=$(echo /usr/lib/libpython2.*.so) \ + -DPYUIC4_EXECUTABLE:FILEPATH=/usr/bin/python2-pyuic4 \ + ../ + + # If make is run with more than one job it fails + make -j 1 +} + +package() { + cd "$srcdir/$_gitname/build/" + make DESTDIR="$pkgdir" install + + # Fix shebangs + _pyFiles=$(find "$pkgdir" -iname '*.py' -or -iname 'modes_rx' -or -iname 'modes_gui') + sed -i 's|#!/usr/bin/env python.*|#!/usr/bin/env python2|' $_pyFiles + sed -i 's|#!/usr/bin/python.*|#!/usr/bin/env python2|' $_pyFiles +} diff --git a/fix-pyqtconfig-missing-for-new-pyqt4.patch b/fix-pyqtconfig-missing-for-new-pyqt4.patch new file mode 100644 index 000000000000..868c544e86c0 --- /dev/null +++ b/fix-pyqtconfig-missing-for-new-pyqt4.patch @@ -0,0 +1,84 @@ +From e11f7e04b5fda1aa57d6b7a672375ff4b284abb2 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Sergio=20Conde=20G=C3=B3mez?= <skgsergio@gmail.com> +Date: Thu, 23 Apr 2015 12:43:46 +0200 +Subject: [PATCH] Fix cmake ImportError: No module named pyqtconfig + +--- + cmake/Modules/FindPyQt.py | 55 +++++++++++++++++++++++++++++++++++++++++++++-- + 1 file changed, 53 insertions(+), 2 deletions(-) + +diff --git a/cmake/Modules/FindPyQt.py b/cmake/Modules/FindPyQt.py +index 5d2f951..96bbbae 100644 +--- a/cmake/Modules/FindPyQt.py ++++ b/cmake/Modules/FindPyQt.py +@@ -1,11 +1,60 @@ ++# -*- coding: utf-8 -*- ++# ++# Copyright (c) 2007, Simon Edwards <simon@simonzone.com> ++# All rights reserved. ++# ++# Redistribution and use in source and binary forms, with or without ++# modification, are permitted provided that the following conditions are met: ++# * Redistributions of source code must retain the above copyright ++# notice, this list of conditions and the following disclaimer. ++# * Redistributions in binary form must reproduce the above copyright ++# notice, this list of conditions and the following disclaimer in the ++# documentation and/or other materials provided with the distribution. ++# * Neither the name of the Simon Edwards <simon@simonzone.com> nor the ++# names of its contributors may be used to endorse or promote products ++# derived from this software without specific prior written permission. ++# ++# THIS SOFTWARE IS PROVIDED BY Simon Edwards <simon@simonzone.com> ''AS IS'' AND ANY ++# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED ++# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE ++# DISCLAIMED. IN NO EVENT SHALL Simon Edwards <simon@simonzone.com> BE LIABLE FOR ANY ++# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES ++# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; ++# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ++# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ++# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS ++# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ++# ++# FindPyQt.py + # Copyright (c) 2007, Simon Edwards <simon@simonzone.com> + # Redistribution and use is allowed according to the terms of the BSD license. + # For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +-import PyQt4.pyqtconfig ++try: ++ import PyQt4.pyqtconfig ++ pyqtcfg = PyQt4.pyqtconfig.Configuration() ++except ImportError: ++ import PyQt4.QtCore ++ import sipconfig # won't work for SIP v5 ++ import os.path ++ cfg = sipconfig.Configuration() ++ sip_dir = cfg.default_sip_dir ++ for p in (os.path.join(sip_dir, "PyQt4"), sip_dir): ++ if os.path.exists(os.path.join(p, "QtCore", "QtCoremod.sip")): ++ sip_dir = p ++ break ++ cfg = { ++ 'pyqt_version': PyQt4.QtCore.PYQT_VERSION, ++ 'pyqt_version_str': PyQt4.QtCore.PYQT_VERSION_STR, ++ 'pyqt_sip_flags': PyQt4.QtCore.PYQT_CONFIGURATION['sip_flags'], ++ 'pyqt_mod_dir': cfg.default_mod_dir, ++ 'pyqt_sip_dir': sip_dir, ++ 'pyqt_bin_dir': cfg.default_bin_dir, ++ } ++ pyqtcfg = sipconfig.Configuration([cfg]) + +-pyqtcfg = PyQt4.pyqtconfig.Configuration() + print("pyqt_version:%06.0x" % pyqtcfg.pyqt_version) ++print("pyqt_version_num:%d" % pyqtcfg.pyqt_version) + print("pyqt_version_str:%s" % pyqtcfg.pyqt_version_str) + + pyqt_version_tag = "" +@@ -20,5 +69,7 @@ + in_t = False + print("pyqt_version_tag:%s" % pyqt_version_tag) + ++print("pyqt_mod_dir:%s" % pyqtcfg.pyqt_mod_dir) + print("pyqt_sip_dir:%s" % pyqtcfg.pyqt_sip_dir) + print("pyqt_sip_flags:%s" % pyqtcfg.pyqt_sip_flags) ++print("pyqt_bin_dir:%s" % pyqtcfg.pyqt_bin_dir) diff --git a/gr-air-modes-git.install b/gr-air-modes-git.install new file mode 100644 index 000000000000..d6c3aa9fb680 --- /dev/null +++ b/gr-air-modes-git.install @@ -0,0 +1,18 @@ +post_install() { + pacman -Q python2-pyqt4 > /dev/null 2>&1 + _pyqt4=$? + + pacman -Q python2-pyqwt > /dev/null 2>&1 + _pyqwt=$? + + if [ "$_pyqt4" != "0" ] || [ "$_pyqwt" != "0" ]; then + echo "" + echo "You've installed gr-air-modes-git without GUI support." + echo "If you want to install the GUI you will need to install" + echo "python2-pyqt4 and python2-pyqwt and reinstall this package." + echo "" + echo "To install those packages as dependencies you can do the following:" + echo "pacman -S --asdep python2-pyqt4 python2-pyqwt" + echo "" + fi +} |