Whamcloud - gitweb
f677548c8faccdc4376e7088efa1d262e2e0c898
[fs/lustre-release.git] / lustre / obdfs / Makefile
1 #
2 # Makefile 1.00 Peter Braam <braam@cs.cmu.edu>
3 #
4
5 include ../config.mk
6
7 MODDIR = $(PREFIX)/lib/modules/$(UTS_RELEASE)
8
9 ifndef CFLAGS
10 # Don't remove "-O2" or bad things will happen!
11 KFLAGS = -O2 -Wall -Wstrict-prototypes  -pipe -I../obd
12 endif
13
14 CPPFLAGS = $(PCDEBUG) -D__KERNEL__ -DMODULE -I../include \
15            -I. -I$(LINUX)/include $(SMPFLAG)
16 COFLAGS = -kv
17
18 ifeq ($(CONFIG_MODVERSIONS),"y")
19 CFLAGS= $(KFLAGS) $(MFLAG)
20 else 
21 CFLAGS= $(KFLAGS)
22 endif
23
24 SRCS=file.c dir.c sysctl.c super.c rw.c namei.c # symlink.c
25 OBJS=$(SRCS:%.c=%.o)
26
27 MODULES = obdfs.o
28
29 all:    ../.prereq.ok kcheck $(MODULES) 
30
31 showvar:
32         @echo CFLAGS $(CFLAGS)
33         @echo CPPFLAGS $(CPPFLAGS)
34         @echo MODDIR $(MODDIR)
35         @echo UTS_RELEASE $(UTS_RELEASE)
36         @echo SRCS $(SRCS)
37         @echo OBJS $(OBJS)
38
39 clean:
40         rm -f core core.* *.o *.d .*.o *.s *.a *~ .depend .depfiles/*.d
41
42 MODDIR = $(PREFIX)/lib/modules/$(UTS_RELEASE)
43
44 install: $(MODULES) ../.prereq.ok kcheck
45         -mkdir -p $(MODDIR)/fs
46         install -o root -g root -m 644 $(MODULES) $(MODDIR)/fs/
47
48 # Stuff to automatically maintain dependency files
49
50 .c.o:
51         $(CC) -MD $(CFLAGS) $(CPPFLAGS) -c $<
52         @mkdir -p .depfiles ; mv $*.d .depfiles
53
54 kcheck:
55         @. ../config.out ; \
56         if [ "$$CHECK" != "" ] ; then \
57             if [ "`cksum < $$CHECK`" != "$$CKSUM" ] ; then \
58                 /bin/echo -n "Kernel configuration has changed." ; \
59                 /bin/echo "  Please re-run 'make config'." ; \
60                 exit 1 ; \
61             fi ; \
62         fi
63
64 obdfs.o: $(OBJS)
65         $(LD) -m "`ld --help | awk '/supported emulations/ {print $$4}'`" -r -o $@ $(OBJS)
66
67 -include $(SRCS:%.c=.depfiles/%.d)