[Lunar-commits] <lunar-iso> Updated README

Peter de Ridder peter at lunar-linux.org
Thu Apr 11 00:32:30 CEST 2013


commit 7d8b2ba56a1cb3e96ee449bb6e89275f8d7aa7e7
Author: Peter de Ridder <peter at lunar-linux.org>
Date: Mon, 10 Dec 2012 15:26:41 -0800
URL: https://github.com/lunar-linux/lunar-iso/commit/7d8b2ba56a1cb3e96ee449bb6e89275f8d7aa7e7

Updated README
---
  README | +55/-38   
  1 file changed, 55 insertions(+), 38 deletions(-)

--- a/README
+++ b/README
@@ -9,7 +9,8 @@ ISO images based on a fixed set of tools. The code should be as self-
 sufficient as possible and generate as much of the binaries as possible
 so porting to other platforms will be easy. Please keep this in mind if
 you change the scripts and want to include binaries. This should be kept
-to a minimum.
+to a minimum. Note that this code doesn't do cross builds and it requires a
+Lunar host.
 
 The ISO has been optimized to minimize the number of alien files. These
 should always be as much as possible be provided by modules. The exception
@@ -21,54 +22,70 @@ that really (really (really)) do not need to be in there.
 
 -- Start
 
-Right now the Makefile should provide you the proper list of steps to
-take but there are a few necessary prerequisites that the CVS copy does not
-contain:
+The Makefile should be able to do most of the ISO building automatically, but
+there are a few steps that need to be taken:
 
- o A proper cache tar.bz2 of every required package (including core tools)
- o A full set of sources for each module
  o Configure the base parameters of the ISO in conf/config
+ o For now, copy one of theisolinux/isolinux.cfg.in to isolinux/isolinux.cfg
  
-You will need to provide this in order to succesfully perform all steps.
-The cache copies wiil be used to bootstrap your ISO, after which basically
-the scripts perform a rebuild of every package and create the optimum
-least-common denominator dependency-based install. 
+The code tries to polute the host system as little as it can. It will however
+create a build cache for the bootstrap modules if it doesn't exist already.
+Also it will download all the sources of core modules. Last it will install
+cdrtools if mkisofs isn't found.
 
-A fresh moonbase will be installed on your computer and a copy kept to be
-transferred onto the target automatically.
+The build cache will be copied to cache/ and the sources of the core modules
+will be copied to spool/.
 
-The cache tar.bz2's may be left in /var/cache/lunar and will automatically as
-needed be copied to cache/
-
-The same goes for the sources, they end up in spool/
+The cache is used to bootstrap the ISO building. As first stage a few modules
+are build. These modules are then copied to cache/. For the second stage
+this cache is used to build all the core modules.
 
 
 -- Building it
 
 Here's a brief explanation of the make targets:
 
-prepare		download all the required sources
-init		setup the buildroot
-dirs		make LSB dirs and a few more needed
-toolset		fetch a copy of moonbase.tar.bz2 and install it
-unpack		extract the cache tar.bz2's
-etc		copy the template files that are not provided by modules
-rebuild		rebuild all modules at least once
-aaa_base	create a tarball with required but untracked files
-aaa_dev		create static device nodes needed by iso and initrd
-proper		clear temporary files in the image and clean up some misc stuff
-memtest		create a memtest boot image
-kernels		compile a set of kernels for both the initrd and to be installed
-initrd		compose the initrd from the template and miscfiles
-iso		create the final iso image
-test		run some (limited) tests after `make iso`
-dist		pack up the iso and calculate md5sums
-
-misc. targets:
-tar		create a big tar of the current BUILD tree
-burn		burn the latest iso image
-blank		blank an entire cdrw
-clean		wipes it all away
+target			create BUILD/ directory
+
+boostrap-lunar		use Lunar host to get the main modules into BUILD/
+boostrap-base		populate BUILD/ directory with generic files
+boostrap		populate BUILD/ directory
+
+install-moonbase	download and extract the moonbase to BUILD/
+download-lunar		use Lunar host to download all sources
+download		download all sources
+
+stage1-spool		copy spool/ to BUILD/
+stage1-moonbase		fix the moonbase cache files
+stage1-toolchian	build gcc, glibc and binutils
+stage1-build		build the main modules
+stage1-cache		copy stage1 to cache/
+stage1			build stage1 and copy to cache/
+
+stage2-target		create a clean BUILD/
+stage2-base		populate BUILD/ directory with generic files
+stage2-modules		populate BUILD/ with stage1 modues
+stage2-spool		copy spool/ to BUILD/
+stage2-extract-moonbase	extract the moonbase to BUILD/
+stage2-moonbase		fix the moonbase cache files
+stage2-build		build stage2
+stage2			build stage2 from stage1
+
+pack-base		create aaa_base.tar.bz2
+pack			create packages of alien files
+
+linux			build linux kernel
+kernel			create kernel for the ISO and installation
+
+iso-target		clean stage2 markers
+iso-modules		remove modules not needed on the ISO
+iso-tools		check for mkisofs
+iso-files		create config files for the ISO
+iso-strip		strip all executables
+iso-isolinux		copy isolinux files to BUILD/
+iso			create the ISO from stage2
+
+clean			wipes it all away
 
 The Makefile itself contains no configurable items. Copy the template config
 in the conf/ directory to conf/config and adjust the values as needed for




More information about the Lunar-commits mailing list