DGND3700 V1 Transmission Firmware Build
Contents
Build prerequisites
- The following 5 things are needed to build (general build programs, original Netgear GPL source, my buildscript/patches/additions, fixed Netgear toolchain, [all] the program sources
General Build programs
Depending on your system, these or others may be needed
sudo apt-get install autoconf automake bison flex autopoint libtool libglib2.0-dev intltool bbe imagemagick
You may also need some 32bit programs if you are using a 64bit system (ia32-libs or ia32-libs-multiarch packages <= 13.04 amd64)
Ubuntu 13.10 amd64
now ia32-libs has been replaced with these
sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0 lib32stdc++6
Ubuntu 14.10 amd64 and above
now make 4 (default) needs to be replaced with make 3.8 to work - get the .deb and install.
wget http://de.archive.ubuntu.com/ubuntu/pool/main/m/make-dfsg/make_3.81-8.2ubuntu3_amd64.deb sudo dpkg -i make_3.81-8.2ubuntu3_amd64.deb
Ubuntu 15.10 amd64
lib32bz2-1.0
is replaced with
libbz2-1.0:i386
thus
sudo apt-get install lib32z1 lib32ncurses5 libbz2-1.0:i386 lib32stdc++6
Netgear's original GPL firmware source bundle
DGND3700_V1.0.0.17_1.0.17_src_full.zip
Patches / Additions / go.sh Bundle DGND3700_xxxxxx.BUILD.tar.gz
Latest Version
DGND3700_2014-10-26_19:00.BUILD.tar.gz 1.8 MB
Previous Versions
DGND3700_2014-05-29_16.49.BUILD.tar.gz
DGND3700_2014-03-15_09.22.BUILD.tar.gz
DGND3700_10121522_A_D.BUILD.tar.gz
DGND3700_09121810_A_D.BUILD.tar.gz
DGND3700_06101913_A_D.BUILD.tar.gz
Toolchain to cross compile to MIPS
uclibc-crosstools-gcc-4.2.3-3-16-feb-2013.tar.gz
... Or you can build it yourself if you are feeling masochistic
Additional Source Dependencies
These are mainly updates from the original firmware (by years), some are new additions.
- Please note this list is very likely to be out of date, check in go.sh for precise versions.
http://downloads.sourceforge.net/project/wake-on-lan/wol/0.7.1/wol-0.7.1.tar.gz http://downloads.sourceforge.net/project/p910nd/p910nd/0.97/p910nd-0.97.tar.bz2 http://members.aon.at/linuxfreak/linux/mini_snmpd-1.2b.tar.gz http://downloads.sourceforge.net/project/igmpproxy/igmpproxy/0.1/igmpproxy-0.1.tar.gz http://downloads.sourceforge.net/project/inadyn-mt/inadyn-mt/inadyn-mt.v.02.24.38/inadyn-mt.v.02.24.38.tar.gz http://downloads.sourceforge.net/project/expat/expat/2.1.0/expat-2.1.0.tar.gz http://www.thekelleys.org.uk/dnsmasq/dnsmasq-2.68.tar.xz http://downloads.sourceforge.net/project/e2fsprogs/e2fsprogs/v1.42.9/e2fsprogs-1.42.9.tar.gz http://downloads.sourceforge.net/project/bbe-/bbe/0.2.2/bbe-0.2.2.tar.gz http://avahi.org/download/avahi-0.6.31.tar.gz ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.33.tar.gz ftp://xmlsoft.org/libxml2/libxml2-git-snapshot.tar.gz http://curl.haxx.se/download/curl-7.35.0.tar.bz2 https://github.com/1100101/Automatic/archive/v0.8.3.tar.gz https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz http://download.transmissionbt.com/files/transmission-2.82.tar.xz http://downloads.sourceforge.net/project/strace/strace/4.7/strace-4.7.tar.xz http://downloads.sourceforge.net/project/fuse/fuse-2.X/2.7.6/fuse-2.7.6.tar.gz http://tuxera.com/opensource/ntfs-3g_ntfsprogs-2014.2.15.tgz http://ftp.samba.org/pub/samba/stable/samba-3.6.22.tar.gz http://downloads.sourceforge.net/project/nfs/nfs-utils/1.2.7/nfs-utils-1.2.7.tar.bz2 http://ftp.osuosl.org/pub/blfs/6.3/p/portmap-6.0.tgz http://www.citi.umich.edu/projects/nfsv4/linux/libnfsidmap/libnfsidmap-0.25.tar.gz http://www.busybox.net/downloads/busybox-1.22.1.tar.bz2 http://www.ffmpeg.org/releases/ffmpeg-2.0.2.tar.gz http://downloads.sourceforge.net/libexif/libexif-0.6.21.tar.bz2 http://downloads.sourceforge.net/project/libpng/zlib/1.2.8/zlib-1.2.8.tar.bz2 http://downloads.sourceforge.net/flac/flac-1.3.0.tar.gz http://www.ijg.org/files/jpegsrc.v9.tar.gz http://downloads.sourceforge.net/project/mad/libid3tag/0.15.1b/libid3tag-0.15.1b.tar.gz http://downloads.xiph.org/releases/ogg/libogg-1.3.0.tar.xz http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.3.tar.xz http://downloads.sourceforge.net/project/sqlite.mirror/SQLite%203.7.15.2/sqlite-autoconf-3080301.tar.gz http://downloads.sourceforge.net/project/minidlna/minidlna/1.1.2/minidlna-1.1.2.tar.gz http://mirror.ox.ac.uk/pub/OpenBSD/OpenSSH/portable/openssh-6.3p1.tar.gz https://matt.ucc.asn.au/dropbear/releases/dropbear-2013.56.tar.bz2
How to build
Extract main files
I created 'DGND3700_V1.0.0.17_1.0.17_src_full' arbitarily in my home folder as the main build/source folder, however it can be wherever you wish so long as the internal structure is the same and the toolchain is linked properly.
Below is created by extracting the Netgear .zip source, my patches/additions .tar.gz, my toolchain .tar.gz, creating 'sources' folder and downloading them all into it. (the versions must all be the same)
/home/xxxx/Downloads/DGND3700_V1.0.0.17_1.0.17_src_full ├── additions │ ├── acos_service │ ├── adsl_phy.bin │ │ <SNIP> │ └── watch.sh ├── DGND3700_build_instructions.txt ├── DGND3700_src.tar ├── go.sh ├── patches │ ├── busybox_mdev.c.patch │ ├── curl_Makefile.in.patch │ │ <SNIP> │ ├── userspace_gpl_apps_Makefile.patch │ └── userspace_project_gpl_Makefile.patch ├── sources │ ├── avahi-0.6.31.tar.gz │ ├── busybox-1.21.0.tar.bz2 │ │ <SNIP> │ ├── transmission-2.77.tar.xz │ └── zlib-1.2.7.tar.bz2 └── uclibc-crosstools-gcc-4.2.3-3-16-feb-2013 ├── bin ├── lib ├── mips-linux -> mips-linux-uclibc ├── mips-linux-uclibc └── usr
Link toolchain
Create "/opt/toolchains/" and soft link your extracted toolchain (wherever it is) to "/opt/toolchains/uclibc-crosstools-gcc-4.2.3-3" (this path is hard coded into lots of Netgears sources.)
sudo mkdir -p /opt/toolchains sudo ln -s /home/xxxx/Downloads/DGND3700_V1.0.0.17_1.0.17_src_full/uclibc-crosstools-gcc-4.2.3-3-16-feb-2013/ /opt/toolchains/uclibc-crosstools-gcc-4.2.3-3
You should end up with something like this
/opt └── toolchains └── uclibc-crosstools-gcc-4.2.3-3 -> /home/xxxx/Downloads/DGND3700_V1.0.0.17_1.0.17_src_full/uclibc-crosstools-gcc-4.2.3-3-16-feb-2013/
Go! (Build it)
Once this has been created, simple run go.sh from terminal (in this example from /home/xxxx/Downloads/DGND3700_V1.0.0.17_1.0.17_src_full/go.sh) , and all being well it should build in about 20 minutes (on my old Core2Duo).
- If you are using Ubuntu you need to relink /bin/sh to /bin/bash, not /bin/dash [Update, using Ubuntu 13.10 amdx64 this wasn't necessary ?]
Post build structure
This structure should be created extra when go.sh has been ran.
'DGND3700/targets/DGND3700/fs' is the final output staging area
'DGND3700/images' sub folder contains the created .chk firmware.
/home/xxxx/Downloads/DGND3700_V1.0.0.17_1.0.17_src_full └── DGND3700 ├── bcmdrivers ├── data-model ├── hostTools ├── images ├── kernel ├── make.common ├── make.deprules ├── Makefile ├── make.voice ├── README ├── shared ├── targets ├── userspace └── version.make
Further info
This is a bit more info about my .tar.gz provided to build, i.e. Additions, Patches and go.sh.
go.sh
This is the main build script, (I call it 'go' because that historically is what I always use for my own scripts, so I can tell them apart from everything else!)
- Deletes existing build if present, extracts original source
- Extract the new/replacement source files
- Copies the 'Additions' (binary files or files not worth doing as patches)
- Patch lots of source files
#!/bin/bash
start=$(date)
build=$(date +%Y-%m-%d_%H:%M)
###########
#Base paths
###########
ROOT="$(pwd)"
sources="$ROOT/sources"
additions="$ROOT/additions"
patches="$ROOT/patches"
backup="$ROOT/backup"
apgpl="$ROOT/DGND3700/userspace/ap/gpl"
gplapps="$ROOT/DGND3700/userspace/gpl/apps"
fssrc="$ROOT/DGND3700/targets/fs.src"
fsinstall="$ROOT/DGND3700/targets/DGND3700/fs.install"
######
#Clean
######
[[ -d "$ROOT/DGND3700" ]] && { echo "Deleting existing build";rm -rf "$ROOT/DGND3700"; }
#####################
#Extract GPLd Source
#####################
echo "Extracting original firmware source"
tar xf "$ROOT/DGND3700_src.tar" --exclude="*/minidlna/*" --exclude="*/samba-3.0.13/*" --exclude="*/openssl/*" --exclude="*/busybox/*"
########
#Cleanup
########
echo "Cleaning obsolete remnants from unclean target"
rm -f "$fsinstall/bin/automount" \
"$fsinstall/bin/pppd" \
"$fsinstall/usr/sbin/ddnsd" \
"$fsinstall/usr/sbin/telnetenabled" \
"$fsinstall/usr/sbin/udhcpd" \
"$fsinstall/usr/sbin/udhcpc" \
"$fsinstall/usr/sbin/timesync" \
"$fsinstall/sbin/ntpclient" \
"$fsinstall/usr/bin/mtools"
#################
# Extract Sources
#################
echo "Making new directories"
mkdir -p "$apgpl/mdlna" "$fsinstall/www/"
echo "Extracting new sources"
tar -zxf "$sources/arp-scan-1.9.tar.gz" -C "$apgpl"
tar -zxf "$sources/Automatic-0.8.3.tar.gz" -C "$apgpl"
pushd "$apgpl/Automatic-0.8.3" ; ./autogen.sh > /dev/null ; popd
tar -zxf "$sources/avahi-147cdce.tar.gz" -C "$apgpl"
mv "$apgpl/avahi-147cdce" "$apgpl/avahi-0.6.32"
pushd "$apgpl/avahi-0.6.32" ; NOCONFIGURE=1 ./autogen.sh >/dev/null; popd
tar -zxf "$sources/bbe-0.2.2.tar.gz" -C "$apgpl"
tar -jxf "$sources/busybox-1.22.1.tar.bz2" -C "$gplapps"
tar -jxf "$sources/curl-7.35.0.tar.bz2" -C "$apgpl"
tar -zxf "$sources/dhcpdump-1.8.tar.gz" -C "$apgpl"
tar -Jxf "$sources/dnsmasq-2.72.tar.xz" -C "$apgpl"
#tar -jxf "$sources/dropbear-2014.65.tar.bz2" -C "$apgpl"
unzip -q "$sources/dropbear-master.zip" -d "$apgpl"
mv "$apgpl/dropbear-master" "$apgpl/dropbear-2014.66"
pushd "$apgpl/dropbear-2014.66" ; autoconf; autoheader > /dev/null ; popd
tar -zxf "$sources/e2fsprogs-1.42.9.tar.gz" -C "$apgpl"
tar -zxf "$sources/expat-2.1.0.tar.gz" -C "$apgpl"
#tar -jxf "$sources/ffmpeg-2.2.3.tar.bz2" -C "$apgpl/mdlna"
tar -jxf "$sources/ffmpeg-2.0.4.tar.bz2" -C "$apgpl/mdlna"
tar -Jxf "$sources/flac-1.3.0.tar.xz" -C "$apgpl/mdlna"
tar -zxf "$sources/fuse-2.7.6.tar.gz" -C "$apgpl"
tar -zxf "$sources/igmpproxy-0.1.tar.gz" -C "$apgpl"
tar -zxf "$sources/inadyn-mt.v.02.24.43.tar.gz" -C "$apgpl"
tar -zxf "$sources/jpegsrc.v9.tar.gz" -C "$apgpl/mdlna"
tar -zxf "$sources/libdaemon-0.14.tar.gz" -C "$apgpl"
tar -zxf "$sources/libevent-2.0.21-stable.tar.gz" -C "$apgpl"
tar -jxf "$sources/libexif-0.6.21.tar.bz2" -C "$apgpl/mdlna"
tar -zxf "$sources/libid3tag-0.15.1b.tar.gz" -C "$apgpl/mdlna"
tar -zxf "$sources/libnfsidmap-0.25.tar.gz" -C "$apgpl"
tar -Jxf "$sources/libogg-1.3.1.tar.xz" -C "$apgpl/mdlna"
tar -zxf "$sources/libpcap-1.5.3.tar.gz" -C "$apgpl"
tar -Jxf "$sources/libvorbis-1.3.4.tar.xz" -C "$apgpl/mdlna"
tar -zxf "$sources/libxml2-git-snapshot.tar.gz" -C "$apgpl"
tar -zxf "$sources/minidlna-1.1.4.tar.gz" -C "$apgpl/mdlna"
#unzip -q "$sources/minidlna-git-75a697a6711debbfc9b101a7ea95440a3faead90.zip" -d "$apgpl/mdlna"
# mv "$apgpl/mdlna/minidlna-git-75a697a6711debbfc9b101a7ea95440a3faead90" "$apgpl/mdlna/minidlna-1.1.4"
# pushd "$apgpl/mdlna/minidlna-1.1.4" ; ./autogen.sh > /dev/null ; popd
tar -zxf "$sources/mini_snmpd-1.2b.tar.gz" -C "$apgpl"
tar -jxf "$sources/nfs-utils-1.3.0.tar.bz2" -C "$apgpl"
tar -zxf "$sources/ntfs-3g_ntfsprogs-2014.2.15.tgz" -C "$apgpl"
tar -zxf "$sources/openssh-6.6p1.tar.gz" -C "$apgpl"
tar -zxf "$sources/openssl-1.0.2-beta3.tar.gz" -C "$apgpl"
mv "$apgpl/openssl-1.0.2-beta3" "$apgpl/openssl-1.0.2"
pushd "$apgpl/openssl-1.0.2" ; ./Configure shared zlib-dynamic linux-mips32 >/dev/null ; popd
tar -Jxf "$sources/openvpn-2.3.4.tar.xz" -C "$apgpl"
tar -jxf "$sources/p910nd-0.95.tar.bz2" -C "$apgpl"
tar -zxf "$sources/pcre-8.33.tar.gz" -C "$apgpl"
tar -zxf "$sources/portmap_6.0.orig.tar.gz" -C "$apgpl"
tar -zxf "$sources/samba-3.6.24.tar.gz" -C "$apgpl"
tar -zxf "$sources/sqlite-autoconf-3080600.tar.gz" -C "$apgpl/mdlna"
tar -Jxf "$sources/strace-4.7.tar.xz" -C "$apgpl"
tar -zxf "$sources/tcpdump-4.5.1.tar.gz" -C "$apgpl"
tar -Jxf "$sources/transmission-2.84.tar.xz" -C "$apgpl"
tar -zxf "$sources/watchdog-5.13.tar.gz" -C "$apgpl"
tar -zxf "$sources/wol-0.7.1.tar.gz" -C "$apgpl"
tar -Jxf "$sources/zlib-1.2.8.tar.xz" -C "$apgpl/mdlna"
###########
##Additions
###########
echo "Copying stuff not practicable to patch or new"
cp "$additions/adsl_phy_A2pv6C035m.bin" "$ROOT/DGND3700/bcmdrivers/broadcom/char/adsl/impl1/adsl_phyDGND3700.bin_save" #ADSL binary blob from beta 0.20 firmware
cp "$additions/busybox.config" "$gplapps/busybox-1.22.1/.config" #busybox config
cp "$additions/mdlna.Makefile" "$apgpl/mdlna/Makefile" #new minidlna Makefile
tar -zxf "$additions/nat5.tar.gz" -C "$apgpl" #special acos lib manipulator
cp -R "$additions/etc" "$fssrc" #etc and etc/init.d scripts
cp -R "$additions/pxe" "$fsinstall/usr" #pxe boot files
cp "$additions/DEV_device.htm" "$fsinstall/www/" #modified attached devices page
###############
#BINARY PATCHES
###############
echo 'Patch /sbin/acos_service to change resolver file name, repurpose deprecated udhcpc hostname -H option via corresponding nvram var system_name. Stop pointless dsldiagd starting'
#heartbeat calls 'acos_service stop_wan' , something happens in middle of process ; read resolve.auto, output to resolv.tmp, delete resolve.auto, mv resolve.tmp resolve.auto.
#This ends with chopped or deleted resolve.auto and breaks it forevermore. removing resolv.tmp stops stops it being tried.
bbe \
-e 's#/tmp/resolv.tmp#\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0#' \
-e 's#resolv.conf#resolv.auto#' \
-e 's#-H#\0\0#' \
-e 's#dsldiagd &#\0\0\0\0\0\0\0\0\0\0#' \
-o "$fsinstall/sbin/acos_service" "$additions/acos_service.20"
echo 'Patch /sbin/bd to stop killing syslogd, dnsmasq, udhcpd, smbd, nmbd and nuking whole of /var/run/*.pid, change killing of dnsmasq and udhcpd into dnsmasq restart'
bbe \
-e 's#rm -rf /tmp/var/run/*.pid#\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0#' \
-e 's#rm -rf /var/run/*#\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0#' \
-e 's#killall udhcpd\0\0killall dnsmasq\0/tmp/resolv.conf#/etc/init.d/dnsmasq.sh restart\0\0/tmp/resolv.auto#' \
-e 's#killall smbd#\0\0\0\0\0\0\0\0\0\0\0\0#' \
-e 's#killall nmbd#\0\0\0\0\0\0\0\0\0\0\0\0#' \
-e 's#killall syslogd#\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0#' \
-o "$fsinstall/sbin/bd_" "$fsinstall/sbin/bd"
mv "$fsinstall/sbin/bd_" "$fsinstall/sbin/bd"
echo 'Patch /usr/sbin/httpd for RIP - repurpose deprecated <%40%> and build date insertion'
bbe \
-e 's#nvram_get("dlna_auto_scan_content")\;#nvram_get("rip_dir")\;\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0#' \
-e "s#V1.0.0.17\0#$(date -I)#" \
-e "s#/tmp/minidlna.conf#/tmp/change_config#" \
-o "$fsinstall/usr/sbin/httpd_" "$fsinstall/usr/sbin/httpd"
mv "$fsinstall/usr/sbin/httpd_" "$fsinstall/usr/sbin/httpd"
echo 'Patch to disable subnet check for openVPN so can access from 10.8.0.1 , offset 0xF1A0'
printf '\x10\x00' | dd of="$fsinstall/usr/sbin/httpd" bs=1 seek=$((0xF1A0)) count=2 conv=notrunc
echo 'Patch /lib/libacos_shared.so to generate arp data table, called from httpd'
bbe \
-e "s#cat /proc/net/delatta#/etc/arp_tab.sh\0\0\0\0\0\0#" \
-o "$fsinstall/lib/libacos_shared.so_" "$fsinstall/lib/libacos_shared.so"
mv "$fsinstall/lib/libacos_shared.so_" "$fsinstall/lib/libacos_shared.so"
echo 'Patch /usr/sbin/heartbeat for wan-up action'
bbe \
-e 's#cp /proc/net/dev /tmp/wan_dev#/tmp/wan-up.sh &\0\0\0\0\0\0\0\0\0\0\0\0\0#' \
-o "$fsinstall/usr/sbin/heartbeat_" "$fsinstall/usr/sbin/heartbeat"
mv "$fsinstall/usr/sbin/heartbeat_" "$fsinstall/usr/sbin/heartbeat"
echo 'Patching /bin/lld2d to stop it randomly breaking the LAN Device Name , aka nvram var friendly_name'
bbe \
-e 's#802.11 Broadcom Reference#DGND3700\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0#' \
-e "s#V1.0.0.17\0#$(date -I)#" \
-o "$fsinstall/bin/lld2d_" "$fsinstall/bin/lld2d"
mv "$fsinstall/bin/lld2d_" "$fsinstall/bin/lld2d"
echo "Creating verstamped logo" #WWW logo need ImageMagick
convert "$additions/settings_dgn2200.JPG" -gravity SouthWest -pointsize 8 -annotate +5+5 "DGND3700_A_D ${build}" "$fsinstall/www/settings_dgn2200.JPG"
convert "$additions/settings_dgn2200.JPG" -gravity SouthWest -pointsize 8 -annotate +5+5 "DGND3700_A_D ${build}" -resize 640x480 -gravity north -background black -extent 640x480 "$fsinstall/usr/pxe/background.jpg"
#####
#LIBS
#####
echo "Copying toolchain core libs"
cp -a /opt/toolchains/uclibc-crosstools-gcc-4.2.3-3/lib/*.so* "$fsinstall/lib"
cp -a /opt/toolchains/uclibc-crosstools-gcc-4.2.3-3/usr/mips-linux-uclibc/lib/lib[sg][sc]*.so* "$fsinstall/lib"
############
#Permissions
############
echo "Set all modified binaries and shell scripts executable"
find "$fssrc/etc/" -name "*.sh" -exec chmod 755 {} \;
chmod -R 755 "$fsinstall/bin" "$fsinstall/sbin" "$fsinstall/usr/sbin"
########
#PATCHES
########
echo "Applying patches"
for i in $(ls "$patches/"*\.patch)
do
echo ">>> PATCHING $i >>>"
patch --binary -E -N -p0 < "$i"
[[ $? -eq 0 ]] && echo "<<< OK PATCHED $i <<<" || { echo "*** FAILED *** Patching $i";exit 1; }
done
echo "Applying tytso ext4 backports"
patch --binary -E -N -p1 --directory="$ROOT/DGND3700/kernel/linux" < "$patches/tytso-ext4/2.6.21-ext4-1"
echo "Applying 3rd party patches wl500-oleg/kernel"
for i in $(ls "$patches/wl500-oleg/"*\.patch)
do
echo ">>> PATCHING $i >>>"
patch --binary -E -N -p1 -l --directory="$ROOT/DGND3700/kernel/linux" < "$i"
[[ $? -eq 0 ]] && echo "<<< OK PATCHED $i <<<" || { echo "***FAILED*** Patching $i";exit 1; }
done
echo "Applying 3rd party patches wl500-oleg/igmpproxy"
for i in $(ls "$patches/wl500-oleg/igmpproxy/"*\.patch)
do
echo ">>> PATCHING $i >>>"
patch --binary -E -N -p1 -l --directory="$ROOT/DGND3700/userspace/ap/gpl/igmpproxy-0.1" < "$i"
[[ $? -eq 0 ]] && echo "<<< OK PATCHED $i <<<" || { echo "***FAILED*** Patching $i";exit 1; }
done
# ** needs further investigation due to LED/gpio breakage
#echo "Applying 3rd party patches wl500-oleg MIPS"
#for i in $(ls "$patches/wl500-oleg/linux-mips/"*\.patch)
#do
# echo ">>> PATCHING $i >>>"
# patch --binary -E -N -p1 -l --directory="$ROOT/DGND3700/kernel/linux" < "$i"
# [[ $? -eq 0 ]] && echo "<<< OK PATCHED $i <<<" || { echo "***FAILED*** Patching $i";exit 1; }
#done
######
#BUILD
######
cd "$ROOT/DGND3700"
export PATH=${PATH}:/opt/toolchains/uclibc-crosstools-gcc-4.2.3-3/usr/bin
make PROFILE=DGND3700
echo "Started:" $start
echo "Finished:" $(date)
#######
#BACKUP
#######
cd "$ROOT"
[[ -d "$backup" ]] || mkdir -p "$backup"
tar zcf "$backup/DGND3700_$build.BUILD.tar.gz" -C "$ROOT" "additions" "patches/"*.patch "patches/wl500-oleg/"*.patch "patches/wl500-oleg/igmpproxy/"*.patch "patches/wl500-oleg/linux-mips/"*.patch "go.sh"
cp "$ROOT/DGND3700/images/"DGND3700_* "$backup/"
Additions
For information about all the additional files (everything not in patches)
DGND3700 V1 Transmission Firmware Additions
Patches
Source file patches
DGND3700 V1 Transmission Firmware Patches
Rebuild
Ignore this , this is to create archive above fro my sources.
tar cvzf DGND3700_XXXXXXXX_A_D.BUILD.tar.gz --exclude="*~" --exclude="*/deprecated/*" go.sh additions patches
Comments
blog comments powered by Disqus