[DRBD-cvs] drbd by phil; install target for Linux-2.6 comming up ...
drbd-user@lists.linbit.com
drbd-user@lists.linbit.com
Tue, 3 Feb 2004 14:22:12 +0100 (CET)
DRBD CVS committal
Author : phil
Module : drbd
Dir : drbd/drbd
Modified Files:
Tag: rel-0_7-branch
Makefile drbd_actlog.c
Log Message:
install target for Linux-2.6 comming up (but not finished)
===================================================================
RCS file: /var/lib/cvs/drbd/drbd/drbd/Makefile,v
retrieving revision 1.14.2.18
retrieving revision 1.14.2.19
diff -u -3 -r1.14.2.18 -r1.14.2.19
--- Makefile 24 Jan 2004 18:28:26 -0000 1.14.2.18
+++ Makefile 3 Feb 2004 13:22:07 -0000 1.14.2.19
@@ -32,15 +32,15 @@
$(error "won't compile with this kernel version")
endif
- # Super stupid anti "-1um" hack. See ~linux/arch/um/Makefile
- KERNELRELEASE := $(shell echo $(KERNELRELEASE) | sed s/-1um// )
-
# linux 2.6 style:
obj-m += drbd.o
drbd-objs := drbd_fs.o drbd_main.o drbd_proc.o drbd_dsender.o \
drbd_receiver.o drbd_req-2.4.o drbd_actlog.o \
lru_cache.o
+ # remember KERNELRELEASE for install target
+ $(shell echo $(KERNELRELEASE) > $(DRBDSRC)/.kernelrelease.new )
+
# rest is magic for KERNEL_VERSION < 2.6
ifneq ($(findstring $(PATCHLEVEL),24),)
# linux 2.2//2.4 style needs in addition:
@@ -58,11 +58,8 @@
endif
drbd.o: $(drbd-objs)
- # remember KERNELRELEASE for install target
- echo $(KERNELRELEASE) > .kernelrelease
$(LD) -r -o $@ $(drbd-objs)
-
else
ifneq ($(PATCHLEVEL),6)
# we only compile for [-2.2,-] 2.4 and 2.6. sorry.
@@ -71,7 +68,8 @@
endif
else
# called from command line in current directory
- PWD := $(shell pwd)
+ DRBDSRC := $(shell pwd)
+ export DRBDSRC
# to be overridden on command line:
PREFIX := /
ifeq ($(wildcard ../build-for-uml),../build-for-uml)
@@ -89,8 +87,12 @@
all: drbd.o
# for the install target. (also works if kernel source is not there)
- KERNELRELEASE := $(shell test -r .kernelrelease && \
- sed 's/-1um//' < .kernelrelease)
+ # stupid anti "-1um" hack. See ~linux/arch/um/Makefile
+ #KERNELRELEASE := $(shell test -r .kernelrelease && \
+ # sed 's/-1um//' < .kernelrelease)
+ # Nowadays UML got is consistent. the anit "-1um" hack is no longer needed.
+ KERNELRELEASE := $(shell test -r .kernelrelease && cat .kernelrelease)
+
MODSUBDIR := $(strip \
$(if $(wildcard /lib/modules/$(KERNELRELEASE)/kernel),\
kernel/drivers/block,\
@@ -106,12 +108,14 @@
echo ""
kbuild:
- $(MAKE) -C $(KDIR) SUBDIRS=$(PWD) $(ARCH_UM) modules
+ @rm -f .kernelrelease*
+ $(MAKE) -C $(KDIR) SUBDIRS=$(DRBDSRC) $(ARCH_UM) modules
+ @mv .kernelrelease.new .kernelrelease
# obsolete in 2.6 ...
dep:
@echo "make dep ..."
- @$(MAKE) -s -C $(KDIR) SUBDIRS=$(PWD) $(ARCH_UM) dep
+ @$(MAKE) -s -C $(KDIR) SUBDIRS=$(DRBDSRC) $(ARCH_UM) dep
@echo "done."
clean:
@@ -119,7 +123,8 @@
distclean: clean
- install:
+ ifeq ($(PATCHLEVEL),4)
+ install:
@if ! [ -e drbd.o ] ; then \
echo "No drbd.o: nothing to install??"; false ; \
fi
@@ -127,11 +132,18 @@
install -d $(PREFIX)lib/modules/$(KERNELRELEASE)/$(MODSUBDIR)
install -m 644 drbd.o $(PREFIX)lib/modules/$(KERNELRELEASE)/$(MODSUBDIR)
install -d $(PREFIX)var/lib/drbd
- ifeq ($(shell uname -r),$(KERNELRELEASE))
+ ifeq ($(shell uname -r),$(KERNELRELEASE))
/sbin/depmod -a || depmod -e drbd.o 2>&1 >/dev/null || true
- else
+ else
[ -e $(LINUX)/System.map ] && \
/sbin/depmod -F $(LINUX)/System.map -e ./drbd.o 2>&1 >/dev/null || true
+ endif
+ else
+ install:
+ @if ! [ -e drbd.ko ] ; then \
+ echo "No drbd.ko: nothing to install??"; false ; \
+ fi
+ @echo "TODO install drbd.ko"
endif
depmod:
===================================================================
RCS file: /var/lib/cvs/drbd/drbd/drbd/Attic/drbd_actlog.c,v
retrieving revision 1.1.2.66
retrieving revision 1.1.2.67
diff -u -3 -r1.1.2.66 -r1.1.2.67
--- drbd_actlog.c 3 Feb 2004 13:02:34 -0000 1.1.2.66
+++ drbd_actlog.c 3 Feb 2004 13:22:07 -0000 1.1.2.67
@@ -440,7 +440,7 @@
if(likely(rv)) lc_del(mdev->act_log,al_ext);
spin_unlock_irq(&mdev->al_lock);
- if(unlikely(!rv) INFO("Waiting for extent in drbd_al_shrink()\n");
+ if(unlikely(!rv)) INFO("Waiting for extent in drbd_al_shrink()\n");
return rv;
}