File:  [ELWIX - Embedded LightWeight unIX -] / elwix / BUILD.txt
Revision 1.6: download - view: text, annotated - select for diffs - revision graph
Mon Feb 13 16:52:46 2017 UTC (7 years, 3 months ago) by misho
Branches: MAIN
CVS tags: elwix2_6, HEAD, ELWIX2_5
ELWIX 2.5

    1:  -= How-to build ELWIX system project =-
    2: =========================================
    3: $Id: BUILD.txt,v 1.6 2017/02/13 16:52:46 misho Exp $
    4: =========================================
    5: 
    6:  I. Intro
    7:  	Before starting any work on ELWIX must we prepare environment.
    8: 
    9: What this means ::
   10:  - We must downloading freebsd sources from CVS/SVN repository and put on separate place from /usr/src.
   11: Set in config/rc.elwix variable BSDSRC="..." with place where you get freebsd sources.
   12:  - We gather from ELWIX CVS repository kodicom_mux project. After this we need to patch our freebsd
   13: sources like that "cd <where you put freebsd sources>; patch -p0 < <kodicom_mux/contrib/kodicom.patch>"
   14:  - We must checkout from ELWIX CVS repository core libraries "libait*" , "embedtools", "embedaddons" 
   15: and GPLv2 "gpl/*" projects
   16:  - Optional download of 3th party software for ELWIX firmware. Project name is embedaddon from ELWIX CVS
   17: 
   18:  II. Build system process
   19:  	1. Init build structures with clean directory tree
   20: 		./build_init.sh <filename of project config>
   21: 	2. Cross compile entire userland software
   22: 		./build_world.sh
   23: 	3. Cross compile ELWIX kernel
   24: 		./build_kernel.sh
   25: 	4. Cross compile ELWIX tools
   26: 		./build_tools.sh
   27: 	5. Cross compile optional 3th party software 
   28: 		./build_3thparty.sh
   29: ---------------------------------------------------------------------------------
   30: 	6. Now is moment for build BaseFS ELWIX system
   31: 		./build_base.sh
   32: ---------------------------------------------------------------------------------
   33: 	7. Moment comes for build big system binary and inject rootfs image into kernel
   34: 		./build_rootfs.sh
   35: 	8. Make romfs image and build big fat second stage firmware image
   36: 		./build_romfs.sh
   37: 	9. Now is moment for build RootFS ELWIX system
   38: 		./build_fs.sh
   39: ---------------------------------------------------------------------------------
   40: 
   41:  Ok, now we did ELWIX version and placed to build/release directory like tar.gz file
   42: 
   43:  Example of produced tar balls::
   44:  	ELWIX_X.X_target_{base|rootfs|rootfsext}_size_arch_date.tar.gz
   45: 
   46:  III. Build storage image
   47:  	1. Build ELWIX system into binary fs image file
   48: 		./install2img <ELWIX_X.X_target_.....tar.gz> [image_size_in_KB]
   49: 	2. Build ELWIX system into direct device
   50: 		./install2dev </dev/daX> <ELWIX_X.X_target_.....tar.gz>
   51: 	3. Build ELWIX system into separate compressed binary images for u-boot embedded devices
   52: 		./install2uboot <kernel|kernel_rootfs|rootfs|bin|vendor>
   53: 
   54:  IV. Emergency default address
   55:  	IP: 10.254.254.254/30
   56: 	VLAN: 4093
   57: 
   58: 	You should setup at your side 10.254.254.253/30 on VLAN 4093
   59: 
   60:  IV. Information
   61: 	For more information
   62:  	Michael Pounov <misho@elwix.org> or <support@elwix.org>
   63: 
   64:  Best regards
   65:    Michael Pounov
   66: -----
   67: ELWIX - Embedded LightWeight unIX -

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