I've been using OpenWRT recently (opposed to Tomato/DD-WRT) because I needed a more powerful environment for some of my projects. I also like the more linux/unix feel and more useful command-line interface opposed to relying on the web gui (as with DD-WRT/Tomato) for most tasks. Recently I've wanted to get a few packages working on my OpenWRT routers that didn't already exist! So I'm trying now to learn to build custom openwrt firmwares/packages.
I donno yet!
I'm building these packages on a Gentoo system for a Buffalo WZR-HP-G300NH (ar7xx) router
cd ~ svn co svn://svn.openwrt.org/openwrt/branches/backfire openwrt
Or, you can pull from the latest development branch.
svn co svn://svn.openwrt.org/openwrt/trunk/ openwrt
Feeds are all the other packages available for OpenWRT. There are various feed sources from different people. (Think Gentoo Overlay's) OpenWRT is preconfigured to access a couple of feeds. It's possible to add more if you wish. Anyhow.. Found this info here - https://forum.openwrt.org/viewtopic.php?id=16040
$ ./scripts/feeds update -a
$ ./scripts/feeds update packages
$ ./scripts/feeds search <name>
$ ./scripts/feeds install <name>
$ make menuconfig
$ make package/<name>/{clean,compile} package/index
NOTE: For the toolchain for your target platform must be already compiled.
$ make package/{<name_1>,<name_2>,...,<name_N>}/{clean,compile} package/index
Next! Lets compile it :)
cd openwrt make menuconfig
Next, I change Target System to Atheros AR71xx/AR7240/AR913x then..
To compile everything.
make
Or to compile a specific package only
make package/folder