export PWD := $(shell pwd)
ifeq ($(KERNELRELEASE),)
+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
+# for internal stuff. For other compatability projects this
+# would be the git describe of the base tree you are
+# working with.
+export COMPAT_BASE_TREE_VERSION := "next-20100517"
export COMPAT_VERSION := $(shell git describe)
endif
NOSTDINC_FLAGS := -I$(M)/include/ \
-include $(M)/include/linux/compat-2.6.h \
$(CFLAGS) \
+ -DCOMPAT_BASE_TREE=\"$(COMPAT_BASE_TREE)\" \
+ -DCOMPAT_BASE_TREE_VERSION=\"$(COMPAT_BASE_TREE_VERSION)\" \
-DCOMPAT_VERSION=\"$(COMPAT_VERSION)\"
modules:
MODULE_DESCRIPTION("Kernel compatibility module");
MODULE_LICENSE("GPL");
+#ifndef COMPAT_BASE_TREE
+#error "You need a COMPAT_BASE_TREE"
+#endif
+
+#ifndef COMPAT_BASE_TREE_VERSION
+#error "You need a COMPAT_BASE_TREE_VERSION"
+#endif
+
#ifndef COMPAT_VERSION
#error "You need a COMPAT_VERSION"
#endif
+static char *compat_base_tree = COMPAT_BASE_TREE;
+static char *compat_base_tree_version = COMPAT_BASE_TREE_VERSION;
static char *compat_version = COMPAT_VERSION;
+module_param(compat_base_tree, charp, 0400);
+MODULE_PARM_DESC(compat_base_tree,
+ "The upstream tree used as base for this backport");
+
+module_param(compat_base_tree_version, charp, 0400);
+MODULE_PARM_DESC(compat_base_tree_version,
+ "The git-describe of the upstream base tree");
+
module_param(compat_version, charp, 0400);
-MODULE_PARM_DESC(compat_version, "Version of the kernel compat backport");
+MODULE_PARM_DESC(compat_version,
+ "Version of the kernel compat backport work");
static int __init compat_init(void)
{
/* pm-qos for kernels <= 2.6.24, this is a no-op on newer kernels */
compat_pm_qos_power_init();
- printk(KERN_INFO "Generic kernel compatibility enabled based on "
+ printk(KERN_INFO "Kernel backport release: "
COMPAT_VERSION
"\n");
+ printk(KERN_INFO "Backport based on "
+ COMPAT_BASE_TREE " " COMPAT_BASE_TREE_VERSION
+ "\n");
return 0;
}