Removed extra definitions
[~tnikolova/compat/.git] / Makefile
index 423d1ed..05a7d72 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -7,9 +7,8 @@ export KLIB:=          /lib/modules/$(shell uname -r)
 endif
 export KLIB_BUILD ?=    $(KLIB)/build
 
-export PWD := $(shell pwd)
-
 ifeq ($(KERNELRELEASE),)
+export PWD := $(shell pwd)
 export COMPAT_BASE_TREE := "linux-next.git"
 # For this specific tree this is only relevant in
 # terms of the last time we synched code up with upstream
@@ -19,6 +18,10 @@ export COMPAT_BASE_TREE := "linux-next.git"
 export COMPAT_BASE_TREE_VERSION := "next-20100517"
 export COMPAT_VERSION := $(shell git describe)
 
+# This is used to annotate what version of
+# compat.git was used.
+export COMPAT_BASE := $(shell git describe)
+
 # to check config and compat autoconf
 export COMPAT_CONFIG=$(PWD)/.config
 export COMPAT_AUTOCONF=$(PWD)/include/linux/compat_autoconf.h
@@ -34,20 +37,20 @@ else
 NOSTDINC_FLAGS := -I$(M)/include/ \
        -include $(M)/include/linux/compat-2.6.h \
        $(CFLAGS) \
+       -DCOMPAT_BASE="\"$(COMPAT_BASE)\"" \
        -DCOMPAT_BASE_TREE="\"$(COMPAT_BASE_TREE)\"" \
        -DCOMPAT_BASE_TREE_VERSION="\"$(COMPAT_BASE_TREE_VERSION)\"" \
        -DCOMPAT_PROJECT="\"Generic kernel\"" \
        -DCOMPAT_VERSION="\"$(COMPAT_VERSION)\""
 
-endif
-
-# Recursion lets us ensure we get this file included.
-# Trick is to run make -C $(PWD) modules later.
+# Technicallay we can require the inclusion of COMPAT_CONFIG for
+# all targets except clean, so avoid the warnings at clean time.
 -include $(COMPAT_CONFIG)
+endif
 
 obj-y += compat/
 
-all: $(COMPAT_CONFIG)
+all: modules
 
 modules: $(COMPAT_CONFIG) $(COMPAT_AUTOCONF)
        $(MAKE) -C $(KLIB_BUILD) M=$(PWD) modules
@@ -57,14 +60,12 @@ install: modules
        $(MAKE) -C $(KLIB_BUILD) M=$(PWD) $(KMODDIR_ARG) $(KMODPATH_ARG) \
                modules_install
        depmod -a
-       $(MAKE) -C $(KLIB_BUILD) M=$(PWD) clean
 
-$(COMPAT_AUTOCONF): ;
+$(COMPAT_AUTOCONF): $(COMPAT_CONFIG)
+       +@$(PWD)/scripts/gen-compat-autoconf.sh $(COMPAT_CONFIG) > $(COMPAT_AUTOCONF)
 
 $(COMPAT_CONFIG):
        +@$(PWD)/scripts/gen-compat-config.sh > $(COMPAT_CONFIG)
-       +@$(PWD)/scripts/gen-compat-autoconf.sh $(COMPAT_CONFIG) > $(COMPAT_AUTOCONF)
-       @$(MAKE) -C $(PWD) modules
 
 install: modules
 
@@ -74,4 +75,4 @@ clean:
 clean-files := Module.symvers modules.order Module.markers compat/modules.order
 clean-files += modules $(COMPAT_CONFIG) $(COMPAT_AUTOCONF)
 
-.PHONY: all install clean
+.PHONY: all install clean modules Makefile