-Wno-missing-field-initializers added. Small cleanup.
[mirror/scst/.git] / scst_local / Makefile
1 #
2 # A Makefile for the scst-local ...
3 #
4
5 #SCST_INC_DIR := /usr/local/include/scst
6 #SCST_DIR := $(SCST_INC_DIR)
7 SCST_INC_DIR    := $(SUBDIRS)/../scst/include/
8 SCST_DIR        := $(shell pwd)/../scst/src
9
10 EXTRA_CFLAGS    += -I$(SCST_INC_DIR) -I$(SCST_DIR)
11 EXTRA_CFLAGS    +=  -Wextra -Wno-unused-parameter -Wno-missing-field-initializers
12
13 EXTRA_CFLAGS    += -DCONFIG_SCST_EXTRACHECKS
14
15 #EXTRA_CFLAGS   += -DCONFIG_SCST_TRACING
16 EXTRA_CFLAGS    += -DCONFIG_SCST_DEBUG
17
18 ifeq ($(KVER),)
19   ifeq ($(KDIR),)
20     KDIR := /lib/modules/$(shell uname -r)/build
21   endif
22 else
23   KDIR := /lib/modules/$(KVER)/build
24 endif
25
26 ifneq ($(KERNELRELEASE),)
27 obj-m   := scst_local.o
28 else
29
30 all: Modules.symvers Module.symvers
31         $(MAKE) -C $(KDIR) SUBDIRS=$(shell pwd) BUILD_INI=m
32
33 tgt: Modules.symvers Module.symvers
34         $(MAKE) -C $(KDIR) SUBDIRS=$(shell pwd) BUILD_INI=m
35
36 install: all scst_local.ko
37         $(MAKE) -C $(KDIR) SUBDIRS=$(shell pwd) BUILD_INI=m \
38                 modules_install
39         -/sbin/depmod -aq $(KVER)
40
41 SCST_MOD_VERS := $(shell ls $(SCST_DIR)/Modules.symvers 2>/dev/null)
42 ifneq ($(SCST_MOD_VERS),)
43 Modules.symvers: $(SCST_DIR)/Modules.symvers
44         cp $(SCST_DIR)/Modules.symvers .
45 else
46 .PHONY: Modules.symvers
47 endif
48
49 # It's renamed in 2.6.18
50 SCST_MOD_VERS := $(shell ls $(SCST_DIR)/Module.symvers 2>/dev/null)
51 ifneq ($(SCST_MOD_VERS),)
52 Module.symvers: $(SCST_DIR)/Module.symvers
53         cp $(SCST_DIR)/Module.symvers .
54 else
55 .PHONY: Module.symvers
56 endif
57
58 uninstall:
59         rm -f $(INSTALL_DIR)/scst_local.kp
60         -/sbin/depmod -a $(KVER)
61 endif
62
63 clean:
64         @$(MAKE) -C $(KDIR) M=$(PWD) clean
65         @$(RM) tags Modules.symvers module.symvers Module.markers modules.order
66
67 extraclean: clean
68
69 .PHONY: all tgt install uninstall clean extraclean