1 |
commit: 7a980171372cebfda8166decb7052739156e869e |
2 |
Author: Robin H. Johnson <robbat2 <AT> gentoo <DOT> org> |
3 |
AuthorDate: Fri Oct 4 18:49:18 2019 +0000 |
4 |
Commit: Robin H. Johnson <robbat2 <AT> gentoo <DOT> org> |
5 |
CommitDate: Fri Oct 4 18:59:32 2019 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7a980171 |
7 |
|
8 |
sci-geosciences/gpsd: sync 9999 ebuild |
9 |
|
10 |
Package-Manager: Portage-2.3.76, Repoman-2.3.17 |
11 |
Signed-off-by: Robin H. Johnson <robbat2 <AT> gentoo.org> |
12 |
|
13 |
sci-geosciences/gpsd/gpsd-9999.ebuild | 57 ++++++++++++++++++++++------------- |
14 |
1 file changed, 36 insertions(+), 21 deletions(-) |
15 |
|
16 |
diff --git a/sci-geosciences/gpsd/gpsd-9999.ebuild b/sci-geosciences/gpsd/gpsd-9999.ebuild |
17 |
index 3fcb84a3d95..6cba45913e0 100644 |
18 |
--- a/sci-geosciences/gpsd/gpsd-9999.ebuild |
19 |
+++ b/sci-geosciences/gpsd/gpsd-9999.ebuild |
20 |
@@ -4,37 +4,41 @@ |
21 |
EAPI=5 |
22 |
|
23 |
DISTUTILS_OPTIONAL=1 |
24 |
-PYTHON_COMPAT=( python2_7 ) |
25 |
-SCONS_MIN_VERSION="1.2.1" |
26 |
+PYTHON_COMPAT=( python2_7 python3_5 python3_6 ) |
27 |
+SCONS_MIN_VERSION="2.3.0" |
28 |
|
29 |
inherit eutils udev user multilib distutils-r1 scons-utils toolchain-funcs |
30 |
|
31 |
if [[ ${PV} == "9999" ]] ; then |
32 |
- EGIT_REPO_URI="git://git.savannah.nongnu.org/gpsd.git" |
33 |
- inherit git-2 |
34 |
+ EGIT_REPO_URI="https://gitlab.com/gpsd/gpsd.git" |
35 |
+ inherit git-r3 |
36 |
else |
37 |
SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz" |
38 |
- KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86" |
39 |
+ KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~sparc ~x86" |
40 |
fi |
41 |
|
42 |
DESCRIPTION="GPS daemon and library for USB/serial GPS devices and GPS/mapping clients" |
43 |
-HOMEPAGE="http://catb.org/gpsd/" |
44 |
+HOMEPAGE="https://gpsd.gitlab.io/gpsd/" |
45 |
|
46 |
LICENSE="BSD" |
47 |
-SLOT="0/23" |
48 |
+SLOT="0/24" |
49 |
|
50 |
GPSD_PROTOCOLS=( |
51 |
aivdm ashtech earthmate evermore fury fv18 garmin garmintxt geostar |
52 |
- gpsclock isync itrax mtk3301 navcom nmea0183 nmea2000 ntrip oceanserver |
53 |
- oncore passthrough rtcm104v2 rtcm104v3 sirf skytraq superstar2 tnt |
54 |
- tripmate tsip ublox |
55 |
+ gpsclock greis isync itrax mtk3301 navcom nmea0183 nmea2000 ntrip |
56 |
+ oceanserver oncore passthrough rtcm104v2 rtcm104v3 sirf skytraq |
57 |
+ superstar2 tnt tripmate tsip ublox |
58 |
) |
59 |
-IUSE_GPSD_PROTOCOLS=${GPSD_PROTOCOLS[@]/#/gpsd_protocols_} |
60 |
+IUSE_GPSD_PROTOCOLS=${GPSD_PROTOCOLS[@]/#/+gpsd_protocols_} |
61 |
IUSE="${IUSE_GPSD_PROTOCOLS} bluetooth +cxx dbus debug ipv6 latency-timing ncurses ntp python qt5 +shm +sockets static test udev usb X" |
62 |
REQUIRED_USE="X? ( python ) |
63 |
gpsd_protocols_nmea2000? ( gpsd_protocols_aivdm ) |
64 |
+ gpsd_protocols_isync? ( gpsd_protocols_ublox ) |
65 |
+ gpsd_protocols_ublox? ( python ) |
66 |
+ gpsd_protocols_greis? ( python ) |
67 |
python? ( ${PYTHON_REQUIRED_USE} ) |
68 |
qt5? ( cxx )" |
69 |
+RESTRICT="!test? ( test )" |
70 |
|
71 |
RDEPEND=" |
72 |
>=net-misc/pps-tools-0.0.20120407 |
73 |
@@ -54,8 +58,10 @@ RDEPEND=" |
74 |
dev-qt/qtnetwork:5 |
75 |
) |
76 |
python? ( ${PYTHON_DEPS} ) |
77 |
+ gpsd_protocols_ublox? ( dev-python/pyserial ) |
78 |
+ gpsd_protocols_greis? ( dev-python/pyserial ) |
79 |
usb? ( virtual/libusb:1 ) |
80 |
- X? ( dev-python/pygtk:2[${PYTHON_USEDEP}] )" |
81 |
+ X? ( dev-python/pygobject:3[cairo,${PYTHON_USEDEP}] )" |
82 |
DEPEND="${RDEPEND} |
83 |
virtual/pkgconfig |
84 |
test? ( sys-devel/bc )" |
85 |
@@ -79,22 +85,31 @@ src_prepare() { |
86 |
fi |
87 |
|
88 |
epatch "${FILESDIR}"/${P}-do_not_rm_library.patch |
89 |
+ # Merged upstream |
90 |
+ #epatch "${FILESDIR}"/${P}-scons-print.patch |
91 |
+ #epatch "${FILESDIR}"/${P}-scons-py3.patch |
92 |
|
93 |
# Avoid useless -L paths to the install dir |
94 |
sed -i \ |
95 |
-e 's:\<STAGING_PREFIX\>:SYSROOT:g' \ |
96 |
SConstruct || die |
97 |
|
98 |
+ default |
99 |
+ |
100 |
use python && distutils-r1_src_prepare |
101 |
} |
102 |
|
103 |
python_prepare_all() { |
104 |
- python_export_best |
105 |
+ python_setup |
106 |
+ python_export |
107 |
+ |
108 |
# Extract python info out of SConstruct so we can use saner distribute |
109 |
pyvar() { sed -n "/^ *$1 *=/s:.*= *::p" SConstruct ; } |
110 |
local pybins=$(pyvar python_progs | tail -1) |
111 |
# Handle conditional tools manually. #666734 |
112 |
use X && pybins+="+ ['xgps', 'xgpsspeed']" |
113 |
+ use gpsd_protocols_ublox && pybins+="+ ['ubxtool']" |
114 |
+ use gpsd_protocols_greis && pybins+="+ ['zerk']" |
115 |
local pysrcs=$(sed -n '/^ *python_extensions = {/,/}/{s:^ *::;s:os[.]sep:"/":g;p}' SConstruct) |
116 |
local packet=$("${PYTHON}" -c "${pysrcs}; print(python_extensions['gps/packet'])") |
117 |
local client=$("${PYTHON}" -c "${pysrcs}; print(python_extensions['gps/clienthelpers'])") |
118 |
@@ -119,7 +134,6 @@ src_configure() { |
119 |
gpsd_user=gpsd |
120 |
gpsd_group=uucp |
121 |
nostrip=True |
122 |
- python=False |
123 |
manbuild=False |
124 |
shared=$(usex !static True False) |
125 |
$(use_scons bluetooth bluez) |
126 |
@@ -131,12 +145,14 @@ src_configure() { |
127 |
$(use_scons ncurses) |
128 |
$(use_scons ntp ntpshm) |
129 |
$(use_scons ntp pps) |
130 |
+ $(use_scons python) |
131 |
$(use_scons qt5 qt) |
132 |
$(use_scons shm shm_export) |
133 |
$(use_scons sockets socket_export) |
134 |
$(use_scons usb) |
135 |
) |
136 |
|
137 |
+ use X && myesconsargs+=( xgps=1 xgpsspeed=1 ) |
138 |
use qt5 && myesconsargs+=( qt_versioned=5 ) |
139 |
|
140 |
# enable specified protocols |
141 |
@@ -161,13 +177,12 @@ src_install() { |
142 |
newconfd "${FILESDIR}"/gpsd.conf-2 gpsd |
143 |
newinitd "${FILESDIR}"/gpsd.init-2 gpsd |
144 |
|
145 |
- if use python ; then |
146 |
- distutils-r1_src_install |
147 |
- # Delete all X related packages if user doesn't want them |
148 |
- if ! use X && [[ -f "${ED%/}"/usr/bin/xgps ]]; then |
149 |
- rm "${ED%/}"/usr/bin/xgps* || die |
150 |
- fi |
151 |
- fi |
152 |
+ # Cleanup bad alt copy due to Scons |
153 |
+ rm -rf "${D}"/usr/local/$(get_libdir)/python*/site-packages/gps* |
154 |
+ find "${D}"/usr/local/ -type d -delete |
155 |
+ # Install correct multi-python copy |
156 |
+ use python && distutils-r1_src_install |
157 |
+ |
158 |
} |
159 |
|
160 |
pkg_preinst() { |