Added support for compiling scst-srpt on a system where the OFED InfiniBand
[mirror/scst/.git] / srpt / Makefile
1 #
2 # Makefile for the Linux kernel device drivers.
3 #
4 # Note! Dependencies are done automagically by 'make dep', which also
5 # removes any old dependencies. DON'T put your own dependencies here
6 # unless it's something special (not a .c file).
7 #
8 # Note 2! The CFLAGS definitions are now in the main makefile.
9
10 SCST_DIR := $(shell pwd)/../scst/src
11 SUBDIRS := $(shell pwd)
12
13 ifeq ($(KVER),)
14   ifeq ($(KDIR),)
15     KVER = $(shell uname -r)
16     KDIR ?= /lib/modules/$(KVER)/build
17   else
18     KVER = $$KERNELRELEASE
19   endif
20 else
21   KDIR ?= /lib/modules/$(KVER)/build
22 endif
23
24 all: Modules.symvers Module.symvers
25         $(MAKE) -C $(KDIR) SUBDIRS=$(shell pwd)/src modules
26
27 install: all src/ib_srpt.ko
28         @eval `sed -n 's/#define UTS_RELEASE /KERNELRELEASE=/p' $(KDIR)/include/linux/version.h $(KDIR)/include/linux/utsrelease.h 2>/dev/null`; \
29         install -vD -m 644 src/ib_srpt.ko \
30         $(DESTDIR)$(INSTALL_MOD_PATH)/lib/modules/$(KVER)/extra/ib_srpt.ko
31         -/sbin/depmod -aq $(KVER)
32
33 ifneq ($(shell ls $(SCST_DIR)/Modules.symvers 2>/dev/null),)
34 Modules.symvers: $(SCST_DIR)/Modules.symvers
35         (                                                    \
36           cat $(SCST_DIR)/Modules.symvers;                   \
37           if [ -e /usr/src/ofa_kernel/Module.symvers ]; then \
38             cat /usr/src/ofa_kernel/Module.symvers;          \
39           fi                                                 \
40         ) >src/Modules.symvers
41 else
42 .PHONY: Modules.symvers
43 endif
44
45 # The file Modules.symvers has been renamed in the 2.6.18 kernel to
46 # Module.symvers.
47 ifneq ($(shell ls $(SCST_DIR)/Module.symvers 2>/dev/null),)
48 Module.symvers: $(SCST_DIR)/Module.symvers
49         (                                                    \
50           cat $(SCST_DIR)/Module.symvers;                    \
51           if [ -e /usr/src/ofa_kernel/Module.symvers ]; then \
52             cat /usr/src/ofa_kernel/Module.symvers;          \
53           fi                                                 \
54         ) >src/Module.symvers
55 else
56 .PHONY: Module.symvers
57 endif
58
59 clean:
60         $(MAKE) -C $(KDIR) SUBDIRS=$(shell pwd)/src clean
61         rm -f src/Modules.symvers src/Module.symvers src/Module.markers \
62                 src/modules.order
63
64 extraclean: clean
65
66 .PHONY: all install clean extraclean