OpenWrt – Blame information for rev 1
?pathlinks?
Rev | Author | Line No. | Line |
---|---|---|---|
1 | office | 1 | --- a/Makefile |
2 | +++ b/Makefile |
||
3 | @@ -5,7 +5,7 @@ |
||
4 | ifeq ($(KERNELRELEASE),) |
||
5 | |||
6 | MAKEFLAGS += --no-print-directory |
||
7 | -SHELL := /bin/bash |
||
8 | +SHELL := /usr/bin/env bash |
||
9 | BACKPORT_DIR := $(shell pwd) |
||
10 | |||
11 | KMODDIR ?= updates |
||
12 | @@ -19,6 +19,7 @@ KLIB_BUILD ?= $(KLIB)/build/ |
||
13 | KERNEL_CONFIG := $(KLIB_BUILD)/.config |
||
14 | KERNEL_MAKEFILE := $(KLIB_BUILD)/Makefile |
||
15 | CONFIG_MD5 := $(shell md5sum $(KERNEL_CONFIG) 2>/dev/null | sed 's/\s.*//') |
||
16 | +STAMP_KERNEL_CONFIG := .kernel_config_md5_$(CONFIG_MD5) |
||
17 | |||
18 | export KLIB KLIB_BUILD BACKPORT_DIR KMODDIR KMODPATH_ARG |
||
19 | |||
20 | @@ -36,7 +37,8 @@ mrproper: |
||
21 | @rm -f .kernel_config_md5 Kconfig.versions Kconfig.kernel |
||
22 | @rm -f backport-include/backport/autoconf.h |
||
23 | |||
24 | -.DEFAULT: |
||
25 | +.SILENT: $(STAMP_KERNEL_CONFIG) |
||
26 | +$(STAMP_KERNEL_CONFIG): |
||
27 | @set -e ; test -f local-symbols || ( \ |
||
28 | echo "/--------------" ;\ |
||
29 | echo "| You shouldn't run make in the backports tree, but only in" ;\ |
||
30 | @@ -60,57 +62,61 @@ mrproper: |
||
31 | echo "| (that isn't currently running.)" ;\ |
||
32 | echo "\\--" ;\ |
||
33 | false) |
||
34 | - @set -e ; if [ "$$(cat .kernel_config_md5 2>/dev/null)" != "$(CONFIG_MD5)" ] ;\ |
||
35 | - then \ |
||
36 | - echo -n "Generating local configuration database from kernel ..." ;\ |
||
37 | - grep -v -f local-symbols $(KERNEL_CONFIG) | grep = | ( \ |
||
38 | - while read l ; do \ |
||
39 | - if [ "$${l:0:7}" != "CONFIG_" ] ; then \ |
||
40 | - continue ;\ |
||
41 | - fi ;\ |
||
42 | - l=$${l:7} ;\ |
||
43 | - n=$${l%%=*} ;\ |
||
44 | - v=$${l#*=} ;\ |
||
45 | - if [ "$$v" = "m" ] ; then \ |
||
46 | - echo config $$n ;\ |
||
47 | - echo ' tristate' ;\ |
||
48 | - elif [ "$$v" = "y" ] ; then \ |
||
49 | - echo config $$n ;\ |
||
50 | - echo ' bool' ;\ |
||
51 | - else \ |
||
52 | - continue ;\ |
||
53 | - fi ;\ |
||
54 | - echo " default $$v" ;\ |
||
55 | - echo "" ;\ |
||
56 | - done \ |
||
57 | - ) > Kconfig.kernel ;\ |
||
58 | - kver=$$($(MAKE) --no-print-directory -C $(KLIB_BUILD) kernelversion | \ |
||
59 | - sed 's/^\(\([3-4]\|2\.6\)\.[0-9]\+\).*/\1/;t;d') ;\ |
||
60 | - test "$$kver" != "" || echo "Kernel version parse failed!" ;\ |
||
61 | - test "$$kver" != "" ;\ |
||
62 | - kvers="$$(seq 14 39 | sed 's/^/2.6./')" ;\ |
||
63 | - kvers="$$kvers $$(seq 0 19 | sed 's/^/3./')" ;\ |
||
64 | - kvers="$$kvers $$(seq 0 99 | sed 's/^/4./')" ;\ |
||
65 | - print=0 ;\ |
||
66 | - for v in $$kvers ; do \ |
||
67 | - if [ "$$print" = "1" ] ; then \ |
||
68 | - echo config KERNEL_$$(echo $$v | tr . _) ;\ |
||
69 | - echo " def_bool y" ;\ |
||
70 | - fi ;\ |
||
71 | - if [ "$$v" = "$$kver" ] ; then print=1 ; fi ;\ |
||
72 | - done > Kconfig.versions ;\ |
||
73 | - # RHEL as well, sadly we need to grep for it ;\ |
||
74 | - RHEL_MAJOR=$$(grep '^RHEL_MAJOR' $(KERNEL_MAKEFILE) | \ |
||
75 | - sed 's/.*=\s*\([0-9]*\)/\1/;t;d') ;\ |
||
76 | - RHEL_MINOR=$$(grep '^RHEL_MINOR' $(KERNEL_MAKEFILE) | \ |
||
77 | - sed 's/.*=\s*\([0-9]*\)/\1/;t;d') ;\ |
||
78 | - for v in $$(seq 0 $$RHEL_MINOR) ; do \ |
||
79 | - echo config BACKPORT_RHEL_KERNEL_$${RHEL_MAJOR}_$$v ;\ |
||
80 | - echo " def_bool y" ;\ |
||
81 | - done >> Kconfig.versions ;\ |
||
82 | - echo " done." ;\ |
||
83 | - fi ;\ |
||
84 | - echo "$(CONFIG_MD5)" > .kernel_config_md5 |
||
85 | + @rm -f .kernel_config_md5_* |
||
86 | + @touch $@ |
||
87 | + |
||
88 | +Kconfig.kernel: $(STAMP_KERNEL_CONFIG) local-symbols |
||
89 | + @printf "Generating local configuration database from kernel ..." |
||
90 | + @grep -v -f local-symbols $(KERNEL_CONFIG) | grep = | ( \ |
||
91 | + while read l ; do \ |
||
92 | + if [ "$${l:0:7}" != "CONFIG_" ] ; then \ |
||
93 | + continue ;\ |
||
94 | + fi ;\ |
||
95 | + l=$${l:7} ;\ |
||
96 | + n=$${l%%=*} ;\ |
||
97 | + v=$${l#*=} ;\ |
||
98 | + if [ "$$v" = "m" ] ; then \ |
||
99 | + echo config $$n ;\ |
||
100 | + echo ' tristate' ;\ |
||
101 | + elif [ "$$v" = "y" ] ; then \ |
||
102 | + echo config $$n ;\ |
||
103 | + echo ' bool' ;\ |
||
104 | + else \ |
||
105 | + continue ;\ |
||
106 | + fi ;\ |
||
107 | + echo " default $$v" ;\ |
||
108 | + echo "" ;\ |
||
109 | + done \ |
||
110 | + ) > $@ |
||
111 | + @echo " done." |
||
112 | + |
||
113 | +Kconfig.versions: Kconfig.kernel |
||
114 | + @kver=$$($(MAKE) --no-print-directory -C $(KLIB_BUILD) kernelversion | \ |
||
115 | + sed 's/^\(\([3-4]\|2\.6\)\.[0-9]\+\).*/\1/;t;d') ;\ |
||
116 | + test "$$kver" != "" || echo "Kernel version parse failed!" ;\ |
||
117 | + test "$$kver" != "" ;\ |
||
118 | + kvers="$$(seq 14 39 | sed 's/^/2.6./')" ;\ |
||
119 | + kvers="$$kvers $$(seq 0 19 | sed 's/^/3./')" ;\ |
||
120 | + kvers="$$kvers $$(seq 0 99 | sed 's/^/4./')" ;\ |
||
121 | + print=0 ;\ |
||
122 | + for v in $$kvers ; do \ |
||
123 | + if [ "$$print" = "1" ] ; then \ |
||
124 | + echo config KERNEL_$$(echo $$v | tr . _) ;\ |
||
125 | + echo " def_bool y" ;\ |
||
126 | + fi ;\ |
||
127 | + if [ "$$v" = "$$kver" ] ; then print=1 ; fi ;\ |
||
128 | + done > $@ |
||
129 | + @RHEL_MAJOR=$$(grep '^RHEL_MAJOR' $(KERNEL_MAKEFILE) | \ |
||
130 | + sed 's/.*=\s*\([0-9]*\)/\1/;t;d') ;\ |
||
131 | + RHEL_MINOR=$$(grep '^RHEL_MINOR' $(KERNEL_MAKEFILE) | \ |
||
132 | + sed 's/.*=\s*\([0-9]*\)/\1/;t;d') ;\ |
||
133 | + for v in $$(seq 0 $$RHEL_MINOR) ; do \ |
||
134 | + echo config BACKPORT_RHEL_KERNEL_$${RHEL_MAJOR}_$$v ;\ |
||
135 | + echo " def_bool y" ;\ |
||
136 | + done >> $@ |
||
137 | + |
||
138 | +.DEFAULT: |
||
139 | + @$(MAKE) Kconfig.versions |
||
140 | @$(MAKE) -f Makefile.real "$@" |
||
141 | |||
142 | .PHONY: defconfig-help |
||
143 | --- a/Makefile.real |
||
144 | +++ b/Makefile.real |
||
145 | @@ -59,7 +59,7 @@ defconfig-%:: |
||
146 | |||
147 | backport-include/backport/autoconf.h: .config Kconfig.versions Kconfig.kernel |
||
148 | @$(MAKE) oldconfig |
||
149 | - @echo -n "Building backport-include/backport/autoconf.h ..." |
||
150 | + @printf "Building backport-include/backport/autoconf.h ..." |
||
151 | @grep -f local-symbols .config | ( \ |
||
152 | echo "#ifndef COMPAT_AUTOCONF_INCLUDED" ;\ |
||
153 | echo "#define COMPAT_AUTOCONF_INCLUDED" ;\ |
||
154 | @@ -80,7 +80,12 @@ backport-include/backport/autoconf.h: .c |
||
155 | esac ;\ |
||
156 | done ;\ |
||
157 | echo "#endif /* COMPAT_AUTOCONF_INCLUDED */" ;\ |
||
158 | - ) > backport-include/backport/autoconf.h |
||
159 | + ) > $@.new |
||
160 | + @if cmp -s $@ $@.new; then \ |
||
161 | + rm -f $@.new; \ |
||
162 | + else \ |
||
163 | + mv $@.new $@; \ |
||
164 | + fi |
||
165 | @echo " done." |
||
166 | |||
167 | .PHONY: modules |