Skip to content
Zach Leslie edited this page Apr 26, 2016 · 9 revisions

Welcome to the freebsd-wifi-build wiki!

A short example of how to use these scripts

Overview

The build scripts make a few assumptions:

  • The root and obj are built relative to the current directory;
  • The source directory is the current directory - ie, run the scripts from inside the src checkout you wish to build from
  • The configuration files are relative to the build script directory

Assumptions

  • (platformname) is the configuration file name
  • (archname) is BUILDNAME in the config file - this is used to construct the path for object and root directories for the system build
  • This is because multiple platforms share the same architecture, so it's easier to have one shared architecture for the build tools, objdir and root
  • (kernconf) is the KERNCONF entry in the configuration file

Setup

  • Check out a source tree - I use /data/freebsd/head/src
  • Check out these build scripts - I use /data/freebsd/build
  • Make sure you've written, adapted or checked the configuration file in question - here these live in /data/freebsd/build/cfg/
  • Install the required packages - for now is is 'lzma', 'perl5' and 'uboot-mkimage'.

Here's an example of how to get started:

$ sudo pkg install lzma uboot-mkimage perl5
<this part will run as root; but all of the build below can happen as a user>
$ mkdir -p /data/freebsd/head/src
$ cd /data/freebsd
$ git clone git@github.com:freebsd/freebsd-wifi-build /data/freebsd/build
$ svn checkout https://svn.freebsd.org/base/head /data/freebsd/head/src
$ cd /data/freebsd/head/src/
$ /data/freebsd/build/build/bin/build (platformname)

It should put the kernel, mfsroot and relevant flash files in ../tftpboot/ . If you wish to copy things into /tftpboot, then just do

$ cp -vf ../tftpboot/* /tftpboot/