package/gpsd: Fix systemd service installation and paths
Fix several issues with systemd service file installation for gpsd: - systemd support in the gpsd build was defaulting to enabled or not based on whether the host system had systemd directories present. Set this explicitly based on whether BR2_INIT_SYSTEMD is set. - The installed systemd service files referenced paths in /usr/local when the actual binaries are installed in /usr. Replace /usr/local with /usr in the installed service files. - When BR2_PACKAGE_HAS_UDEV was enabled, all of the binaries were re-installed again, along with the udev rules, as part of the post-install hooks. This overwrites the service files that were just fixed up. Since udev-install implies install, we can just call udev-install. Signed-off-by: Robert Hancock <hancock@sedsystems.ca> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
This commit is contained in:
parent
2d458a2d7c
commit
690222d239
@ -25,7 +25,8 @@ GPSD_SCONS_OPTS = \
|
||||
strip=no \
|
||||
python=no \
|
||||
qt=no \
|
||||
ntpshm=yes
|
||||
ntpshm=yes \
|
||||
systemd=$(if $(BR2_INIT_SYSTEMD),yes,no)
|
||||
|
||||
ifeq ($(BR2_PACKAGE_NCURSES),y)
|
||||
GPSD_DEPENDENCIES += ncurses
|
||||
@ -214,7 +215,7 @@ define GPSD_INSTALL_TARGET_CMDS
|
||||
DESTDIR=$(TARGET_DIR) \
|
||||
$(HOST_DIR)/bin/python2 $(SCONS) \
|
||||
$(GPSD_SCONS_OPTS) \
|
||||
install)
|
||||
$(if $(BR2_PACKAGE_HAS_UDEV),udev-install,install))
|
||||
endef
|
||||
|
||||
define GPSD_INSTALL_INIT_SYSV
|
||||
@ -222,6 +223,14 @@ define GPSD_INSTALL_INIT_SYSV
|
||||
$(SED) 's,^DEVICES=.*,DEVICES=$(BR2_PACKAGE_GPSD_DEVICES),' $(TARGET_DIR)/etc/init.d/S50gpsd
|
||||
endef
|
||||
|
||||
# systemd unit files are installed automatically, but need to update the
|
||||
# /usr/local path references in the provided files to /usr.
|
||||
define GPSD_INSTALL_INIT_SYSTEMD
|
||||
$(SED) 's%/usr/local%/usr%' \
|
||||
$(TARGET_DIR)/usr/lib/systemd/system/gpsd.service \
|
||||
$(TARGET_DIR)/usr/lib/systemd/system/gpsdctl@.service
|
||||
endef
|
||||
|
||||
define GPSD_INSTALL_STAGING_CMDS
|
||||
(cd $(@D); \
|
||||
$(GPSD_SCONS_ENV) \
|
||||
@ -231,16 +240,10 @@ define GPSD_INSTALL_STAGING_CMDS
|
||||
install)
|
||||
endef
|
||||
|
||||
# After installing the udev rule, make it writable so that this
|
||||
# After the udev rule is installed, make it writable so that this
|
||||
# package can be re-built/re-installed.
|
||||
ifeq ($(BR2_PACKAGE_HAS_UDEV),y)
|
||||
define GPSD_INSTALL_UDEV_RULES
|
||||
(cd $(@D); \
|
||||
$(GPSD_SCONS_ENV) \
|
||||
DESTDIR=$(TARGET_DIR) \
|
||||
$(HOST_DIR)/bin/python2 $(SCONS) \
|
||||
$(GPSD_SCONS_OPTS) \
|
||||
udev-install)
|
||||
chmod u+w $(TARGET_DIR)/lib/udev/rules.d/25-gpsd.rules
|
||||
endef
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user