summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLu Qiuwen <[email protected]>2019-08-06 16:46:38 +0800
committerLu Qiuwen <[email protected]>2019-08-06 16:46:38 +0800
commit46752d4a0ade2449ff8890d25f2b5f4b4cea422e (patch)
treec230ce05bdf14e28da0ef895a96639b22f6ff7b0
parent32aa3aa3ce5b176ee9cfa0175940f6781ed86db1 (diff)
修正带减号的版本号不能通过rpm版本号检测的问题
-rw-r--r--Makefile25
1 files changed, 18 insertions, 7 deletions
diff --git a/Makefile b/Makefile
index 812ea39..e48abf9 100644
--- a/Makefile
+++ b/Makefile
@@ -1,4 +1,4 @@
-obj-m += tfe_kmod.o
+obj-m += tfe-kmod.o
tfe_kmod-y := core.o util.o stat.o cmsg.o
ccflags-n := -DDEBUG -g
version := $(shell git log --pretty=format:'%h' -n 1)
@@ -7,22 +7,25 @@ KERNELDIR ?= /lib/modules/$(shell uname -r)/build
PREFIX ?= /usr
DESTDIR ?=
SRCDIR ?= $(PREFIX)/src
-DKMSDIR ?= $(SRCDIR)/wireguard
+VERSION ?= $(subst -,.,$(shell git describe --dirty 2>/dev/null))
+DKMSDIR ?= $(SRCDIR)/tfe-kmod
DEPMOD ?= depmod
+.PHONY: all module clean dkms-install dkms-package version.h dkms.conf
+
all: module
debug: module-debug
version.h:
@export GIT_CEILING_DIRECTORIES="$$(readlink -f ../..)" && \
- ver="#define TFE_KMOD_VERSION \"$$(git describe --dirty 2>/dev/null)\"" && \
+ ver="#define TFE_KMOD_VERSION \"$(VERSION)\"" && \
[ "$$(cat version.h 2>/dev/null)" != "$$ver" ] && \
echo "$$ver" > version.h && \
git update-index --assume-unchanged version.h || true
dkms.conf:
@export GIT_CEILING_DIRECTORIES="$$(readlink -f ../..)" && \
- ver="$$(git describe --dirty 2>/dev/null)" && \
+ ver=$(VERSION) && \
. ./dkms.conf && \
[ "$$PACKAGE_VERSION" != "$$ver" ] && \
sed -i "s/PACKAGE_VERSION=.*/PACKAGE_VERSION=\"$$ver\"/" dkms.conf && \
@@ -30,8 +33,16 @@ dkms.conf:
module: version.h
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
+
clean:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
-package:
- dkms add ./
- dkms mkrpm tfe-kmod/$(version) --source-only
+
+
+DKMS_SOURCES := Makefile dkms.conf $(wildcard *.c *.h)
+
+dkms-install: $(DKMS_SOURCES)
+ @$(foreach f,$(DKMS_SOURCES),install -v -m0644 -D $(f) $(DESTDIR)$(DKMSDIR)/$(f);)
+
+dkms-package: dkms-install
+ dkms add $(DKMSDIR)
+ dkms mkrpm -m tfe-kmod -v $(VERSION) --source-only