File:  [ELWIX - Embedded LightWeight unIX -] / elwix / BUILD.txt
Revision 1.4: download - view: text, annotated - select for diffs - revision graph
Wed Aug 7 13:26:30 2013 UTC (11 years, 3 months ago) by misho
Branches: MAIN
CVS tags: elwix2_2, elwix2_1, HEAD, ELWIX2_1, ELWIX2_0
elwix 2.0

 -= How-to build ELWIX system project =-
=========================================
$Id: BUILD.txt,v 1.4 2013/08/07 13:26:30 misho Exp $
=========================================

 I. Intro
 	Before starting any work on ELWIX must we prepare environment.

What this means ::
 - We must downloading freebsd sources from CVS/SVN repository and put on separate place from /usr/src.
Set in config/rc.elwix variable BSDSRC="..." with place where you get freebsd sources.
 - We gather from ELWIX CVS repository kodicom_mux project. After this we need to patch our freebsd
sources like that "cd <where you put freebsd sources>; patch -p0 < <kodicom_mux/contrib/kodicom.patch>"
 - We must checkout from ELWIX CVS repository core libraries "libait*" , "embedtools", "embedaddons" 
and GPLv2 "gpl/*" projects
 - Optional download of 3th party software for ELWIX firmware. Project name is embedaddon from ELWIX CVS

 II. Build process
 	1. Init build structures with clean directory tree
		./build_init.sh
	2. Cross compile entire userland software
		./build_world.sh
	3. Cross compile ELWIX kernel
		./build_kernel.sh
	4. Cross compile ELWIX tools
		./build_tools.sh
	5. Cross compile optional 3th party software 
		./build_3thparty.sh
	6. Now is moment for build base elwix system
		./build_base.sh
	7. Now moment comes to build big system binary and rootfs to embed into the kernel
		./build_rootfs.sh
	8. Make romfs image and build big fat second stage firmware image
		./build_romfs.sh
	9. Prepare fs image and populate /etc,/boot and others
		./build_fs.sh

 Ok, now we did ELWIX version and placed to build/release directory like tar.gz file

 III. Information
 	Michael Pounov <misho@elwix.org> or <support@elwix.org>

 Best regards
   Michael Pounov
-----
ELWIX - Embedded LightWeight unIX -

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>