backports: add full kernel integration support
This enables support for using the backports project
to integrate device drivers from a future version of Linux
into an older version of Linux. What you end up seeing is
a backports submenu when configuring your kernel and the
ability to select specific device drivers from subsystems
supported through the Linux backports project.
At this time enabling one device driver from a future version
of Linux will require using only the latest version of the
subsystem modules and other subsystem drivers. For example
enabling cfg80211 and mac80211 from a future version of Linux
will require you to only use future version of the respective
device drivers. In order to enable the backported version of
802.11 drivers for example, you will have to enable first:
Networking support -->
Wireless -->
But under that menu disable all options, then jump to the backports
submenu to now enable:
Backports -->
cfg80211
mac80211
Wireless LAN --->
etc
You build these device drivers modular or built-in to the kernel.
Integration support requires only slight modifications to the original
kernel sources, one to the top level Kconfig to add our entry, and also
the top level Makefile to enable backports code to be part of the
built-in vmlinux.
Support for integration takes advantage over the existing infrastructure
added by Johannes to keep track of each indvidual change done by the
backports infrastructure if --gitdebug is used.
mcgrof@drvbp1 ~/backports (git::master)$ time ./gentree.py --clean \
/home/mcgrof/linux-next /home/mcgrof/build/backports-
20141023
Copy original source files ...
Applying patches from patches to /home/mcgrof/build/backports-
20141023
...
Modify Kconfig tree ...
Rewrite Makefiles and Kconfig files ...
Done!
real 1m27.942s
user 13m23.752s
sys 0m47.608s
1 3.0.101 [ OK ]
2 3.1.10 [ OK ]
3 3.2.62 [ OK ]
4 3.3.8 [ OK ]
5 3.4.104 [ OK ]
6 3.5.7 [ OK ]
7 3.6.11 [ OK ]
8 3.7.10 [ OK ]
9 3.8.13 [ OK ]
10 3.9.11 [ OK ]
11 3.10.58 [ OK ]
12 3.11.10 [ OK ]
13 3.12.31 [ OK ]
14 3.13.11 [ OK ]
15 3.14.22 [ OK ]
16 3.15.10 [ OK ]
17 3.16.6 [ OK ]
18 3.17.1 [ OK ]
19 3.18-rc1 [ OK ]
real 42m44.838s
user 1190m5.092s
sys 140m37.208s
Signed-off-by: Luis R. Rodriguez <mcgrof@suse.com>