Commit 7799ba21 authored by João Marcos Costa's avatar João Marcos Costa Committed by Shuah Khan
Browse files

cpupower: make systemd unit installation optional

cpupower currently installs a cpupower.service unit file into unitdir
unconditionally, regardless of whether systemd is used by the host.

Improve the installation procedure by making this systemd step optional:
a 'SYSTEMD' build parameter that defaults to 'true' and can be set to
'false' to disable the installation of systemd's unit file.

Since 'SYSTEMD' defaults to true, the current behavior is kept as the
default.

Link: https://lore.kernel.org/r/20260113132753.1730020-2-joaomarcos.costa@bootlin.com


Signed-off-by: default avatarJoão Marcos Costa <joaomarcos.costa@bootlin.com>
Signed-off-by: default avatarShuah Khan <skhan@linuxfoundation.org>
parent ff72619e
Loading
Loading
Loading
Loading
+12 −5
Original line number Diff line number Diff line
@@ -315,7 +315,17 @@ endif
	$(INSTALL_DATA) lib/cpuidle.h $(DESTDIR)${includedir}/cpuidle.h
	$(INSTALL_DATA) lib/powercap.h $(DESTDIR)${includedir}/powercap.h

install-tools: $(OUTPUT)cpupower
# SYSTEMD=false disables installation of the systemd unit file
SYSTEMD ?=	true

install-systemd:
	$(INSTALL) -d $(DESTDIR)${unitdir}
	sed 's|___CDIR___|${confdir}|; s|___LDIR___|${libexecdir}|' cpupower.service.in > '$(DESTDIR)${unitdir}/cpupower.service'
	$(SETPERM_DATA) '$(DESTDIR)${unitdir}/cpupower.service'

INSTALL_SYSTEMD := $(if $(filter true,$(strip $(SYSTEMD))),install-systemd)

install-tools: $(OUTPUT)cpupower $(INSTALL_SYSTEMD)
	$(INSTALL) -d $(DESTDIR)${bindir}
	$(INSTALL_PROGRAM) $(OUTPUT)cpupower $(DESTDIR)${bindir}
	$(INSTALL) -d $(DESTDIR)${bash_completion_dir}
@@ -324,9 +334,6 @@ install-tools: $(OUTPUT)cpupower
	$(INSTALL_DATA) cpupower-service.conf '$(DESTDIR)${confdir}'
	$(INSTALL) -d $(DESTDIR)${libexecdir}
	$(INSTALL_PROGRAM) cpupower.sh '$(DESTDIR)${libexecdir}/cpupower'
	$(INSTALL) -d $(DESTDIR)${unitdir}
	sed 's|___CDIR___|${confdir}|; s|___LDIR___|${libexecdir}|' cpupower.service.in > '$(DESTDIR)${unitdir}/cpupower.service'
	$(SETPERM_DATA) '$(DESTDIR)${unitdir}/cpupower.service'

install-man:
	$(INSTALL_DATA) -D man/cpupower.1 $(DESTDIR)${mandir}/man1/cpupower.1
@@ -406,4 +413,4 @@ help:
	@echo  '  uninstall	  - Remove previously installed files from the dir defined by "DESTDIR"'
	@echo  '                    cmdline or Makefile config block option (default: "")'

.PHONY: all utils libcpupower update-po create-gmo install-lib install-tools install-man install-gmo install uninstall clean help
.PHONY: all utils libcpupower update-po create-gmo install-lib install-systemd install-tools install-man install-gmo install uninstall clean help