Skip to content

Instantly share code, notes, and snippets.

@cyphunk
Created June 10, 2012 12:16
Show Gist options
  • Save cyphunk/2905232 to your computer and use it in GitHub Desktop.
Save cyphunk/2905232 to your computer and use it in GitHub Desktop.
OpenWRT Tor Backfire 10.03.1-rc4 r24045 compile procedures

I needed to update the tor revision that is available for an older installation of OpenWRT. The following are the procedures I used to build Tor for OpenWRT Backfire 10.03.1-rc4 r24045 using a OSX workstation.

OpenWRT build environment

The default FS configuration in OSX does not support case-sensitivity. Therefore we will download the SVN and all files onto a local sparse disk image we create with

hdiutil create -size 700m -type SPARSEBUNDLE -fs "Case-sensitive HFS+"  -attach -nospotlight -volname openwrt_tor openwrt_tor

Get the sources for the specific tree, version and revision, from SVN:

cd /Volumes/openwrt_tor
svn checkout --revision=24045 svn://svn.openwrt.org/openwrt/tags/backfire_10.03.1
mv backfire_10.03.1/ backfire_10.03.1_r24045
cd backfire_10.03.1_r24045

Modify the package source configuration to grab for the same revision

cp feeds.conf.default feeds.conf
sed -i bk -e 's/openwrt\/packages/openwrt\/packages@24045/' feeds.conf

Update sources

./scripts/feeds update -a
./scripts/feeds install -a

Modify build configuration. I used make menuconfig and changed various options (use make menuconfig FORCE=1 if you want to force a build on HFS+ without case-sensitivity -- will probably break at some point in the build process though). Naimly changing the target for system type "Atheros AR9132 rev" and machine type "Buffalo WZR-HP-G300NH". The rest of the settings (kernel version, linux version) the menuconfig handled.

CONFIG_TARGET_ar71xx=y
CONFIG_TARGET_ar71xx_WZRHPG300NH=y
CONFIG_TARGET_BOARD="ar71xx"
CONFIG_TARGET_ARCH_PACKAGES="ar71xx"
CONFIG_DEFAULT_TARGET_OPTIMIZATION="-Os -pipe -mips32r2 -mtune=mips32r2 -funit-at-a-time"
CONFIG_LINUX_2_6_32=y

I also added the tor package it already had just to see what happens. Might be helpful to see the build flags and configuration already setup for this package.

make

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment