Attempt to fix gpsd build

Backport changes from
upstream (https://layers.openembedded.org/layerindex/branch/master/layer/meta-oe/):

* add systemd support
* remove obsolete idu-specific install
* remove copy-pasted commented strings to simplifa comparison
This commit is contained in:
Max 2017-07-20 14:23:59 +02:00 committed by Pau Espin Pedrol
parent 15cb1d0902
commit 03d679aaab
1 changed files with 20 additions and 37 deletions

View File

@ -1,9 +1,8 @@
DESCRIPTION = "A TCP/IP Daemon simplifying the communication with GPS devices"
SUMMARY = "A TCP/IP Daemon simplifying the communication with GPS devices"
SECTION = "console/network"
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://COPYING;md5=d217a23f408e91c94359447735bc1800"
DEPENDS = "ncurses python"
#DEPENDS = "ncurses libusb1 python"
PROVIDES = "virtual/gpsd"
PR = "r3.19"
@ -19,20 +18,19 @@ SRC_URI = "http://download.savannah.gnu.org/releases/${PN}/${P}.tar.gz \
file://gpsd-default \
file://gpsd \
file://60-gpsd.rules \
file://gpsd.service \
"
SRC_URI_append_sysmocom-idu = " file://gpsd.service "
SRC_URI_append_sysmobts2100 = " file://gpsd.service "
SRC_URI[md5sum] = "fc5b03aae38b9b5b6880b31924d0ace3"
SRC_URI[sha256sum] = "706fc2c1cf3dfbf87c941f543381bccc9c4dc9f8240eec407dcbf2f70b854320"
#inherit scons update-rc.d python-dir pythonnative
inherit scons update-rc.d systemd
INITSCRIPT_NAME = "gpsd"
INITSCRIPT_PARAMS = "defaults 35"
SYSTEMD_OESCONS = "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false',d)}"
export STAGING_INCDIR
export STAGING_LIBDIR
export LINKFLAGS="${TARGET_LDFLAGS}"
@ -65,10 +63,11 @@ EXTRA_OESCONS = " \
trip='false' \
tripmate='false' \
usb='false' \
systemd='${@base_contains('DISTRO_FEATURES','systemd','true','false',d)}' \
chrpath='false' \
systemd='${SYSTEMD_OESCONS}' \
libdir='${libdir}' \
${PACKAGECONFIG_CONFARGS} \
"
# python='false' \
# this cannot be used, because then chrpath is not found and only static lib is built
# target=${HOST_SYS}
@ -107,59 +106,43 @@ do_install_append() {
install -d ${D}${base_libdir}/udev/
install -m 0755 ${S}/gpsd.hotplug ${D}${base_libdir}/udev/
#support for python
#install -d ${D}/${PYTHON_SITEPACKAGES_DIR}/gps
#install -m 755 ${S}/gps/*.py ${D}/${PYTHON_SITEPACKAGES_DIR}/gps
}
do_install_append_sysmocom-idu() {
install -d ${D}${systemd_unitdir}/system/multi-user.target.wants/
install -m 0644 ${WORKDIR}/gpsd.service ${D}${systemd_unitdir}/system/
ln -sf ../gpsd.service ${D}${systemd_unitdir}/system/multi-user.target.wants/
#support for systemd
install -d ${D}${systemd_unitdir}/system/
install -m 0644 ${WORKDIR}/${BPN}.service ${D}${systemd_unitdir}/system/${BPN}.service
install -m 0644 ${S}/systemd/${BPN}.socket ${D}${systemd_unitdir}/system/${BPN}.socket
}
pkg_postinst_${PN}-conf() {
update-alternatives --install ${sysconfdir}/default/gpsd gpsd-defaults ${sysconfdir}/default/gpsd.default 10
update-alternatives --install ${sysconfdir}/default/gpsd gpsd-defaults ${sysconfdir}/default/gpsd.default 10
}
pkg_postrm_${PN}-conf() {
update-alternatives --remove gpsd-defaults ${sysconfdir}/default/gpsd.default
update-alternatives --remove gpsd-defaults ${sysconfdir}/default/gpsd.default
}
SYSTEMD_SERVICE_${PN}_append_sysmobts2100 = "gpsd.service"
#PACKAGES =+ "libgps libgpsd python-pygps-dbg python-pygps gpsd-udev gpsd-conf gpsd-gpsctl gps-utils"
PACKAGES =+ "libgps libgpsd gpsd-udev gpsd-conf gpsd-gpsctl gps-utils"
#FILES_python-pygps-dbg += " ${libdir}/python*/site-packages/gps/.debug"
RDEPENDS_${PN} = "gpsd-gpsctl"
RRECOMMENDS_${PN} = "gpsd-conf gpsd-machine-conf"
RSUGGESTS_${PN} = "gpsd-udev"
RRECOMMENDS_${PN} = "gpsd-conf gpsd-udev gpsd-machine-conf"
DESCRIPTION_gpsd-udev = "udev relevant files to use gpsd hotplugging"
SUMMARY_gpsd-udev = "udev relevant files to use gpsd hotplugging"
FILES_gpsd-udev = "${base_libdir}/udev ${sysconfdir}/udev/*"
RDEPENDS_gpsd-udev += "udev gpsd-conf"
DESCRIPTION_libgpsd = "C service library used for communicating with gpsd"
SUMMARY_libgpsd = "C service library used for communicating with gpsd"
FILES_libgpsd = "${libdir}/libgpsd.so.*"
DESCRIPTION_libgps = "C service library used for communicating with gpsd"
SUMMARY_libgps = "C service library used for communicating with gpsd"
FILES_libgps = "${libdir}/libgps.so.*"
DESCRIPTION_gpsd-conf = "gpsd configuration files and init scripts"
SUMMARY_gpsd-conf = "gpsd configuration files and init scripts"
FILES_gpsd-conf = "${sysconfdir}"
FILES_gpsd-conf_append_sysmocom-idu = " ${systemd_unitdir}/system/ "
CONFFILES_gpsd-conf = "${sysconfdir}/default/gpsd.default"
DESCRIPTION_gpsd-gpsctl = "Tool for tweaking GPS modes"
SUMMARY_gpsd-gpsctl = "Tool for tweaking GPS modes"
FILES_gpsd-gpsctl = "${bindir}/gpsctl"
DESCRIPTION_gps-utils = "Utils used for simulating, monitoring,... a GPS"
SUMMARY_gps-utils = "Utils used for simulating, monitoring,... a GPS"
FILES_gps-utils = "${bindir}/*"
#RDEPENDS_gps-utils = "python-pygps"
#DESCRIPTION_python-pygps = "Python bindings to gpsd"
#FILES_python-pygps = "${PYTHON_SITEPACKAGES_DIR}/*"
#RDEPENDS_python-pygps = "python-core python-curses gpsd python-json"