source: src/router/Makefile.brcm26 @ 13296

Last change on this file since 13296 was 13296, checked in by eko, 4 years ago

Asus RT-N16 support

File size: 23.0 KB
Line 
1# Broadcom Linux Router Makefile
2#
3# Copyright 2001-2003, Broadcom Corporation
4# All Rights Reserved.
5#
6# THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
7# KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
8# SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
9# FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
10#
11# $Id: Makefile,v 1.2 2005/09/26 11:06:58 seg Exp $
12#
13
14include .config
15ifneq ($(wildcard ../cy_conf.mak),)
16  include ../cy_conf.mak
17endif
18
19#
20# Paths
21#
22OPENSER_MODULES := sl tm rr maxfwd usrloc registrar dbtext textops exec auth auth_db nathelper
23OPENSER_MODULE_FILES := $(foreach module,$(OPENSER_MODULES),openser/modules/$(module)/$(module).so)
24
25# Source bases
26export PLATFORM LINUXDIR LIBDIR USRLIBDIR
27export TOP := $(shell pwd)
28export SRCBASE := $(shell (cd $(TOP)/.. && pwd -P))
29#
30# Cross-compile environment variables
31#
32
33# Build platform
34export BUILD := i386-pc-linux-gnu
35export HOSTCC := gcc
36
37# uClibc wrapper
38ifeq ($(CONFIG_UCLIBC),y)
39export PLATFORM := $(PLATFORM)-uclibc
40endif
41
42export LINUXVER = $(shell cat $(LINUXDIR)/include/config/kernel.release 2> /dev/null)
43
44
45ifeq ($(PLATFORM),mipsel)
46export CROSS_COMPILE := mipsel-linux-
47export CONFIGURE := ./configure mipsel-linux --build=$(BUILD)
48export TOOLCHAIN := $(shell cd $(dir $(shell which $(CROSS_COMPILE)gcc))/../mipsel-linux && pwd -P)
49endif
50
51ifeq ($(PLATFORM),mipsel-uclibc)
52export CROSS_COMPILE := mipsel-linux-uclibc-
53export CONFIGURE := ./configure mipsel-linux --build=$(BUILD)
54export TOOLCHAIN := $(shell cd $(dir $(shell which $(CROSS_COMPILE)gcc))/.. && pwd -P)
55endif
56
57ifeq ($(CONFIG_BCMWPA2),y)
58export CFLAGS += -DBCMWPA2
59endif
60
61ifeq ($(CONFIG_BRANDING),y)
62export CFLAGS += -DCONFIG_BRANDING
63endif
64ifeq ($(CONFIG_SPEED),y)
65export BASEOPT:=-O2
66else
67export BASEOPT:=-Os
68endif
69
70
71export ARCH:= mipsel
72export ARCHITECTURE:= broadcom
73export COPTS:=$(BASEOPT) -pipe -mips32 -mtune=mips32 -funit-at-a-time
74export CC := $(CROSS_COMPILE)gcc
75export AR := $(CROSS_COMPILE)ar
76export AS := $(CROSS_COMPILE)as
77export LD := $(CROSS_COMPILE)ld
78export NM := $(CROSS_COMPILE)nm
79export RANLIB := $(CROSS_COMPILE)ranlib
80export STRIP := @true
81export SIZE := $(CROSS_COMPILE)size
82
83export CFLAGS :=$(BASEOPT) -pipe -mips32 -mtune=mips32 -funit-at-a-time
84export LDFLAGS :=
85
86#
87# Install and target directories
88#
89
90export PLATFORMDIR := $(TOP)/$(PLATFORM)
91export INSTALLDIR := $(PLATFORMDIR)/install
92export TARGETDIR := $(PLATFORMDIR)/target
93
94
95#obj-y += libcrypto
96#
97# Configuration
98#
99CONFIG_IPTABLES=y
100#CONFIG_WLC=y
101include rules/configs.mk
102
103obj-clean := $(foreach obj,$(obj-y) $(obj-n),$(obj)-clean)
104obj-install := $(foreach obj,$(obj-y),$(obj)-install)
105obj-distclean := $(foreach obj,$(obj-y) $(obj-n),$(obj)-distclean)
106
107
108build_date:
109        echo "#define BUILD_DATE \"$(shell date +%D)\"" > ../../opt/build.h
110
111
112#
113# Basic rules
114#
115
116all: build_date clean_target $(obj-y) $(LINUXDIR)/.config kernel
117
118
119kernel:
120        # Also build kernel
121ifeq ($(CONFIG_DIST),"micro")
122        cp $(LINUXDIR)/.config_micro $(LINUXDIR)/.config
123#       cd $(LINUXDIR) && make clean
124else
125ifeq ($(CONFIG_DIST),"micro-special")
126        cp $(LINUXDIR)/.config_micro $(LINUXDIR)/.config
127#       cd $(LINUXDIR) && make clean
128else
129ifeq ($(CONFIG_MADWIFI),y)
130        cp $(LINUXDIR)/.config_atheros $(LINUXDIR)/.config
131#       cd $(LINUXDIR) && make clean
132else
133        cp $(LINUXDIR)/.config_std $(LINUXDIR)/.config
134#       cd $(LINUXDIR) && make clean
135endif
136endif
137endif
138ifeq ($(CONFIG_EOP_TUNNEL),y)
139        echo CONFIG_NET_ETHERIP=m >> $(LINUXDIR)/.config
140else
141        echo "# CONFIG_NET_ETHERIP" is not set >> $(LINUXDIR)/.config
142endif
143ifeq ($(CONFIG_V25),y)
144        echo CONFIG_V25=y >> $(LINUXDIR)/.config
145else
146        echo "# CONFIG_V25" is not set >> $(LINUXDIR)/.config
147endif
148#ifeq ($(CONFIG_REGISTER),y)
149#       cp $(LINUXDIR)/.config_register $(LINUXDIR)/.config
150#endif
151        $(MAKE) -C $(LINUXDIR) oldconfig       
152        $(MAKE) -j 4 -C $(LINUXDIR) vmlinux
153        $(MAKE) -j 4 -C $(LINUXDIR) modules
154        $(ARCH)-linux-objcopy -O binary $(LINUXDIR)/vmlinux $(ARCH)-uclibc/vmlinus
155        cat $(ARCH)-uclibc/vmlinus | lzma e -si -so -eos -lc2 -lp2 -pb2 -d21 > lzma-loader/broadcom/vmlinux.lzma
156        make -C lzma-loader/broadcom clean
157        make -C lzma-loader/broadcom
158        dd if=lzma-loader/broadcom/lzma.elf of=$(ARCH)-uclibc/lzma_vmlinux bs=65536 conv=sync
159        $(ARCH)-linux-objcopy -O binary $(ARCH)-uclibc/lzma_vmlinux $(ARCH)-uclibc/lzma_vmlinus
160
161bootloader:
162        $(MAKE) -C $(LINUXDIR) oldconfig       
163        if ! grep -q "CONFIG_EMBEDDED_RAMDISK=y" $(LINUXDIR)/.config ; then \
164            $(MAKE) -j 4 -C $(LINUXDIR) zImage ; \
165        fi
166        if grep -q "CONFIG_MODULES=y" $(LINUXDIR)/.config ; then \
167            $(MAKE) -j 4 -C $(LINUXDIR) modules ; \
168        fi
169        /opt/3.3.4/bin/$(ARCH)-linux-objcopy -O binary $(LINUXDIR)/vmlinux $(ARCH)-uclibc/vmlinus
170        cat $(ARCH)-uclibc/vmlinus | lzma e -si -so -eos -lc2 -lp2 -pb2 -d21 > lzma-loader/broadcom/vmlinux.lzma
171        make -C lzma-loader/broadcom clean
172        make -C lzma-loader/broadcom
173        cp lzma-loader/broadcom/lzma.elf $(ARCH)-uclibc/lzma_vmlinux
174        $(ARCH)-linux-objcopy -O binary $(ARCH)-uclibc/lzma_vmlinux $(ARCH)-uclibc/lzma_vmlinus
175
176       
177clean: $(obj-clean)
178        rm -f .config.old .config.cmd
179        rm -rf $(INSTALLDIR)
180        rm -rf $(TARGETDIR)
181        rm -f $(ARCH)-uclibc/*
182        rm -f $(PLATFORMDIR)/linux.trx $(PLATFORMDIR)/vmlinuz $(PLATFORMDIR)/target.squashfs
183
184clean_target:
185        rm -rf $(TARGETDIR)
186        rm -rf $(INSTALLDIR)
187        rm -f $(PLATFORMDIR)/linux.trx $(PLATFORMDIR)/vmlinuz $(PLATFORMDIR)/target.squashfs
188
189distclean mrproper: $(obj-distclean) clean_target
190        rm -rf $(INSTALLDIR)
191        $(MAKE) -C $(LINUXDIR) distclean
192        $(MAKE) -C $(LINUXDIR)/arch/mips/bcm947xx/compressed clean
193        #rm -f $(PLATFORMDIR)/zImage $(PLATFORMDIR)/linux.bin
194        $(MAKE) -C config clean
195        rm -f .config $(LINUXDIR)/.config
196        rm -f .config.old .config.cmd
197
198optimize-lib:
199#       ../../tools/optimize_lib.sh netconf/ libnetconf.so libnetconf.a libnetconf_min.so $(TARGETDIR) $(TARGETDIR)/usr/lib/libnetconf.so
200        ../../tools/optimize_lib.sh shared/ libshared.so libshared.a libshared_min.so $(TARGETDIR) $(TARGETDIR)/usr/lib/libshared.so
201#       ../../tools/optimize_lib.sh lib/ libm.so libm.a libm_min.so $(TARGETDIR) $(TARGETDIR)/lib/libm.so.0
202        ../../tools/optimize_lib.sh lib/ libpthread.so libpthread.a libphread_min.so $(TARGETDIR) $(TARGETDIR)/lib/libpthread.so.0
203#       ../../tools/optimize_lib.sh services/ services.so services.a services_min.so $(TARGETDIR) $(TARGETDIR)/usr/lib/services.so
204#  ../../tools/optimize_lib.sh iptables/ libiptables.so libiptables.a libiptables_min.so $(TARGETDIR) $(TARGETDIR)/usr/lib/libiptables.so
205
206
207install package: clean_target $(filter-out lib.mipsel-install,$(obj-install)) $(LINUXDIR)/.config
208        install -d $(TARGETDIR)
209        for dir in $(wildcard $(patsubst %,$(INSTALLDIR)/%,$(obj-y))) ; do \
210            (cd $${dir} && tar cpf - .) | (cd $(TARGETDIR) && tar xpf -) \
211        done
212        # optimize the crypto library by removing unneeded symbols
213        #[ ! -d libcrypto ] || $(MAKE) -C libcrypto optimize
214        #[ ! -d libcrypto ] || $(MAKE) -C libcrypto optimize
215        # Install (and possibly optimize) C library
216        $(MAKE) lib.mipsel-install
217        # optimize the others library by removing unneeded symbols
218        $(MAKE) optimize-lib
219        # Install modules into filesystem
220        if grep -q "CONFIG_MODULES=y" $(LINUXDIR)/.config ; then \
221            $(MAKE) -C $(LINUXDIR) modules_install DEPMOD=/bin/true INSTALL_MOD_PATH=$(TARGETDIR) ; \
222        fi
223#ifeq ($(CONFIG_MADWIFI),y)
224#       rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/net/wl
225#endif
226#       mkdir -p $(TARGETDIR)/lib/modules/2.4.32/kernel/drivers/net/ctmisc
227#       cp ../wl/ctmisc/ctmisc.o $(TARGETDIR)/lib/modules/2.4.32/kernel/drivers/net/ctmisc
228       
229#       find $(TARGETDIR) -name "wl_*.o"  | xargs rm -rf
230        # quick n dirty - stuff Nikki's module where it belongs
231        #mkdir $(TARGETDIR)/lib/modules/2.4.32-rc3/kernel/drivers/net/adm6996
232#if [ "$(CONFIG_MMC)" = "y" ] ; then \
233#mkdir -p $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/mmc ; \
234#cp mmc/mmc.o $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/mmc ; \
235#fi ;
236#ifeq ($(CONFIG_MSSID),y)
237#       cp adm6996.v24/adm6996.o $(TARGETDIR)/lib/modules/2.4.32-rc3/kernel/drivers/net/adm6996/adm6996.o
238#else   
239#       cp adm6996/adm6996.o $(TARGETDIR)/lib/modules/2.4.32-rc3/kernel/drivers/net/adm6996/adm6996.o
240#endif
241
242        rm -f $(TARGETDIR)/lib/modules/$(LINUXVER)/build
243        rm -f $(TARGETDIR)/lib/modules/$(LINUXVER)/source
244        if test -d "$(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/net/diag"; then mv $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/net/diag/* $(TARGETDIR)/lib/modules/$(LINUXVER); fi
245#       mv $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/net/diag/* $(TARGETDIR)/lib/modules/$(LINUXVER)
246#ifneq ($(CONFIG_DIST),"micro")
247#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/net/led/* $(TARGETDIR)/lib/modules/$(LINUXVER)
248#endif
249#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/net/switch/* $(TARGETDIR)/lib/modules/$(LINUXVER)
250#ifeq ($(CONFIG_MSSID),y)
251#       cp ../wl/wl/wl_v24.o $(TARGETDIR)/lib/modules/2.4.33-rc1/wl.o
252#else
253#       if test -d "$(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/net/wl"; then mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/net/wl/* $(TARGETDIR)/lib/modules/$(LINUXVER); fi             
254#ifeq ($(CONFIG_VXOVER),y)
255#       rm -f $(TARGETDIR)/lib/modules/$(LINUXVER)/wl.o
256#endif
257
258#ifneq ($(CONFIG_DIST),"micro")
259#ifneq ($(CONFIG_DIST),"micro-special")
260#       if test -d "$(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/net/wireless"; then mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/net/wireless/* $(TARGETDIR)/lib/modules/$(LINUXVER); fi
261#endif
262#endif
263#ifeq ($(CONFIG_MSSID),y)
264#ifneq ($(CONFIG_BCM5354),y)
265#ifneq ($(CONFIG_DIST),"micro")
266#ifneq ($(CONFIG_DIST),"micro-special")
267#       cp bcm57xx/bcm57xx.o $(TARGETDIR)/lib/modules/$(LINUXVER)/bcm57xxlsys.o
268#       cp bcm57xx/bcm57xx300.o $(TARGETDIR)/lib/modules/$(LINUXVER)/bcm57xx300.o
269#endif
270#endif
271#endif
272#endif
273#endif
274#       mv $(TARGETDIR)/lib/modules/2.4.33-pre3/kernel/fs/fat/* $(TARGETDIR)/lib/modules/2.4.33-pre3
275#ifneq ($(CONFIG_DIST),"micro")
276#ifneq ($(CONFIG_DIST),"micro-special")
277#       if test -d "$(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/jffs2"; then mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/jffs2/* $(TARGETDIR)/lib/modules/$(LINUXVER); fi
278#ifeq ($(CONFIG_SAMBA),y)
279#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/cifs/* $(TARGETDIR)/lib/modules/$(LINUXVER)
280#endif
281#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/ext2/* $(TARGETDIR)/lib/modules/$(LINUXVER)
282#endif
283#endif
284#ifneq ($(CONFIG_E2FSPROGS),y)
285#       rm -f $(TARGETDIR)/lib/modules/$(LINUXVER)/ext2*
286#endif
287#ifeq ($(CONFIG_DIST),"mini")
288#       rm -f $(TARGETDIR)/lib/modules/$(LINUXVER)/cifs*
289#endif
290#       mv $(TARGETDIR)/lib/modules/2.4.33-pre3/kernel/fs/vfat/* $(TARGETDIR)/lib/modules/2.4.33-prc1re3
291#ifneq ($(CONFIG_DIST),"micro")
292#ifneq ($(CONFIG_DIST),"micro-special")
293#ifneq ($(CONFIG_MSSID),y)
294#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/lib/* $(TARGETDIR)/lib/modules/$(LINUXVER)
295#endif
296#endif
297#endif
298#ifneq ($(CONFIG_DIST),"micro")
299#ifneq ($(CONFIG_DIST),"micro-special")
300#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/net/bridge/netfilter/* $(TARGETDIR)/lib/modules/$(LINUXVER)
301#endif
302#endif
303#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/net/ipv4/netfilter/* $(TARGETDIR)/lib/modules/$(LINUXVER)
304#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/net/ipv4/* $(TARGETDIR)/lib/modules/$(LINUXVER)
305#ifneq ($(CONFIG_DIST),"micro")
306#ifneq ($(CONFIG_DIST),"micro-special")
307#ifeq ($(CONFIG_IPV6),y)
308#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/net/ipv6/* $(TARGETDIR)/lib/modules/$(LINUXVER)
309#endif
310#endif
311#endif
312#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/net/imq.o $(TARGETDIR)/lib/modules/$(LINUXVER)
313#ifeq ($(CONFIG_MSSID),y)
314#ifeq ($(CONFIG_USB),y)
315#ifeq ($(CONFIG_USB_ADVANCED),y)
316#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/ext3/* $(TARGETDIR)/lib/modules/$(LINUXVER)
317#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/jbd/* $(TARGETDIR)/lib/modules/$(LINUXVER)
318#endif
319#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/fat/* $(TARGETDIR)/lib/modules/$(LINUXVER)
320#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/vfat/* $(TARGETDIR)/lib/modules/$(LINUXVER)
321#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/xfs/* $(TARGETDIR)/lib/modules/$(LINUXVER)
322#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/cdrom/* $(TARGETDIR)/lib/modules/$(LINUXVER)
323#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/ide/pci/* $(TARGETDIR)/lib/modules/$(LINUXVER)
324#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/ide/* $(TARGETDIR)/lib/modules/$(LINUXVER)
325#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/scsi/* $(TARGETDIR)/lib/modules/$(LINUXVER)
326#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/usb/host/* $(TARGETDIR)/lib/modules/$(LINUXVER)
327#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/usb/storage/* $(TARGETDIR)/lib/modules/$(LINUXVER)
328#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/usb/* $(TARGETDIR)/lib/modules/$(LINUXVER)
329#       rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/host
330#       rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/pci
331#       rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/storage
332#       rm -f $(TARGETDIR)/lib/modules/$(LINUXVER)/sr_mod.o
333#       rm -f $(TARGETDIR)/lib/modules/$(LINUXVER)/ide-scsi.o
334#endif
335#endif
336ifneq ($(CONFIG_USB),y)
337        rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/usb/class
338        rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/usb/core
339        rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/usb/host
340        rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/usb/storage
341        rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/ext2
342#       rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/ext3
343        rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/fat
344#       rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/jbd
345        rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/msdos
346        rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/vfat
347        rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/xfs
348#       rm -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/mbcache.ko
349endif
350ifneq ($(CONFIG_USB_ADVANCED),y)
351        rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/usb/serial
352        rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/ext3
353        rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/jbd       
354endif
355ifneq ($(CONFIG_USB),y)
356ifneq ($(CONFIG_SAMBA),y)
357        rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/nls
358endif
359endif
360ifneq ($(CONFIG_IPV6),y)
361        rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/net/ipv6
362endif
363ifneq ($(CONFIG_3G),y)
364        rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/net/usb
365endif
366ifneq ($(CONFIG_SAMBA),y)
367        rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/cifs
368endif
369ifneq ($(CONFIG_JFFS2),y)
370        rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/jffs2
371endif
372
373#ifeq ($(CONFIG_PCMCIA),y)
374#       rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/pcmcia
375#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/pcmcia/* $(TARGETDIR)/lib/modules/$(LINUXVER)
376#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/char/pcmcia/* $(TARGETDIR)/lib/modules/$(LINUXVER)
377#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/char/* $(TARGETDIR)/lib/modules/$(LINUXVER)
378#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/usb/host/* $(TARGETDIR)/lib/modules/$(LINUXVER)
379#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/usb/serial/* $(TARGETDIR)/lib/modules/$(LINUXVER)
380#       mv -f $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/usb/* $(TARGETDIR)/lib/modules/$(LINUXVER)
381#       rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/host
382#       rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/serial
383#endif
384#       rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel
385#       rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/pcmcia
386#       rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)/netfilter
387#ifneq ($(CONFIG_JFFS2),y)
388#       rm -f $(TARGETDIR)/lib/modules/$(LINUXVER)/jffs2.o
389#endif
390        rm -f $(TARGETDIR)/usr/lib/libpcap.so
391        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/scsi/*.ko     
392        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/net/bridge/netfilter/*.ko
393        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/net/ipv4/netfilter/*.ko
394        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/net/ipv6/netfilter/*.ko
395        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/net/netfilter/*.ko
396        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/*.ko
397        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/ext2/*.ko 
398        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/ext3/*.ko
399        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/fat/*.ko
400        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/msdos/*.ko
401        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/xfs/*.ko
402        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/jbd/*.ko
403        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/vfat/*.ko
404        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/nls/*.ko
405        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/cifs/*.ko
406        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/fs/jffs2/*.ko
407        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/driver/net/*.ko
408        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/net/bcm57xx/*.ko
409        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/usb/class/*.ko
410        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/usb/host/*.ko
411        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/usb/core/*.ko
412        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/usb/storage/*.ko
413        mipsel-linux-strip --strip-unneeded --remove-section=.comment $(TARGETDIR)/lib/modules/$(LINUXVER)/kernel/drivers/usb/serial/*.ko
414#ifeq ($(CONFIG_MMC),y)
415#       cp ./mmc/mmc.o $(TARGETDIR)/lib/modules/$(LINUXVER)
416#endif
417#       tar -cvf $(TARGETDIR)/lib/modules/modules.tar $(TARGETDIR)/lib/modules/$(LINUXVER)/*
418#       rm -rf $(TARGETDIR)/lib/modules/$(LINUXVER)
419
420        # Prepare filesystem
421ifeq ($(CONFIG_DIST),"micro")
422        cd $(TARGETDIR) && $(TOP)/misc/rootprep_micro.sh
423else
424ifeq ($(CONFIG_DIST),"micro-special")
425        cd $(TARGETDIR) && $(TOP)/misc/rootprep_micro.sh
426else
427        cd $(TARGETDIR) && $(TOP)/misc/rootprep.sh
428endif
429endif
430        # Make sure mksquashfs-2.0 is used
431#       $(MAKE) -C $(LINUXDIR)/scripts/squashfs mksquashfs
432        cd $(TARGETDIR)  &&  find . -iname "CVS" | xargs rm -rf
433        cd $(TARGETDIR)  &&  find . -iname ".svn" | xargs rm -rf
434ifeq ($(CONFIG_OPENSSL),y)
435        rm -f $(TARGETDIR)/usr/sbin/openssl
436endif
437ifeq ($(CONFIG_KAID),y)
438        make -C kaid/src
439        cp kaid/kaid $(TARGETDIR)/usr/sbin
440endif
441        mv $(TARGETDIR)/usr/lib/services.so $(TARGETDIR)/lib
442        $(ARCH)-linux-objcopy -O binary $(LINUXDIR)/vmlinux $(ARCH)-uclibc/vmlinux.bin
443        ../../opt/loader-0.02/lzma e -lc2 -lp2 -pb2 -d21 mipsel-uclibc/vmlinux.bin mipsel-uclibc/vmlinuz
444        cp ../../opt/etc/preinit mipsel-uclibc/target/etc
445        cp ../../opt/etc/postinit mipsel-uclibc/target/etc
446ifneq ($(CONFIG_DIST),"micro")
447ifneq ($(CONFIG_DIST),"micro-special")
448        cp ../../opt/bin/ipkg mipsel-uclibc/target/bin
449        cp ../../opt/etc/ipkg.conf mipsel-uclibc/target/etc
450endif
451endif
452        cp ../../opt/etc/config/* mipsel-uclibc/target/etc/config
453        -./strip_libs.sh $(ARCH)
454        $(LINUXDIR)/scripts/squashfs/mksquashfs-lzma $(ARCH)-uclibc/target $(ARCH)-uclibc/rootfs.squashfs -noappend -root-owned -le
455        ../../opt/tools/trx -o $(ARCH)-uclibc/dd-wrt.v24-K26.trx ../../opt/loader-0.02/loader.gz $(ARCH)-uclibc/vmlinuz  -a 1024 $(ARCH)-uclibc/rootfs.squashfs
456# Asus RT-N16
457        dd if=/dev/zero of=$(ARCH)-uclibc/asusver bs=1 count=4032
458        ../../opt/asus/addver $(ARCH)-uclibc/asusver 1.0 0.6 RT-N16 1.00 1.05 $(ARCH)-uclibc/vmlinuz
459        cat $(ARCH)-uclibc/rootfs.squashfs $(ARCH)-uclibc/asusver > $(ARCH)-uclibc/rootfs.squashfs-asus
460        ../../opt/tools/trx -o $(ARCH)-uclibc/dd-wrt.v24-K26_RT-N16.trx ../../opt/loader-0.02/loader.gz $(ARCH)-uclibc/vmlinuz  -a 4096 $(ARCH)-uclibc/rootfs.squashfs-asus
461        rm -f $(ARCH)-uclibc/asusver   
462        rm -f $(ARCH)-uclibc/rootfs.squashfs-asus
463# end Asus RT-N16
464        ./netgear/packet -k $(ARCH)-uclibc/dd-wrt.v24-K26.trx -f netgear/emptyfile -b netgear/comp-wnr3500v2.txt -ok kernel_image -oall dd-wrt.bin -or rootfs_image -i netgear/ambitCfg_wnr3500.h && \
465        cp dd-wrt.bin.chk $(ARCH)-uclibc/dd-wrt.v24-K26_WNR3500v2.chk
466        ./netgear/packet -k $(ARCH)-uclibc/dd-wrt.v24-K26.trx -f netgear/emptyfile -b netgear/comp-wnr3500v2_VC.txt -ok kernel_image -oall dd-wrt.bin -or rootfs_image -i netgear/ambitCfg_wnr3500.h && \
467        cp dd-wrt.bin.chk $(ARCH)-uclibc/dd-wrt.v24-K26_WNR3500v2_VC.chk
468        ./netgear/packet -k $(ARCH)-uclibc/dd-wrt.v24-K26.trx -f netgear/emptyfile -b netgear/comp-wnr3500L.txt -ok kernel_image -oall dd-wrt.bin -or rootfs_image -i netgear/ambitCfg_wnr3500.h && \
469        cp dd-wrt.bin.chk $(ARCH)-uclibc/dd-wrt.v24-K26_WNR3500L.chk
470        ./netgear/packet -k $(ARCH)-uclibc/dd-wrt.v24-K26.trx -f netgear/emptyfile -b netgear/comp-wnr3500U.txt -ok kernel_image -oall dd-wrt.bin -or rootfs_image -i netgear/ambitCfg_wnr3500.h && \
471        cp dd-wrt.bin.chk $(ARCH)-uclibc/dd-wrt.v24-K26_WNR3500U.chk
472        ../../opt/tools/addpattern -4 -p 320N -v v4.20.6 -i $(ARCH)-uclibc/dd-wrt.v24-K26.trx -o $(ARCH)-uclibc/dd-wrt.v24-K26_wrt320n.bin -g
473        ../../opt/tools/addpattern -0 -p N150 -v v3.0.02 -i $(ARCH)-uclibc/dd-wrt.v24-K26.trx -o $(ARCH)-uclibc/dd-wrt.v24-K26_wrt160nv3.bin -g
474        ../../opt/tools/addpattern -4 -p 610N -v v4.20.6 -i $(ARCH)-uclibc/dd-wrt.v24-K26.trx -o $(ARCH)-uclibc/dd-wrt.v24-K26_wrt610nv1.bin -g
475       
476#&& rm -f kernel_image.chk rootfs_image.chk dd-wrt.bin.chk
477
478
479#BOARDID_FILE=compatible_WNR3500v2.txt
480#FW_NAME=WNR3500v2
481#fw_cfg_file := ambitCfg_NA.h
482
483#       ./tools/kernelopt/kernelopt.sh $(LINUXDIR) $(ARCH)-uclibc/target $(ARCH)-linux-uclibc-
484#       make -C $(LINUXDIR) vmlinux_optimize
485       
486#       objcopy -O binary -R .reginfo -R .note -R .comment -R .mdebug -S $(LINUXDIR)/vmlinux_opt mipsel-uclibc/vmlinux
487#       objcopy -O binary -R .reginfo -R .note -R .comment -R .mdebug -S $(LINUXDIR)/vmlinux mipsel-uclibc/vmlinux2
488#       ../../opt/loader-0.02/lzma e -lc2 -lp2 -pb2 -d21 mipsel-uclibc/vmlinux2 mipsel-uclibc/vmlinuz2
489#       $(LINUXDIR)/scripts/squashfs/mksquashfs-lzma $(ARCH)-uclibc/target $(ARCH)-uclibc/target.squashfs -noappend -root-owned -le
490#endif
491#
492# Configuration rules
493#
494include rules/all.mk
495#
496# Generic rules
497#
498
499%:
500        [ ! -d $* ] || $(MAKE) -C $*
501
502%-distclean:
503        [ ! -d $* ] || $(MAKE) -C $* clean
504
505%-clean:
506        [ ! -d $* ] || $(MAKE) -C $* clean
507
508%-install:
509        [ ! -d $* ] || $(MAKE) -C $* install INSTALLDIR=$(INSTALLDIR)/$*
510
511$(obj-y) $(obj-n) $(obj-clean) $(obj-install): dummy
512
513.PHONY: all clean distclean mrproper install package
514.PHONY: conf mconf oldconf kconf kmconf config menuconfig oldconfig
515.PHONY: dummy fixkc libnet libpcap
516
517
518
Note: See TracBrowser for help on using the repository browser.