460 lines
15 KiB
Makefile
460 lines
15 KiB
Makefile
PATH := /opt/brcm/hndtools-mipsel-uclibc-3.2.3/bin:/opt/brcm/hndtools-mipsel-linux-3.2.3/bin:$(PATH)
|
|
export PATH
|
|
|
|
export TOOLCHAIN := /opt/brcm/hndtools-mipsel-uclibc-3.2.3
|
|
|
|
# #####################################################################
|
|
|
|
export BUILD := i386-pc-linux-gnu
|
|
export TARGET := mipsel-uclibc
|
|
export HOST := mipsel-linux
|
|
|
|
export CROSS_COMPILE := mipsel-uclibc-
|
|
export CONFIGURE := ./configure --target=$(TARGET) --build=$(BUILD) --host=$(HOST)
|
|
|
|
export CC := $(CROSS_COMPILE)gcc
|
|
export AR := $(CROSS_COMPILE)ar
|
|
export AS := $(CROSS_COMPILE)as
|
|
export LD := $(CROSS_COMPILE)ld
|
|
export LDD := $(CROSS_COMPILE)ldd
|
|
export NM := $(CROSS_COMPILE)nm
|
|
export RANLIB := $(CROSS_COMPILE)ranlib
|
|
export STRIP := $(CROSS_COMPILE)strip
|
|
export SIZE := $(CROSS_COMPILE)size
|
|
|
|
export WGET := /usr/bin/wget --passive-ftp -nd
|
|
|
|
_SRCBASE=$(shell /bin/pwd)
|
|
_CONFIGS=$(_SRCBASE)/configs
|
|
_DOWNLOAD_DIR=$(_SRCBASE)/download
|
|
_SOURCE=$(_SRCBASE)/source
|
|
_STATE=$(_SRCBASE)/state
|
|
_TOOLS=$(_SRCBASE)/tools
|
|
|
|
_STAGE1_SKEL=stage1.skel
|
|
_STAGE1=$(shell /bin/pwd)/stage1
|
|
_STAGE1_IMG=stage1.img
|
|
_STAGE2_SKEL=stage2.skel
|
|
_STAGE2=$(shell /bin/pwd)/stage2
|
|
|
|
# #####################################################################
|
|
|
|
# build firmware and filesystem
|
|
all: stage1 stage2
|
|
|
|
# stage1 (firmware)
|
|
_STAGE1_TARGETS=kernel-zImage busybox-stage1 cramfs tools
|
|
|
|
# stage2 (filesystem)
|
|
_STAGE2_TARGETS=kernel-modules busybox-stage2 strace bridge-utils iproute2 pppd
|
|
|
|
# fetch all needed sources
|
|
fetch: stage1-fetch stage2-fetch
|
|
|
|
# trigger rebuild of all packages
|
|
clean: stage1-clean stage2-clean
|
|
|
|
# remove all builddirs
|
|
distclean: stage1-distclean stage2-distclean
|
|
|
|
# #####################################################################
|
|
_BUILD_TOOLS=$(_TOOLS)
|
|
|
|
tools: tools-clean $(_STATE)/tools.all-done
|
|
|
|
tools-fetch:
|
|
|
|
$(_STATE)/tools.all-done:
|
|
make -C $(_BUILD_TOOLS) all
|
|
touch $(_STATE)/tools.all-done
|
|
|
|
tools-install: $(_STATE)/tools.all-done
|
|
|
|
tools-clean:
|
|
rm -f $(_STATE)/tools.*
|
|
|
|
tools-distclean: tools-clean
|
|
make -C $(_BUILD_TOOLS) clean
|
|
|
|
# #####################################################################
|
|
_PACKAGE_KERNEL=$(_DOWNLOAD_DIR)/linux-2.4.20.tar.bz2
|
|
_DOWNLOAD_KERNEL=ftp://ftp.kernel.org/pub/linux/kernel/v2.4/linux-2.4.20.tar.bz2
|
|
_BUILD_KERNEL=$(_SOURCE)/linux-2.4.20
|
|
_KERNELHEADERS=$(_BUILD_KERNEL)/include
|
|
|
|
kernel: $(_STATE)/kernel-zImage.all-done $(_STATE)/kernel-modules.all-done
|
|
|
|
kernel-zImage: kernel-zImage-clean $(_STATE)/kernel-zImage.all-done
|
|
kernel-modules: kernel-modules-clean $(_STATE)/kernel-modules.all-done
|
|
|
|
kernel-zImage-fetch: $(_PACKAGE_KERNEL)
|
|
kernel-modules-fetch: $(_PACKAGE_KERNEL)
|
|
|
|
$(_PACKAGE_KERNEL):
|
|
$(WGET) -P $(_DOWNLOAD_DIR) $(_DOWNLOAD_KERNEL)
|
|
|
|
$(_STATE)/kernel.unpacked: $(_PACKAGE_KERNEL)
|
|
tar -C $(_SOURCE) -xjf $(_PACKAGE_KERNEL)
|
|
(cd $(_BUILD_KERNEL); bzcat $(_CONFIGS)/kernel-vanilla2siemens_small.patch.bz2 | patch -lp1 );
|
|
(cd $(_BUILD_KERNEL); tar -xjf $(_CONFIGS)/wl-rel_3_01_05.tar.bz2 );
|
|
touch $(_STATE)/kernel.unpacked
|
|
|
|
$(_STATE)/kernel.configured: $(_STATE)/kernel.unpacked
|
|
cp $(_CONFIGS)/kernel-config $(_BUILD_KERNEL)/.config
|
|
make -C $(_BUILD_KERNEL) oldconfig
|
|
touch $(_STATE)/kernel.configured
|
|
|
|
$(_STATE)/kernel.dep: $(_STATE)/kernel.configured
|
|
make -C $(_BUILD_KERNEL) dep
|
|
touch $(_STATE)/kernel.dep
|
|
|
|
$(_STATE)/kernel-zImage.all-done: $(_STATE)/kernel.dep
|
|
make -C $(_BUILD_KERNEL) zImage
|
|
touch $(_STATE)/kernel-zImage.all-done
|
|
|
|
$(_STATE)/kernel-modules.all-done: $(_STATE)/kernel-zImage.all-done
|
|
make -C $(_BUILD_KERNEL) modules
|
|
touch $(_STATE)/kernel-modules.all-done
|
|
|
|
kernel-zImage-install: $(_STAGE1) $(_STATE)/kernel-zImage.all-done
|
|
|
|
kernel-modules-install: $(_STAGE2) $(_STATE)/kernel-modules.all-done
|
|
make -C $(_BUILD_KERNEL) modules_install DEPMOD=/bin/true INSTALL_MOD_PATH=$(_STAGE2)
|
|
rm -rf $(_STAGE2)/lib/modules/2.4.20/build
|
|
rm -rf $(_STAGE2)/lib/modules/2.4.20/pcmcia
|
|
|
|
kernel-clean: kernel-zImage-clean kernel-modules-clean
|
|
|
|
kernel-distclean:
|
|
rm -r $(_STATE)/kernel.*
|
|
make -C $(_BUILD_KERNEL) mrproper
|
|
|
|
kernel-zImage-clean:
|
|
rm -f $(_STATE)/kernel-zImage.all-done
|
|
|
|
kernel-zImage-distclean: kernel-distclean
|
|
|
|
kernel-modules-clean:
|
|
rm -f $(_STATE)/kernel-modules.all-done
|
|
|
|
kernel-modules-distclean: kernel-distclean
|
|
|
|
# #####################################################################
|
|
_PACKAGE_CRAMFS=$(_DOWNLOAD_DIR)/cramfs-1.1.tar.gz
|
|
_DOWNLOAD_CRAMFS=http://mesh.dl.sourceforge.net/sourceforge/cramfs/cramfs-1.1.tar.gz
|
|
_BUILD_CRAMFS=$(_SOURCE)/cramfs-1.1
|
|
|
|
cramfs: cramfs-clean $(_STATE)/cramfs.all_done
|
|
|
|
cramfs-fetch: $(_PACKAGE_CRAMFS)
|
|
|
|
$(_PACKAGE_CRAMFS):
|
|
$(WGET) -P $(_DOWNLOAD_DIR) $(_DOWNLOAD_CRAMFS)
|
|
|
|
$(_STATE)/cramfs.unpacked: $(_PACKAGE_CRAMFS)
|
|
tar -C $(_SOURCE) -xzf $(_PACKAGE_CRAMFS)
|
|
touch $(_STATE)/cramfs.unpacked
|
|
|
|
$(_STATE)/cramfs.all_done: $(_STATE)/cramfs.unpacked
|
|
make -C $(_BUILD_CRAMFS) all
|
|
touch $(_STATE)/cramfs.all_done
|
|
|
|
cramfs-install: $(_STATE)/cramfs.all_done
|
|
|
|
cramfs-clean:
|
|
rm -f $(_STATE)/cramfs.*
|
|
|
|
cramfs-distclean: strace-clean
|
|
rm -rf $(_BUILD_CRAMFS)
|
|
|
|
# #####################################################################
|
|
_PACKAGE_BUSYBOX=$(_DOWNLOAD_DIR)/busybox-1.00.tar.bz2
|
|
_DOWNLOAD_BUSYBOX=http://www.busybox.net/downloads/busybox-1.00.tar.bz2
|
|
_BUILD_BUSYBOX=$(_SOURCE)/busybox-1.00
|
|
_BUILD_BUSYBOX_STAGE1=$(_SOURCE)/busybox-stage1
|
|
|
|
busybox-stage1: busybox-stage1-clean $(_STATE)/busybox-stage1.all_done
|
|
|
|
busybox-stage1-fetch: $(_PACKAGE_BUSYBOX)
|
|
|
|
$(_PACKAGE_BUSYBOX):
|
|
$(WGET) -P $(_DOWNLOAD_DIR) $(_DOWNLOAD_BUSYBOX)
|
|
|
|
$(_STATE)/busybox-stage1.unpacked: $(_PACKAGE_BUSYBOX)
|
|
tar -C $(_SOURCE) -xjf $(_PACKAGE_BUSYBOX)
|
|
rm -rf $(_BUILD_BUSYBOX_STAGE1)
|
|
mv $(_BUILD_BUSYBOX) $(_BUILD_BUSYBOX_STAGE1)
|
|
touch $(_STATE)/busybox-stage1.unpacked
|
|
|
|
$(_STATE)/busybox-stage1.configured: $(_STATE)/busybox-stage1.unpacked
|
|
cp $(_CONFIGS)/busybox-stage1.conf $(_BUILD_BUSYBOX_STAGE1)/.config
|
|
touch $(_STATE)/busybox-stage1.configured
|
|
|
|
$(_STATE)/busybox-stage1.compiled: $(_STATE)/busybox-stage1.configured
|
|
make -C $(_BUILD_BUSYBOX_STAGE1) all
|
|
touch $(_STATE)/busybox-stage1.compiled
|
|
|
|
$(_STATE)/busybox-stage1.all_done: $(_STATE)/busybox-stage1.compiled
|
|
make -C $(_BUILD_BUSYBOX_STAGE1) install
|
|
chmod 4775 $(_BUILD_BUSYBOX_STAGE1)/_install/bin/busybox
|
|
touch $(_STATE)/busybox-stage1.all_done
|
|
|
|
busybox-stage1-install: $(_STAGE1) $(_STATE)/busybox-stage1.all_done
|
|
cp -r $(_BUILD_BUSYBOX_STAGE1)/_install/* $(_STAGE1)
|
|
|
|
busybox-stage1-clean:
|
|
rm -f $(_STATE)/busybox-stage1.*
|
|
|
|
busybox-stage1-distclean: busybox-stage1-clean
|
|
rm -rf $(_BUILD_BUSYBOX_STAGE1)
|
|
|
|
# #####################################################################
|
|
_BUILD_BUSYBOX_STAGE2=$(_SOURCE)/busybox-stage2
|
|
|
|
busybox-stage2: busybox-stage2-clean $(_STATE)/busybox-stage2.all_done
|
|
|
|
busybox-stage2-fetch: $(_PACKAGE_BUSYBOX)
|
|
|
|
$(_STATE)/busybox-stage2.unpacked: $(_PACKAGE_BUSYBOX)
|
|
tar -C $(_SOURCE) -xjf $(_PACKAGE_BUSYBOX)
|
|
rm -rf $(_BUILD_BUSYBOX_STAGE2)
|
|
mv $(_BUILD_BUSYBOX) $(_BUILD_BUSYBOX_STAGE2)
|
|
touch $(_STATE)/busybox-stage2.unpacked
|
|
|
|
$(_STATE)/busybox-stage2.configured: $(_STATE)/busybox-stage2.unpacked
|
|
cp $(_CONFIGS)/busybox-stage2.conf $(_BUILD_BUSYBOX_STAGE2)/.config
|
|
touch $(_STATE)/busybox-stage2.configured
|
|
|
|
$(_STATE)/busybox-stage2.compiled: $(_STATE)/busybox-stage2.configured
|
|
make -C $(_BUILD_BUSYBOX_STAGE2) all
|
|
touch $(_STATE)/busybox-stage2.compiled
|
|
|
|
$(_STATE)/busybox-stage2.all_done: $(_STATE)/busybox-stage2.compiled
|
|
make -C $(_BUILD_BUSYBOX_STAGE2) install
|
|
chmod 4775 $(_BUILD_BUSYBOX_STAGE2)/_install/bin/busybox
|
|
touch $(_STATE)/busybox-stage2.all_done
|
|
|
|
busybox-stage2-install: $(_STAGE2) $(_STATE)/busybox-stage2.all_done
|
|
cp -r $(_BUILD_BUSYBOX_STAGE2)/_install/* $(_STAGE2)
|
|
|
|
busybox-stage2-clean:
|
|
rm -f $(_STATE)/busybox-stage2.*
|
|
|
|
busybox-stage2-distclean: busybox-stage2-clean
|
|
rm -rf $(_BUILD_BUSYBOX_STAGE2)
|
|
|
|
# #####################################################################
|
|
_PACKAGE_STRACE=$(_DOWNLOAD_DIR)/strace-4.5.7.tar.bz2
|
|
_DOWNLOAD_STRACE=http://mesh.dl.sourceforge.net/sourceforge/strace/strace-4.5.7.tar.bz2
|
|
_BUILD_STRACE=$(_SOURCE)/strace-4.5.7
|
|
|
|
strace: strace-clean $(_STATE)/strace.all_done
|
|
|
|
strace-fetch: $(_PACKAGE_STRACE)
|
|
|
|
$(_PACKAGE_STRACE):
|
|
$(WGET) -P $(_DOWNLOAD_DIR) $(_DOWNLOAD_STRACE)
|
|
|
|
$(_STATE)/strace.unpacked: $(_PACKAGE_STRACE)
|
|
tar -C $(_SOURCE) -xjf $(_PACKAGE_STRACE)
|
|
touch $(_STATE)/strace.unpacked
|
|
|
|
$(_STATE)/strace.configured: $(_STATE)/strace.unpacked
|
|
(cd $(_BUILD_STRACE); $(CONFIGURE) --prefix=/usr );
|
|
touch $(_STATE)/strace.configured
|
|
|
|
$(_STATE)/strace.compiled: $(_STATE)/strace.configured
|
|
make -C $(_BUILD_STRACE) all
|
|
touch $(_STATE)/strace.compiled
|
|
|
|
$(_STATE)/strace.all_done: $(_STATE)/strace.compiled
|
|
$(STRIP) --strip-all $(_BUILD_STRACE)/strace
|
|
touch $(_STATE)/strace.all_done
|
|
|
|
strace-install: $(_STAGE2) $(_STATE)/strace.all_done
|
|
cp $(_BUILD_STRACE)/strace $(_STAGE2)/usr/bin
|
|
|
|
strace-clean:
|
|
rm -f $(_STATE)/strace.*
|
|
|
|
strace-distclean: strace-clean
|
|
rm -rf $(_BUILD_STRACE)
|
|
|
|
# #####################################################################
|
|
_PACKAGE_BRIDGE_UTILS=$(_DOWNLOAD_DIR)/bridge-utils-1.0.4.tar.gz
|
|
_DOWNLOAD_BRIDGE_UTILS=http://mesh.dl.sourceforge.net/sourceforge/bridge/bridge-utils-1.0.4.tar.gz
|
|
_BUILD_BRIDGE_UTILS=$(_SOURCE)/bridge-utils-1.0.4
|
|
|
|
bridge-utils: bridge-utils-clean $(_STATE)/bridge-utils.all_done
|
|
|
|
bridge-utils-fetch: $(_PACKAGE_BRIDGE_UTILS)
|
|
|
|
$(_PACKAGE_BRIDGE_UTILS):
|
|
$(WGET) -P $(_DOWNLOAD_DIR) $(_DOWNLOAD_BRIDGE_UTILS)
|
|
|
|
$(_STATE)/bridge-utils.unpacked: $(_PACKAGE_BRIDGE_UTILS)
|
|
tar -C $(_SOURCE) -xzf $(_PACKAGE_BRIDGE_UTILS)
|
|
touch $(_STATE)/bridge-utils.unpacked
|
|
|
|
$(_STATE)/bridge-utils.configured: $(_STATE)/bridge-utils.unpacked
|
|
(cd $(_BUILD_BRIDGE_UTILS); $(CONFIGURE) --prefix=/usr --with-linux-headers=$(_KERNELHEADERS));
|
|
touch $(_STATE)/bridge-utils.configured
|
|
|
|
$(_STATE)/bridge-utils.compiled: $(_STATE)/bridge-utils.configured
|
|
make -C $(_BUILD_BRIDGE_UTILS) all
|
|
touch $(_STATE)/bridge-utils.compiled
|
|
|
|
$(_STATE)/bridge-utils.all_done: $(_STATE)/bridge-utils.compiled
|
|
$(STRIP) --strip-all $(_BUILD_BRIDGE_UTILS)/brctl/brctl
|
|
touch $(_STATE)/bridge-utils.all_done
|
|
|
|
bridge-utils-install: $(_STAGE2) $(_STATE)/bridge-utils.all_done
|
|
cp $(_BUILD_BRIDGE_UTILS)/brctl/brctl $(_STAGE2)/usr/sbin
|
|
|
|
bridge-utils-clean:
|
|
rm -f $(_STATE)/bridge-utils.*
|
|
|
|
bridge-utils-distclean: bridge-utils-clean
|
|
rm -rf $(_BUILD_BRIDGE_UTILS)
|
|
|
|
# #####################################################################
|
|
_PACKAGE_IPROUTE2=$(_DOWNLOAD_DIR)/iproute2-2.6.10-050209.tar.gz
|
|
_DOWNLOAD_IPROUTE2=http://developer.osdl.org/dev/iproute2/download/iproute2-2.6.10-050209.tar.gz
|
|
_BUILD_IPROUTE2=$(_SOURCE)/iproute2-2.6.9-050209
|
|
|
|
iproute2: iproute2-clean $(_STATE)/iproute2.all_done
|
|
|
|
iproute2-fetch: $(_PACKAGE_IPROUTE2)
|
|
|
|
$(_PACKAGE_IPROUTE2):
|
|
$(WGET) -P $(_DOWNLOAD_DIR) $(_DOWNLOAD_IPROUTE2)
|
|
|
|
$(_STATE)/iproute2.unpacked: $(_PACKAGE_IPROUTE2)
|
|
tar -C $(_SOURCE) -xzf $(_PACKAGE_IPROUTE2)
|
|
touch $(_STATE)/iproute2.unpacked
|
|
|
|
$(_STATE)/iproute2.configured: $(_STATE)/iproute2.unpacked
|
|
(cd $(_BUILD_IPROUTE2); $(CONFIGURE) --prefix=/usr);
|
|
touch $(_STATE)/iproute2.configured
|
|
|
|
$(_STATE)/iproute2.compiled: $(_STATE)/iproute2.configured
|
|
make -C $(_BUILD_IPROUTE2) CC=$(CC) all
|
|
touch $(_STATE)/iproute2.compiled
|
|
|
|
$(_STATE)/iproute2.all_done: $(_STATE)/iproute2.compiled
|
|
$(STRIP) --strip-all $(_BUILD_IPROUTE2)/ip/ip
|
|
$(STRIP) --strip-all $(_BUILD_IPROUTE2)/tc/tc
|
|
touch $(_STATE)/iproute2.all_done
|
|
|
|
iproute2-install: $(_STAGE2) $(_STATE)/iproute2.all_done
|
|
cp $(_BUILD_IPROUTE2)/ip/ip $(_STAGE2)/sbin
|
|
cp $(_BUILD_IPROUTE2)/tc/tc $(_STAGE2)/sbin
|
|
|
|
iproute2-clean:
|
|
rm -f $(_STATE)/iproute2.*
|
|
|
|
iproute2-distclean: iproute2-clean
|
|
rm -rf $(_BUILD_IPROUTE2)
|
|
|
|
# #####################################################################
|
|
_PACKAGE_PPPD=$(_DOWNLOAD_DIR)/ppp-2.4.2.tar.gz
|
|
_DOWNLOAD_PPPD=ftp://ftp.samba.org/pub/ppp/ppp-2.4.2.tar.gz
|
|
_BUILD_PPPD=$(_SOURCE)/ppp-2.4.2
|
|
|
|
pppd: pppd-clean $(_STATE)/pppd.all_done
|
|
|
|
pppd-fetch: $(_PACKAGE_PPPD)
|
|
|
|
$(_PACKAGE_PPPD):
|
|
$(WGET) -P $(_DOWNLOAD_DIR) $(_DOWNLOAD_PPPD)
|
|
|
|
$(_STATE)/pppd.unpacked: $(_PACKAGE_PPPD)
|
|
tar -C $(_SOURCE) -xzf $(_PACKAGE_PPPD)
|
|
touch $(_STATE)/pppd.unpacked
|
|
|
|
$(_STATE)/pppd.configured: $(_STATE)/pppd.unpacked
|
|
(cd $(_BUILD_PPPD); $(CONFIGURE) --prefix=/usr);
|
|
sed -i -e "s/^FILTER=y/#FILTER=y/" $(_BUILD_PPPD)/pppd/Makefile
|
|
sed -i -e "s/^CC\t= gcc/#CC\t= gcc/" $(_BUILD_PPPD)/pppd/plugins/Makefile
|
|
sed -i -e "s/^\tgcc/\t\$$\(CC\)/" -e "s/^\tar/\t\$$\(AR\)/" $(_BUILD_PPPD)/pppd/plugins/rp-pppoe/Makefile
|
|
touch $(_STATE)/pppd.configured
|
|
|
|
$(_STATE)/pppd.compiled: $(_STATE)/pppd.configured
|
|
make -C $(_BUILD_PPPD) all
|
|
touch $(_STATE)/pppd.compiled
|
|
|
|
$(_STATE)/pppd.all_done: $(_STATE)/pppd.compiled
|
|
$(STRIP) --strip-all $(_BUILD_PPPD)/chat/chat
|
|
$(STRIP) --strip-all $(_BUILD_PPPD)/pppd/pppd
|
|
$(STRIP) --strip-all $(_BUILD_PPPD)/pppd/plugins/rp-pppoe/rp-pppoe.so
|
|
$(STRIP) --strip-all $(_BUILD_PPPD)/pppstats/pppstats
|
|
touch $(_STATE)/pppd.all_done
|
|
|
|
pppd-install: $(_STAGE2) $(_STATE)/pppd.all_done
|
|
cp $(_BUILD_PPPD)/chat/chat $(_STAGE2)/usr/bin
|
|
cp $(_BUILD_PPPD)/pppd/pppd $(_STAGE2)/usr/sbin
|
|
cp $(_BUILD_PPPD)/pppd/plugins/rp-pppoe/rp-pppoe.so $(_STAGE2)/etc/ppp/plugins/
|
|
cp $(_BUILD_PPPD)/pppstats/pppstats $(_STAGE2)/usr/bin
|
|
|
|
pppd-clean:
|
|
rm -f $(_STATE)/pppd.*
|
|
|
|
pppd-distclean: pppd-clean
|
|
rm -rf $(_BUILD_PPPD)
|
|
|
|
# #####################################################################
|
|
_STAGE1_REAL_TARGETS:=$(patsubst %,%-install,$(_STAGE1_TARGETS))
|
|
_STAGE1_FETCH_TARGETS:=$(patsubst %,%-fetch,$(_STAGE1_TARGETS))
|
|
_STAGE1_CLEAN_TARGETS:=$(patsubst %,%-clean,$(_STAGE1_TARGETS))
|
|
_STAGE1_DISTCLEAN_TARGETS:=$(patsubst %,%-distclean,$(_STAGE1_TARGETS))
|
|
|
|
$(_STAGE1):
|
|
mkdir -p $(_STAGE1)
|
|
cp -r $(_STAGE1_SKEL)/* $(_STAGE1)
|
|
|
|
$(_STAGE1_IMG):
|
|
mkdir -p $(_STAGE1_IMG)
|
|
|
|
stage1: $(_STAGE1) $(_STAGE1_IMG) $(_STAGE1_REAL_TARGETS)
|
|
$(_BUILD_CRAMFS)/mkcramfs $(_STAGE1) $(_STAGE1_IMG)/stage1.cramfs
|
|
$(_TOOLS)/trx $(_BUILD_KERNEL)/arch/mips/brcm-boards/bcm947xx/compressed/vmlinuz \
|
|
$(_STAGE1_IMG)/stage1.cramfs > \
|
|
$(_STAGE1_IMG)/firmware.trx
|
|
$(_TOOLS)/gen_image $(_STAGE1_IMG)/firmware.trx > $(_STAGE1_IMG)/firmware.img
|
|
|
|
stage1-fetch: $(_STAGE1_FETCH_TARGETS)
|
|
|
|
stage1-clean: $(_STAGE1_CLEAN_TARGETS)
|
|
rm -rf $(_STAGE1) $(_STAGE1_IMG)
|
|
|
|
stage1-distclean: $(_STAGE1_DISTCLEAN_TARGETS)
|
|
rm -rf $(_STAGE1) $(_STAGE1_IMG)
|
|
|
|
# #####################################################################
|
|
_STAGE2_REAL_TARGETS:=$(patsubst %,%-install,$(_STAGE2_TARGETS))
|
|
_STAGE2_FETCH_TARGETS:=$(patsubst %,%-fetch,$(_STAGE2_TARGETS))
|
|
_STAGE2_CLEAN_TARGETS:=$(patsubst %,%-clean,$(_STAGE2_TARGETS))
|
|
_STAGE2_DISTCLEAN_TARGETS:=$(patsubst %,%-distclean,$(_STAGE2_TARGETS))
|
|
|
|
$(_STAGE2):
|
|
mkdir -p $(_STAGE2)
|
|
cp -r $(_STAGE2_SKEL)/* $(_STAGE2)
|
|
|
|
stage2: $(_STAGE2) $(_STAGE2_REAL_TARGETS)
|
|
cp -r $(_STAGE2_SKEL)/* $(_STAGE2)
|
|
cp -r $(TOOLCHAIN)/lib/*.so* $(_STAGE2)/lib/
|
|
|
|
stage2-fetch: $(_STAGE2_FETCH_TARGETS)
|
|
|
|
stage2-clean: $(_STAGE2_CLEAN_TARGETS)
|
|
|
|
stage2-distclean: $(_STAGE2_DISTCLEAN_TARGETS)
|
|
rm -rf $(_STAGE2)
|
|
|
|
# #####################################################################
|
|
|
|
sync:
|
|
mount /dev/sda1 /mnt/usbdisk
|
|
rsync -a -c --delete --progress --stats $(_STAGE2)/ /mnt/usbdisk
|
|
umount /mnt/usbdisk
|