From c1d4f38c19104838ceb883957d04a6fbe63c6b41 Mon Sep 17 00:00:00 2001 From: Rifat Azad Date: Mon, 9 Dec 2024 17:45:05 +0600 Subject: [PATCH] kernel: added SuSFS version --- kernel/Makefile | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/kernel/Makefile b/kernel/Makefile index 26c689ca..1033793d 100644 --- a/kernel/Makefile +++ b/kernel/Makefile @@ -16,21 +16,18 @@ ccflags-y += -I$(objtree)/security/selinux -include $(srctree)/include/uapi/asm- obj-$(CONFIG_KSU) += kernelsu.o -REPO_OWNER := rifsxd -REPO_NAME := kernelsu -REPO_BRANCH := next - -KSU_GIT_VERSION := $(shell curl -sI "https://api.github.com/repos/$(REPO_OWNER)/$(REPO_NAME)/commits?sha=$(REPO_BRANCH)&per_page=1" | grep -i "link:" | sed -n 's/.*page=\([0-9]*\)>; rel="last".*/\1/p') - -ifeq ($(KSU_GIT_VERSION),) -KSU_VERSION := 11991 - $(warning "Failed to fetch commit count from GitHub API! Using default version: $(KSU_VERSION)") -else +# .git is a text file while the module is imported by 'git submodule add'. +ifeq ($(shell test -e $(srctree)/$(src)/../.git; echo $$?),0) +$(shell cd $(srctree)/$(src); /usr/bin/env PATH="$$PATH":/usr/bin:/usr/local/bin [ -f ../.git/shallow ] && git fetch --unshallow) +KSU_GIT_VERSION := $(shell cd $(srctree)/$(src); /usr/bin/env PATH="$$PATH":/usr/bin:/usr/local/bin git rev-list --count HEAD) +# ksu_version: major * 10000 + git version + 200 for historical reasons $(eval KSU_VERSION=$(shell expr 10000 + $(KSU_GIT_VERSION) + 200)) $(info -- KernelSU version: $(KSU_VERSION)) -endif - ccflags-y += -DKSU_VERSION=$(KSU_VERSION) +else # If there is no .git file, the default version will be passed. +$(warning "KSU_GIT_VERSION not defined! It is better to make KernelSU a git submodule!") +ccflags-y += -DKSU_VERSION=16 +endif ifeq ($(shell grep -q " current_sid(void)" $(srctree)/security/selinux/include/objsec.h; echo $$?),0) ccflags-y += -DKSU_COMPAT_HAS_CURRENT_SID @@ -151,6 +148,8 @@ ccflags-y += -Wno-implicit-function-declaration -Wno-strict-prototypes -Wno-int- ccflags-y += -Wno-declaration-after-statement -Wno-unused-function ifeq ($(shell test -e $(srctree)/fs/susfs.c; echo $$?),0) +$(eval SUSFS_VERSION=$(shell cat $(srctree)/include/linux/susfs.h | grep -E '^#define SUSFS_VERSION' | cut -d' ' -f3 | sed 's/"//g')) +$(info -- SUSFS_VERSION: $(SUSFS_VERSION)) ifdef KSU_SUSFS ccflags-y += -DKSU_SUSFS endif