From 351268566497b0f21d1938879704d641ae39130f Mon Sep 17 00:00:00 2001 From: CyrIng Date: Sat, 18 Nov 2023 21:39:35 +0100 Subject: [PATCH] [Build] Creating a new recipe to uninstall binaries * DKMS, CKMS are now using default extra modules directories --- Makefile | 47 +++++++++++++++++++++++++++++++++++++++++----- ckms.ini | 4 ++-- dkms.conf | 16 +++++++++------- x86_64/corefreqk.c | 2 +- 4 files changed, 54 insertions(+), 15 deletions(-) diff --git a/Makefile b/Makefile index a4f3e676..e5092985 100644 --- a/Makefile +++ b/Makefile @@ -7,12 +7,14 @@ CC ?= cc WARNING = -Wall -Wfatal-errors -Wno-unused-variable SYMLINK ?= ln -s INSTALL ?= install +DEPMOD ?= depmod MKDIR ?= mkdir RMDIR ?= rmdir RM ?= rm -f PWD ?= $(shell pwd) BUILD ?= build -KERNELDIR ?= /lib/modules/$(shell uname -r)/build +KERNELREL ?= /lib/modules/$(shell uname -r) +KERNELDIR ?= $(KERNELREL)/build PREFIX ?= /usr UBENCH = 0 CORE_COUNT ?= 256 @@ -113,12 +115,47 @@ prepare: $(BUILD)/module/corefreqk.c; \ fi +.PHONY: uninstall +uninstall: + @if [ -e $(PREFIX)/bin/corefreq-cli ]; then \ + $(RM) $(PREFIX)/bin/corefreq-cli; \ + fi + @if [ -e $(PREFIX)/bin/corefreqd ]; then \ + $(RM) $(PREFIX)/bin/corefreqd; \ + fi + @if [ -e $(PREFIX)/lib/systemd/system/corefreqd.service ]; then \ + $(RM) $(PREFIX)/lib/systemd/system/corefreqd.service; \ + fi + @MCNT=0; \ + for MDIR in updates extra ; do \ + if [ -d $(KERNELREL)/$${MDIR} ]; then \ + for MEXT in ko ko.gz ko.xz ko.zst ; do \ + MFILE=$(KERNELREL)/$${MDIR}/corefreqk.$${MEXT}; \ + if [ -e $${MFILE} ]; then \ + $(RM) $${MFILE}; \ + if [ $$? -eq 0 ]; then \ + MCNT=$$((MCNT + 1)); \ + fi \ + fi \ + done \ + fi \ + done; \ + if [ $${MCNT} -ge 1 ]; then \ + $(DEPMOD) -a; \ + fi + .PHONY: install install: module-install - $(INSTALL) -Dm 0755 $(BUILD)/corefreq-cli $(BUILD)/corefreqd \ - -t $(PREFIX)/bin - $(INSTALL) -Dm 0644 corefreqd.service \ - $(PREFIX)/lib/systemd/system/corefreqd.service + @if [ -e $(BUILD)/corefreq-cli ]; then \ + $(INSTALL) -m 0755 $(BUILD)/corefreq-cli $(PREFIX)/bin; \ + fi + @if [ -e $(BUILD)/corefreqd ]; then \ + $(INSTALL) -m 0755 $(BUILD)/corefreqd $(PREFIX)/bin; \ + fi + @if [ -d $(PREFIX)/lib/systemd/system ]; then \ + $(INSTALL) -m 0644 corefreqd.service \ + $(PREFIX)/lib/systemd/system; \ + fi .PHONY: module-install module-install: diff --git a/ckms.ini b/ckms.ini index a1467e7d..7737866b 100644 --- a/ckms.ini +++ b/ckms.ini @@ -6,7 +6,7 @@ # [general] name = corefreqk -version = 1.97.0 +version = 1.97 strip = yes make = gmake initramfs = no @@ -14,4 +14,4 @@ initramfs = no build = ${MAKE} ${CKMS_MAKE_ARGS} [module.corefreqk] path = build -dest = kernel/drivers/misc +dest = extra diff --git a/dkms.conf b/dkms.conf index 024857ed..f491efc8 100644 --- a/dkms.conf +++ b/dkms.conf @@ -3,25 +3,27 @@ # Licenses: GPL2 # AUTOINSTALL="yes" -REMAKE_INITRD="no" -DRV_PATH=/kernel/drivers/misc +## REMAKE_INITRD="no" +DRV_PATH=/updates DRV_VERSION=1.97 PACKAGE_NAME="corefreqk" PACKAGE_VERSION="$DRV_VERSION" BUILT_MODULE_NAME[0]="corefreqk" +BUILT_MODULE_LOCATION[0]="build/" DEST_MODULE_LOCATION[0]="$DRV_PATH" -CLEAN="make -C $source_tree/$PACKAGE_NAME-$PACKAGE_VERSION KERNELDIR=$kernel_source_dir clean" +# CLEAN="make -C $source_tree/$PACKAGE_NAME-$PACKAGE_VERSION KERNELDIR=$kernel_source_dir clean" MAKE[0]="make -C $source_tree/$PACKAGE_NAME-$PACKAGE_VERSION KERNELDIR=$kernel_source_dir" # -DAEMON="\$source_tree/\$PACKAGE_NAME-\$PACKAGE_VERSION/corefreqd" -CLIENT="\$source_tree/\$PACKAGE_NAME-\$PACKAGE_VERSION/corefreq-cli" +DAEMON="\$source_tree/\$PACKAGE_NAME-\$PACKAGE_VERSION/build/corefreqd" +CLIENT="\$source_tree/\$PACKAGE_NAME-\$PACKAGE_VERSION/build/corefreq-cli" SCRIPT="scripter.sh" COMMAND="install -Dm 0755 -s -t /bin" -OBJECTS="\$source_tree/\$PACKAGE_NAME-\$PACKAGE_VERSION/*.o" +OBJECTS="\$source_tree/\$PACKAGE_NAME-\$PACKAGE_VERSION/build/*.o" BINARIES="/bin/corefreqd /bin/corefreq-cli" CLEANUP="rm -f" # -POST_BUILD="$SCRIPT $COMMAND -- $DAEMON $CLIENT" POST_INSTALL="$SCRIPT $CLEANUP -- $OBJECTS" POST_REMOVE="$SCRIPT $CLEANUP -- $BINARIES" # +PRE_BUILD="$SCRIPT make -- prepare" +PRE_INSTALL="$SCRIPT $COMMAND -- $DAEMON $CLIENT" diff --git a/x86_64/corefreqk.c b/x86_64/corefreqk.c index ec60ace7..c5325d0a 100644 --- a/x86_64/corefreqk.c +++ b/x86_64/corefreqk.c @@ -3,8 +3,8 @@ * Copyright (C) 2015-2023 CYRIL COURTIAT * Licenses: GPL2 * + * Infliximab [11.17.2023] * Vedolizumab [05.25.2023] - * First injection * * CYRIL INGENIERIE[11.30.2022] * Company closed down