package/linux-backports: new package

Backports provide drivers released on newer kernels backported for usage
on older kernels.

There are two versions of linux-backports: one that supports Linux
kernels >= 3.0 and one supports even older kernels. We're only packaging
the version that supports >= 3.0.

linux-backports needs to have access to the kernel's .config to extract
information it reintroduces as blind options in generated Kconfig
snippets for its own menuconfig. However, Buildroot offers no way to
express this kind of dependency.

So we need to hand-write a dependency from linux-backports' own .config
to linux' .config .

Since linux.mk has not already been sourced by the time we source
linux-backports.mk, we are missing the definition for LINUX_DIR, so we
can not use it our rule.

Fortunately, make provides so-called "secondary expansion", by which
rules which dependencies include a $$-dereferenced variable wil lbe
re-evaluated after all the rest of the Makefiles have been parsed.

So, we use that secondary expansion to post-pone evaluation of that
dependency so we can use LINUX_DIR.

Note: reconstructing LINUX_DIR by hand does not work, because of the
custom archives, git tree, or override-srcdir.

Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Reviewed-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
diff --git a/package/Config.in b/package/Config.in
index 070ec6a..2697e56 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -372,6 +372,7 @@
 	source "package/kbd/Config.in"
 	source "package/lcdproc/Config.in"
 	source "package/libump/Config.in"
+	source "package/linux-backports/Config.in"
 	source "package/lirc-tools/Config.in"
 	source "package/lm-sensors/Config.in"
 	source "package/lshw/Config.in"