40 lines
1.2 KiB
Makefile
40 lines
1.2 KiB
Makefile
KDIR ?= @KDIR@
|
|
ARCH ?= @ARCH@
|
|
KMODDIR=@KMODDIR@
|
|
src = @abs_srcdir@
|
|
ENABLE_MCOVERLAYFS=@ENABLE_MCOVERLAYFS@
|
|
|
|
RELEASE=$(shell uname -r)
|
|
MAJOR=$(shell echo ${RELEASE} | sed -e 's/^\([0-9]*\).*/\1/')
|
|
MINOR=$(shell echo ${RELEASE} | sed -e 's/^[0-9]*.\([0-9]*\).*/\1/')
|
|
PATCH=$(shell echo ${RELEASE} | sed -e 's/^[0-9]*.[0-9]*.\([0-9]*\).*/\1/')
|
|
LINUX_VERSION_CODE=$(shell expr \( ${MAJOR} \* 65536 \) + \( ${MINOR} \* 256 \) + ${PATCH})
|
|
RHEL_RELEASE=$(shell echo ${RELEASE} | sed -e 's/^[0-9]*.[0-9]*.[0-9]*-\([0-9]*\).*/\1/')
|
|
RHEL_RELEASE=$(shell if [ "${RELEASE}" == "${RHEL_RELEASE}" ]; then echo ""; else echo ${RHEL_RELEASE}; fi)
|
|
ifeq ($(ENABLE_MCOVERLAYFS),yes)
|
|
ENABLE_BUILD=$(shell if ( [ ${LINUX_VERSION_CODE} -ge 262144 ] && [ ${LINUX_VERSION_CODE} -lt 262400 ] ); then echo "yes"; else echo "no"; fi)
|
|
else
|
|
ENABLE_BUILD=no
|
|
endif
|
|
|
|
obj-m += mcoverlay.o
|
|
|
|
mcoverlay-y := copy_up.o dir.o inode.o readdir.o super.o
|
|
|
|
.PHONY: clean install modules
|
|
|
|
modules:
|
|
ifeq ($(ENABLE_BUILD),yes)
|
|
$(MAKE) -C $(KDIR) M=$(PWD) SUBDIRS=$(PWD) ARCH=$(ARCH) modules
|
|
endif
|
|
|
|
clean:
|
|
$(RM) .*.cmd *.mod.c *.o *.ko* Module.symvers modules.order -r .tmp*
|
|
|
|
install:
|
|
ifeq ($(ENABLE_BUILD),yes)
|
|
mkdir -p -m 755 $(KMODDIR)
|
|
install -m 644 mcoverlay.ko $(KMODDIR)
|
|
endif
|
|
|