1 #############################################################
4 # Linux 2.4 kernel target for the OpenWRT project
6 # patches are sorted by numbers
7 # 0xx needed patches for board, cpu, filesystem
8 # 1xx addon patches for new features (netfilter, ebtables, cifs,..)
9 # 2xx compile fixes, driver fixes
11 #############################################################
13 include $(TOPDIR
)/rules.mk
17 MODULES_SUBDIR
:=lib
/modules
/$(LINUX_VERSION
)
18 LINUX_KCONFIG
:=.
/config
/$(BOARD
)
19 LINUX_BUILD_DIR
:=$(BUILD_DIR
)/linux-2.4
-$(BOARD
)
20 LINUX_TARGET_DIR
:=$(LINUX_BUILD_DIR
)/root
21 LINUX_KERNEL
:=$(LINUX_BUILD_DIR
)/vmlinux
22 LINUX_KARCH
:=$(shell echo
$(ARCH
) | sed
-e
's/i[3-9]86/i386/' \
28 LINUX_BINARY_DRIVER_SITE
:= http
://openwrt.org
/downloads
/sources
/
29 LINUX_SOURCE
:= linux-
$(LINUX_VERSION
).
tar.bz2
30 LINUX_SOURCE_DIR
:= $(LINUX_BUILD_DIR
)/linux-
$(LINUX_VERSION
)
31 MODULES_DIR
:= $(LINUX_BUILD_DIR
)/modules
/$(MODULES_SUBDIR
)
32 TARGET_MODULES_DIR
:= $(TARGET_DIR
)/lib
/modules
/$(LINUX_VERSION
)
33 IPKG_KERNEL
:=IPKG_TMP
=$(BUILD_DIR
)/tmp IPKG_INSTROOT
=$(LINUX_TARGET_DIR
) IPKG_CONF_DIR
=$(LINUX_BUILD_DIR
) $(SCRIPT_DIR
)/ipkg
-force-defaults
-force-depends
35 PKG_BUILD_DIR
:= $(LINUX_BUILD_DIR
)/linux-modules
38 KERNEL_IPKG
:=$(LINUX_BUILD_DIR
)/kernel_
$(LINUX_VERSION
)-$(BOARD
)-$(PKG_RELEASE
)_
$(ARCH
).ipk
39 KERNEL_IDIR
:=$(LINUX_BUILD_DIR
)/kernel-ipkg
41 KPKG_MAKEOPTS
:= IPKG
="$(IPKG_KERNEL)" \
43 TARGET_DIR
="$(LINUX_TARGET_DIR)" \
44 BUILD_DIR
="$(LINUX_BUILD_DIR)" \
45 KERNEL_DIR
="$(LINUX_SOURCE_DIR)" \
46 LINUX_VERSION
="$(LINUX_VERSION)" \
47 KERNEL_RELEASE
="$(PKG_RELEASE)"
49 include $(LINUX_KCONFIG
)
51 INSTALL_TARGETS
:= $(KERNEL_IPKG
)
58 include ..
/netfilter.mk
60 # metapackage for compatibility ...
61 $(eval
$(call KMOD_template
,IPTABLES_EXTRA
,iptables-extra
,\
62 ,,kmod-ipt-conntrack kmod-ipt-extra kmod-ipt-filter kmod-ipt-ipopt kmod-ipt-ipsec kmod-ipt-nat kmod-ipt-nat-extra kmod-ipt-queue kmod-ipt-ulog
))
64 $(eval
$(call KMOD_template
,IPT_CONNTRACK
,ipt-conntrack
,\
65 $(foreach mod
,$(IPT_CONNTRACK-m
),$(MODULES_DIR
)/kernel
/net
/ipv4
/netfilter
/$(mod
).o
) \
67 $(eval
$(call KMOD_template
,IPT_EXTRA
,ipt-extra
,\
68 $(foreach mod
,$(IPT_EXTRA-m
),$(MODULES_DIR
)/kernel
/net
/ipv4
/netfilter
/$(mod
).o
) \
70 $(eval
$(call KMOD_template
,IPT_FILTER
,ipt-filter
,\
71 $(foreach mod
,$(IPT_FILTER-m
),$(MODULES_DIR
)/kernel
/net
/ipv4
/netfilter
/$(mod
).o
) \
73 $(eval
$(call KMOD_template
,IPT_IPOPT
,ipt-ipopt
,\
74 $(foreach mod
,$(IPT_IPOPT-m
),$(MODULES_DIR
)/kernel
/net
/ipv4
/netfilter
/$(mod
).o
) \
76 $(eval
$(call KMOD_template
,IPT_IPSEC
,ipt-ipsec
,\
77 $(foreach mod
,$(IPT_IPSEC-m
),$(MODULES_DIR
)/kernel
/net
/ipv4
/netfilter
/$(mod
).o
) \
79 $(eval
$(call KMOD_template
,IPT_NAT
,ipt-nat
,\
80 $(foreach mod
,$(IPT_NAT-m
),$(MODULES_DIR
)/kernel
/net
/ipv4
/netfilter
/$(mod
).o
) \
82 $(eval
$(call KMOD_template
,IPT_NAT_H323
,ipt-nat-h323
,\
83 $(foreach mod
,$(IPT_NAT_H323-m
),$(MODULES_DIR
)/kernel
/net
/ipv4
/netfilter
/$(mod
).o
) \
84 ,,,40,$(IPT_NAT_H323-m
)))
85 $(eval
$(call KMOD_template
,IPT_NAT_PPTP
,ipt-nat-pptp
,\
86 $(foreach mod
,$(IPT_NAT_PPTP-m
),$(MODULES_DIR
)/kernel
/net
/ipv4
/netfilter
/$(mod
).o
) \
87 ,,,40,$(IPT_NAT_PPTP-m
)))
88 $(eval
$(call KMOD_template
,IPT_NAT_RTSP
,ipt-nat-rtsp
,\
89 $(foreach mod
,$(IPT_NAT_RTSP-m
),$(MODULES_DIR
)/kernel
/net
/ipv4
/netfilter
/$(mod
).o
) \
90 ,,,40,$(IPT_NAT_RTSP-m
)))
91 $(eval
$(call KMOD_template
,IPT_NAT_EXTRA
,ipt-nat-extra
,\
92 $(foreach mod
,$(IPT_NAT_EXTRA-m
),$(MODULES_DIR
)/kernel
/net
/ipv4
/netfilter
/$(mod
).o
) \
93 ,,,40,$(IPT_NAT_EXTRA-m
)))
94 $(eval
$(call KMOD_template
,IPT_QUEUE
,ipt-queue
,\
95 $(foreach mod
,$(IPT_QUEUE-m
),$(MODULES_DIR
)/kernel
/net
/ipv4
/netfilter
/$(mod
).o
) \
97 $(eval
$(call KMOD_template
,IPT_ULOG
,ipt-ulog
,\
98 $(foreach mod
,$(IPT_ULOG-m
),$(MODULES_DIR
)/kernel
/net
/ipv4
/netfilter
/$(mod
).o
) \
101 $(eval
$(call KMOD_template
,IMQ
,imq
,\
102 $(MODULES_DIR
)/kernel
/net
/ipv4
/netfilter
/*IMQ
* \
103 $(MODULES_DIR
)/kernel
/drivers
/net
/imq.o \
105 $(eval
$(call KMOD_template
,IPIP
,ipip
,\
106 $(MODULES_DIR
)/kernel
/net
/ipv4
/ipip.o \
107 ,CONFIG_NET_IPIP
,kmod-ipip
))
109 $(eval
$(call KMOD_template
,IP6TABLES
,ip6tables
,\
110 $(MODULES_DIR
)/kernel
/net
/ipv6
/netfilter
/ip
*.o \
111 ,CONFIG_IP6_NF_IPTABLES
,kmod-ipv6
))
113 $(eval
$(call KMOD_template
,PCMCIA
,pcmcia
,\
114 $(MODULES_DIR
)/kernel
/drivers
/pcmcia
/*.o \
115 ,CONFIG_PCMCIA
,,40,pcmcia_core yenta_socket ds
))
116 $(eval
$(call KMOD_template
,PCMCIA_SERIAL
,pcmcia-serial
, \
117 $(MODULES_DIR
)/kernel
/drivers
/char
/pcmcia
/serial_cs.o \
118 ,CONFIG_PCMCIA_SERIAL_CS
))
119 $(eval
$(call KMOD_template
,B44
,b44
,\
120 $(MODULES_DIR
)/kernel
/drivers
/net
/b44.o \
122 $(eval
$(call KMOD_template
,ARPT
,arptables
,\
123 $(MODULES_DIR
)/kernel
/net
/ipv4
/netfilter
/arp
*.o \
124 ,CONFIG_IP_NF_ARPTABLES
))
125 $(eval
$(call KMOD_template
,EBT
,ebtables
,\
126 $(MODULES_DIR
)/kernel
/net
/bridge
/netfilter
/*.o \
127 ,CONFIG_BRIDGE_NF_EBTABLES
))
128 $(eval
$(call KMOD_template
,IPV6
,ipv6
,\
129 $(MODULES_DIR
)/kernel
/net
/ipv6
/ipv6.o \
130 ,CONFIG_IPV6
,,20,ipv6
))
131 $(eval
$(call KMOD_template
,CIFS
,cifs
,\
132 $(MODULES_DIR
)/kernel
/fs
/cifs
/cifs.o \
133 ,CONFIG_CIFS
,,30,cifs
))
134 $(eval
$(call KMOD_template
,NFS
,nfs
,\
135 $(MODULES_DIR
)/kernel
/fs
/lockd
/*.o \
136 $(MODULES_DIR
)/kernel
/fs
/nfs
/*.o \
137 $(MODULES_DIR
)/kernel
/net
/sunrpc
/*.o \
138 ,CONFIG_NFS_FS
,,30,sunrpc lockd nfs
))
139 $(eval
$(call KMOD_template
,USB
,usb-core
,\
140 $(MODULES_DIR
)/kernel
/drivers
/usb
/usbcore.o \
141 ,CONFIG_USB
,,50,usbcore
))
142 $(eval
$(call KMOD_template
,USB_UHCI
,usb-uhci
,\
143 $(MODULES_DIR
)/kernel
/drivers
/usb
/host
/uhci.o \
144 ,CONFIG_USB_UHCI_ALT
,kmod-usb-core
,60,uhci
))
145 $(eval
$(call KMOD_template
,USB_OHCI
,usb-ohci
,\
146 $(MODULES_DIR
)/kernel
/drivers
/usb
/host
/usb-ohci.o \
147 ,CONFIG_USB_OHCI
,kmod-usb-core
,60,usb-ohci
))
148 $(eval
$(call KMOD_template
,USB2
,usb2
,\
149 $(MODULES_DIR
)/kernel
/drivers
/usb
/host
/ehci-hcd.o \
150 ,CONFIG_USB_EHCI_HCD
,kmod-usb-core
,60,ehci-hcd
))
151 $(eval
$(call KMOD_template
,USB_STORAGE
,usb-storage
,\
152 $(MODULES_DIR
)/kernel
/drivers
/scsi
/*.o \
153 $(MODULES_DIR
)/kernel
/drivers
/usb
/storage
/*.o \
154 ,CONFIG_USB_STORAGE
,kmod-usb-core
,60,scsi_mod sd_mod usb-storage
))
155 $(eval
$(call KMOD_template
,USB_SERIAL
,usb-serial
,\
156 $(MODULES_DIR
)/kernel
/drivers
/usb
/serial
/usbserial.o \
157 ,CONFIG_USB_SERIAL
,kmod-usb-core
,60,usbserial
))
158 $(eval
$(call KMOD_template
,USB_SERIAL_BELKIN
,usb-serial-belkin
,\
159 $(MODULES_DIR
)/kernel
/drivers
/usb
/serial
/belkin_sa.o \
160 ,CONFIG_USB_SERIAL_BELKIN
,kmod-usb-serial
,61,belkin_sa
))
161 $(eval
$(call KMOD_template
,USB_SERIAL_FTDI
,usb-serial-ftdi
,\
162 $(MODULES_DIR
)/kernel
/drivers
/usb
/serial
/ftdi_sio.o \
163 ,CONFIG_USB_SERIAL_FTDI_SIO
,kmod-usb-serial
,61,ftdi_sio
))
164 $(eval
$(call KMOD_template
,USB_SERIAL_MCT_U232
,usb-serial-mct-u232
,\
165 $(MODULES_DIR
)/kernel
/drivers
/usb
/serial
/mct_u232.o \
166 ,CONFIG_USB_SERIAL_MCT_U232
,kmod-usb-serial
,61,mct_u232
))
167 $(eval
$(call KMOD_template
,USB_SERIAL_PL2303
,usb-serial-pl2303
,\
168 $(MODULES_DIR
)/kernel
/drivers
/usb
/serial
/pl2303.o \
169 ,CONFIG_USB_SERIAL_PL2303
,kmod-usb-serial
,61,pl2303
))
170 $(eval
$(call KMOD_template
,USB_SERIAL_VISOR
,usb-serial-visor
,\
171 $(MODULES_DIR
)/kernel
/drivers
/usb
/serial
/visor.o \
172 ,CONFIG_USB_SERIAL_VISOR
,kmod-usb-serial
,61,visor
))
173 $(eval
$(call KMOD_template
,USB_PRINTER
,usb-printer
,\
174 $(MODULES_DIR
)/kernel
/drivers
/usb
/printer.o \
175 ,CONFIG_USB_PRINTER
,kmod-usb-core
,60,printer
))
176 $(eval
$(call KMOD_template
,USB_ACM
,usb-acm
,\
177 $(MODULES_DIR
)/kernel
/drivers
/usb
/acm.o \
178 ,CONFIG_USB_ACM
,kmod-usb-core
,60,acm
))
179 $(eval
$(call KMOD_template
,IDE
,ide
,\
180 $(MODULES_DIR
)/kernel
/drivers
/ide
/*.o \
181 $(MODULES_DIR
)/kernel
/drivers
/ide
/*/*.o \
182 ,CONFIG_IDE
,,20,pdc202xx_old ide-core ide-detect ide-disk
))
183 $(eval
$(call KMOD_template
,LOOP
,loop
,\
184 $(MODULES_DIR
)/kernel
/drivers
/block
/loop.o \
185 ,CONFIG_BLK_DEV_LOOP
,,20,loop
))
186 $(eval
$(call KMOD_template
,MINIX
,minix
,\
187 $(MODULES_DIR
)/kernel
/fs
/minix
/*.o \
188 ,CONFIG_MINIX_FS
,,30,minix
))
189 $(eval
$(call KMOD_template
,EXT2
,ext2
,\
190 $(MODULES_DIR
)/kernel
/fs
/ext2
/*.o \
191 ,CONFIG_EXT2_FS
,,30,ext2
))
192 $(eval
$(call KMOD_template
,EXT3
,ext3
,\
193 $(MODULES_DIR
)/kernel
/fs
/ext3
/*.o \
194 $(MODULES_DIR
)/kernel
/fs
/jbd
/*.o \
195 ,CONFIG_EXT3_FS
,,30,jbd ext3
))
196 $(eval
$(call KMOD_template
,XFS
,xfs
,\
197 $(MODULES_DIR
)/kernel
/fs
/xfs
/*.o \
198 ,CONFIG_XFS_FS
,,30,xfs
))
199 $(eval
$(call KMOD_template
,HFSPLUS
,hfsplus
,\
200 $(MODULES_DIR
)/kernel
/fs
/hfsplus
/*.o \
201 ,CONFIG_HFSPLUS_FS
,,30,hfsplus
))
202 $(eval
$(call KMOD_template
,VFAT
,vfat
,\
203 $(MODULES_DIR
)/kernel
/fs
/vfat
/vfat.o \
204 $(MODULES_DIR
)/kernel
/fs
/fat
/fat.o \
205 ,CONFIG_VFAT_FS
,,30,fat vfat
))
206 $(eval
$(call KMOD_template
,NLS_CP437
,nls-cp437
,\
207 $(MODULES_DIR
)/kernel
/fs
/nls
/nls_cp437.o \
208 ,CONFIG_NLS_CODEPAGE_437
,,40,nls_cp437.o
))
209 $(eval
$(call KMOD_template
,NLS_CP850
,nls-cp850
,\
210 $(MODULES_DIR
)/kernel
/fs
/nls
/nls_cp850.o \
211 ,CONFIG_NLS_CODEPAGE_850
,,40,nls_cp850.o
))
212 $(eval
$(call KMOD_template
,NLS_ISO8859_1
,nls-iso8859-1
,\
213 $(MODULES_DIR
)/kernel
/fs
/nls
/nls_iso8859-1.o \
214 ,CONFIG_NLS_ISO8859_1
,,40,nls_iso8859-1.o
))
215 $(eval
$(call KMOD_template
,NLS_ISO8859_15
,nls-iso8859-15
,\
216 $(MODULES_DIR
)/kernel
/fs
/nls
/nls_iso8859-15.o \
217 ,CONFIG_NLS_ISO8859_15
,,40,nls_iso8859-15.o
))
218 $(eval
$(call KMOD_template
,NLS_KOI8_R
,nls-koi8-r
,\
219 $(MODULES_DIR
)/kernel
/fs
/nls
/nls_koi8-r.o \
220 ,CONFIG_NLS_KOI8_R
,,40,nls_koi8-r.o
))
221 $(eval
$(call KMOD_template
,NLS_UTF8
,nls-utf8
,\
222 $(MODULES_DIR
)/kernel
/fs
/nls
/nls_utf8.o \
223 ,CONFIG_NLS_UTF8
,,40,nls_utf8.o
))
224 $(eval
$(call KMOD_template
,CRYPTO
,crypto
,\
225 $(MODULES_DIR
)/kernel
/crypto
/*.o \
228 $(eval
$(call KMOD_template
,PPP
,ppp
,\
229 $(MODULES_DIR
)/kernel
/drivers
/net
/ppp_async.o \
230 $(MODULES_DIR
)/kernel
/drivers
/net
/ppp_generic.o \
231 $(MODULES_DIR
)/kernel
/drivers
/net
/slhc.o \
233 $(eval
$(call KMOD_template
,MPPE
,mppe
,\
234 $(MODULES_DIR
)/kernel
/drivers
/net
/ppp_mppe_mppc.o \
235 ,CONFIG_PPP_MPPE_MPPC
,,30,ppp_mppe_mppc
))
236 $(eval
$(call KMOD_template
,PPPOE
,pppoe
,\
237 $(MODULES_DIR
)/kernel
/drivers
/net
/pppoe.o \
238 $(MODULES_DIR
)/kernel
/drivers
/net
/pppox.o \
240 $(eval
$(call KMOD_template
,TUN
,tun
,\
241 $(MODULES_DIR
)/kernel
/drivers
/net
/tun.o \
242 ,CONFIG_TUN
,,20,tun
))
243 $(eval
$(call KMOD_template
,GRE
,gre
,\
244 $(MODULES_DIR
)/kernel
/net
/ipv4
/ip_gre.o \
246 $(eval
$(call KMOD_template
,SCHED
,sched
,\
247 $(MODULES_DIR
)/kernel
/net
/sched
/*.o \
249 $(eval
$(call KMOD_template
,VIDEODEV
,videodev
,\
250 $(MODULES_DIR
)/kernel
/drivers
/media
/video
/videodev.o \
252 $(eval
$(call KMOD_template
,PWC
,pwc
,\
253 $(MODULES_DIR
)/kernel
/drivers
/usb
/pwc.o \
256 $(eval
$(call KMOD_template
,SOFTDOG
,softdog
,\
257 $(MODULES_DIR
)/kernel
/drivers
/char
/softdog.o \
260 $(eval
$(call KMOD_template
,BONDING
,bonding
,\
261 $(MODULES_DIR
)/kernel
/drivers
/net
/bonding
/bonding.o \
264 $(eval
$(call KMOD_template
,BLUETOOTH
,bluetooth
,\
265 $(MODULES_DIR
)/kernel
/net
/bluetooth
/bluez.o \
266 $(MODULES_DIR
)/kernel
/net
/bluetooth
/bnep
/bnep.o \
267 $(MODULES_DIR
)/kernel
/net
/bluetooth
/l2cap.o \
268 $(MODULES_DIR
)/kernel
/net
/bluetooth
/rfcomm
/rfcomm.o \
269 $(MODULES_DIR
)/kernel
/net
/bluetooth
/sco.o \
270 ,CONFIG_BLUEZ
,,30,bluez bnep l2cap rfcomm sco
))
272 $(eval
$(call KMOD_template
,BLUETOOTH_BFUSB
,bluetooth-bfusb
,\
273 $(MODULES_DIR
)/kernel
/drivers
/bluetooth
/bfusb.o \
276 $(eval
$(call KMOD_template
,BLUETOOTH_BLUECARD
,bluetooth-bluecard
,\
277 $(MODULES_DIR
)/kernel
/drivers
/bluetooth
/bluecard_cs.o \
280 $(eval
$(call KMOD_template
,BLUETOOTH_BT3C
,bluetooth-bt3c
,\
281 $(MODULES_DIR
)/kernel
/drivers
/bluetooth
/bt3c_cs.o \
284 $(eval
$(call KMOD_template
,BLUETOOTH_BTUART
,bluetooth-btuart
,\
285 $(MODULES_DIR
)/kernel
/drivers
/bluetooth
/btuart_cs.o \
288 $(eval
$(call KMOD_template
,BLUETOOTH_DTL1
,bluetooth-dtl1
,\
289 $(MODULES_DIR
)/kernel
/drivers
/bluetooth
/dtl1_cs.o \
292 $(eval
$(call KMOD_template
,BLUETOOTH_HCIUART
,bluetooth-hciuart
,\
293 $(MODULES_DIR
)/kernel
/drivers
/bluetooth
/hci_uart.o \
296 $(eval
$(call KMOD_template
,BLUETOOTH_HCIUSB
,bluetooth-hciusb
,\
297 $(MODULES_DIR
)/kernel
/drivers
/bluetooth
/hci_usb.o \
300 $(eval
$(call KMOD_template
,BLUETOOTH_HCIVHCI
,bluetooth-hcivhci
,\
301 $(MODULES_DIR
)/kernel
/drivers
/bluetooth
/hci_vhci.o \
304 $(TARGETS
): $(PACKAGE_DIR
)
307 mkdir
-p
$(PACKAGE_DIR
)
309 $(LINUX_DIR
)/.unpacked
: $(DL_DIR
)/$(LINUX_SOURCE
)
310 -mkdir
-p
$(LINUX_BUILD_DIR
)
311 bzcat
$(DL_DIR
)/$(LINUX_SOURCE
) |
tar -C
$(LINUX_BUILD_DIR
) $(TAR_OPTIONS
) -
313 ln
-s
$(LINUX_BUILD_DIR
)/linux-
$(LINUX_VERSION
) $(LINUX_DIR
)
314 touch
$(LINUX_DIR
)/.unpacked
316 $(LINUX_DIR
)/.patched
: $(LINUX_DIR
)/.unpacked
317 $(PATCH
) $(LINUX_DIR
) .
/patches
/generic
318 [ -d .
/patches
/$(BOARD
) ] && $(PATCH
) $(LINUX_DIR
) .
/patches
/$(BOARD
)
319 touch
$(LINUX_DIR
)/.patched
321 $(LINUX_DIR
)/.configured
: $(LINUX_DIR
)/.patched
322 -cp
$(LINUX_KCONFIG
) $(LINUX_DIR
)/.config
323 $(SED
) "s,^CROSS_COMPILE.*,CROSS_COMPILE=$(KERNEL_CROSS),g;" \
324 $(LINUX_DIR
)/Makefile \
325 $(LINUX_DIR
)/arch
/*/Makefile
326 $(SED
) "s,\-mcpu=,\-mtune=,g;" $(LINUX_DIR
)/arch
/mips
/Makefile
327 $(MAKE
) -C
$(LINUX_DIR
) ARCH
=$(LINUX_KARCH
) oldconfig
include/linux
/version.h
328 touch
$(LINUX_DIR
)/.configured
330 $(LINUX_DIR
)/.depend_done
: $(LINUX_DIR
)/.configured
331 $(MAKE
) -C
$(LINUX_DIR
) ARCH
=$(LINUX_KARCH
) dep
332 touch
$(LINUX_DIR
)/.depend_done
334 $(LINUX_DIR
)/vmlinux
: $(LINUX_DIR
)/.depend_done
335 $(MAKE
) -C
$(LINUX_DIR
) ARCH
=$(LINUX_KARCH
) PATH
=$(TARGET_PATH
)
337 $(LINUX_KERNEL
): $(LINUX_DIR
)/vmlinux
338 $(TARGET_CROSS
)objcopy
-O binary
-R .reginfo
-R .note
-R .comment
-R .mdebug
-S
$< $@
339 touch
-c
$(LINUX_KERNEL
)
341 $(LINUX_DIR
)/.modules_done
: $(LINUX_KERNEL
) $(LINUX_IMAGE
)
342 rm -rf
$(LINUX_BUILD_DIR
)/modules
343 $(MAKE
) -C
$(LINUX_DIR
) ARCH
=$(LINUX_KARCH
) PATH
=$(TARGET_PATH
) modules
344 $(MAKE
) -C
$(LINUX_DIR
) DEPMOD
=true INSTALL_MOD_PATH
=$(LINUX_BUILD_DIR
)/modules modules_install
345 touch
$(LINUX_DIR
)/.modules_done
347 $(STAGING_DIR
)/include/linux
/version.h
: $(LINUX_DIR
)/.configured
348 mkdir
-p
$(STAGING_DIR
)/include
349 tar -ch
-C
$(LINUX_DIR
)/include -f
- linux |
tar -xf
- -C
$(STAGING_DIR
)/include/
350 tar -ch
-C
$(LINUX_DIR
)/include -f
- asm |
tar -xf
- -C
$(STAGING_DIR
)/include/
352 $(STAMP_DIR
)/.linux-compile
: $(LINUX_DIR
)/.modules_done
353 @mkdir
-p
$(STAMP_DIR
)
355 ln
-sf
$(LINUX_BUILD_DIR
)/linux-
$(LINUX_VERSION
) $(LINUX_DIR
)
356 $(MAKE
) -C
$(TOPDIR
)/target
/linux
/package \
361 $(TARGET_MODULES_DIR
):
362 -mkdir
-p
$(TARGET_MODULES_DIR
)
365 rm -rf
$(KERNEL_IDIR
)
366 mkdir
-p
$(KERNEL_IDIR
)/etc
367 $(SCRIPT_DIR
)/make-ipkg-dir.sh
$(KERNEL_IDIR
) ..
/control
/kernel.control
$(LINUX_VERSION
)-$(BOARD
)-$(PKG_RELEASE
) $(ARCH
)
368 if
[ -f .
/config
/$(BOARD
).modules
]; then \
369 cp .
/config
/$(BOARD
).modules
$(KERNEL_IDIR
)/etc
/modules
; \
371 $(IPKG_BUILD
) $(KERNEL_IDIR
) $(LINUX_BUILD_DIR
)
373 source
: $(DL_DIR
)/$(LINUX_SOURCE
)
374 prepare
: $(LINUX_DIR
)/.configured
375 compile
: $(STAMP_DIR
)/.linux-compile
377 install: compile
$(TARGET_MODULES_DIR
) $(KERNEL_IPKG
)
378 rm -rf
$(LINUX_BUILD_DIR
)/root
*
379 echo
-e
'dest root /\noption offline_root $(LINUX_BUILD_DIR)/root' > $(LINUX_BUILD_DIR
)/ipkg.conf
380 $(MAKE
) -C
$(TOPDIR
)/package \
381 TARGET_DIR
="$(LINUX_TARGET_DIR)" \
382 IPKG_CONF
="$(LINUX_BUILD_DIR)" \
385 $(MAKE
) -C
$(TOPDIR
)/target
/linux
/package \
388 [ "$(INSTALL_TARGETS)" != "" ] && $(IPKG_KERNEL
) install $(INSTALL_TARGETS
) || true
391 rm -f
$(STAMP_DIR
)/.linux-compile
392 rm -f
$(LINUX_BUILD_DIR
)/linux-
$(LINUX_VERSION
)/.modules_done
393 rm -f
$(LINUX_BUILD_DIR
)/linux-
$(LINUX_VERSION
)/.drivers-unpacked
394 $(MAKE
) -C
$(LINUX_BUILD_DIR
)/linux-
$(LINUX_VERSION
) clean
395 rm -f
$(LINUX_KERNEL
) $(LINUX_IMAGE
)
399 if
[ -f
$(LINUX_KERNEL
) ]; then \
405 rm -f
$(STAMP_DIR
)/.linux-compile
406 rm -rf
$(LINUX_BUILD_DIR
)
410 $(MAKE
) -C
$(TOPDIR
)/target
/linux
/package \
412 $(patsubst package
/%,%,$@
)