1 | DebWrt patch subsystem to patch OpenWrt |
---|
2 | |
---|
3 | Reworked by ehem since r349. Thanks! |
---|
4 | |
---|
5 | all/ Patches that apply to all branches of OpenWrt |
---|
6 | trunk/ Patches that apply only to OpenWrt trunk |
---|
7 | backfire/ Patches that apply only to OpenWrt backfire branch |
---|
8 | |
---|
9 | Patches in these directories must have filenames of the form: |
---|
10 | |
---|
11 | <nnn>_<desc> |
---|
12 | Apply patch to all revisions |
---|
13 | <nnn>[-<branch>][-[<first>]:[<last>]]_<desc> |
---|
14 | The portions in brackets [] are optional. If present, <branch> will |
---|
15 | cause the patch to only be applied to the indicated branch of OpenWrt, |
---|
16 | "all" will make it applIy to all branches. <first> and <last> are used |
---|
17 | to indicate an inclusive range of OpenWrt revisions which the patch |
---|
18 | applies to. If <last> is omitted, it will be applied to all revisions |
---|
19 | after <first>. If <first> is omitted, it will be applied to all |
---|
20 | revisions before <last>. If <first> equals <last>, it will be applied |
---|
21 | to that single revision. If <first> is greater than <last>, it will |
---|
22 | never be used. |
---|
23 | |
---|
24 | |
---|
25 | <nnn> is used to set order of application. Lower numbered patches are applied |
---|
26 | first. The ordering is done by running the list of patches through |
---|
27 | `sort`, as a result, "1000_foo" will be done before "200_bar". Note that |
---|
28 | all patches in all patch directories are listed, sorted and then applied! |
---|
29 | |
---|
30 | <desc> contains a functional description of the patch. Usually separated by |
---|
31 | underscores. |
---|
32 | |
---|
33 | Minor technical note: The script is actually trying to parse everything up to |
---|
34 | the first underscore. Everything after that is ignored. |
---|
35 | |
---|
36 | |
---|
37 | Patches are applied inside the checked out OpenWRT using `patch -p0`. Patches |
---|
38 | directly from other sources may need to be adjusted to match this (the command |
---|
39 | `sed -e's/^\(\(+++\)\|\(---\)\) [^\/]*\//\1 /' -i` will do this). |
---|
40 | |
---|
41 | |
---|
42 | Patch make targets |
---|
43 | ------------------ |
---|
44 | make openwrt/patch - Exit when a patch fails |
---|
45 | maken openwrt/unpatch - Exit when an unpatch fails |
---|
46 | make openwrt/patch/force - Try to apply all patches |
---|
47 | maken openwrt/unpatch/force - Try to unapply all patches |
---|
48 | |
---|
49 | The force options are very usefull when developping. |
---|
50 | |
---|
51 | |
---|
52 | Create new patch example |
---|
53 | ------------------------ |
---|
54 | cd build/openwrt-<...>/ |
---|
55 | wget -O packages/broadcom-wl/patches/999_remove_IRWF_SAMPLE_RANDOM \ |
---|
56 | https://dev.openwrt.org/raw-attachment/ticket/12248/remove_IRWF_SAMPLE_RANDOM.patch |
---|
57 | diff -Nu packages/broadcom-wl/patchesnew/999_remove_IRWF_SAMPLE_RANDOM \ |
---|
58 | packages/broadcom-wl/patches/999_remove_IRWF_SAMPLE_RANDOM \ |
---|
59 | > ../../030-33559:_broadcom-wl_remove_IRWF_SAMPLE_RANDOM.patch |
---|
60 | |
---|