CVS: src/si/docs README,1.8,1.9

Mats Wichmann <[email protected]>
Newsgroups gmane.linux.lsb.implementation
Message-ID <[email protected]>
Update of /cvsroot/lsb/src/si/docs
In directory sc8-pr-cvs1:/tmp/cvs-serv12260

Modified Files:
	README 
Log Message:
Update, pass 1


Index: README
===================================================================
RCS file: /cvsroot/lsb/src/si/docs/README,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -r1.8 -r1.9
*** README	29 Aug 2002 18:06:56 -0000	1.8
--- README	15 Jan 2003 21:10:30 -0000	1.9
***************
*** 2,7 ****
  
  This package contains the components to build a sample implementation of the
! Linux Standards Base (LSB) version 1.2.  It is built using the Linux From
! Scratch (LFS) project's build system as a starting point.  The goal of this
  sample implementation is to create a minimal system which contains only items
  required by the LSB.  The hope is that other groups can then use this minimal
--- 2,7 ----
  
  This package contains the components to build a sample implementation of the
! Linux Standards Base (LSB) version 1.2 and later.  It is built using the Linux
! From Scratch (LFS) project's build system as a starting point.  The goal of this
  sample implementation is to create a minimal system which contains only items
  required by the LSB.  The hope is that other groups can then use this minimal
***************
*** 17,79 ****
  about the test suite.
  
  Build Information:
  
! In order to get started with the LSBsi you need to first build src/tools/nALFS
! from LSB cvs, download the set of source bundles, and then run the entitycheck
! script.
  
! From within the si directory running 'make nALFS' will build the tool once you
! have checked it out from cvs.
  
  $ pwd
! /home/shaleh/lsb
! $ cvs co src/tools/nALFS
  $ cd src/si
! $ make nALFS
! 
! Next up you need to retrieve the packages that form the LSBsi, these can be
! obtained from:
  
! ftp://ftp.freestandards.org/pub/lsb/impl/beta/source
! 
! You are looking for files name lsbsi-patches-<date>.tar.gz and
! lsbsi-packages-<date>.tar.  The dates need not match but be sure to get the
! latest version available.
! 
! Once the file is downloaded, make a directory somewhere on your system.  The
! location where the LSBsi build expects to find the sources is
! /usr/src/packages/LFS/packages-3.2 but this can be changed by running the
! Configure script found in the LSBsi's top level directory.  From within the
! new source directory:
! 
! $ tar xvf /path/to/lsbsi-packages-08282002.tar
! 
! This will give you all of the sources and patches required to build the si. 
! 
! Return to the LSBsi's top level directory and run extras/entitycheck.py.  This
! utility verifies that you have all of the sources required to build the LSBsi.
! If a package is missing you will not find out until partially through the
! build and that will mean an hour or two of wasted time.  entitycheck is a
! simple script which takes two arguments -- the entity file listing the packages
! needed (entities/package) and the path to the sources you downloaded above.
! A sample run looks like:
! 
! $ cd src/si/extras
! $ ./entitycheck.py ../entities/package /usr/src/LSB/packages/
! Package entities found: 54
! Patch entities found: 14
! 
! If any files are missing or if extra files are found the script will list
! the file name(s).  This both ensures you have everything needed and prevents
! the accumulation of cruft as the packages change.
! 
! Next run the Configure script in the top level of the si.  This will ask for
! the location of the sources as well as where to build the si and its
! components.  There is a little intelligence in the script but not much.  It
! will detect missing directories or warn you of existing si pieces but not much
! else.
  
  Once this is done, you can either execute 'nALFS LSB.xml' or run 'make' --
! either must be done as root. This will create the si rooted at /mnt/lsbsi by
  default, you can also change this with the Configure script as noted above.
  nALFS will provide a curses based interface whereas the makefile will run nALFS
--- 17,95 ----
  about the test suite.
  
+ Note: a quickstart recipe is available on the web page
+ http://www.linuxbase.org/impl/build.html.  If all you want to do is compile
+ the sample, that may be the place to start.
+ 
  Build Information:
  
! In order to get started with the LSBsi you need to build src/tools/nALFS
! from LSB cvs, download the set of source bundles, and run the entitycheck
! script to make sure everything is in place.  As of version 1.3 of the
! sample, the entitycheck script can handle downloading the source bundles.
! 
! From within the si directory running 'make nalfs' will build the tool once you
! have checked it out from cvs. 
  
! If you only want to check out a snapshot for building, and don't plan to
! commit changes back into the cvs tree, 'cvs export' should serve fine:
  
  $ pwd
! /home/shaleh
! $ mkdir LSB
! $ cd LSB
! $ cvs -d :pserver:[email protected]:/cvsroot/lsb export -D now src/si
! $ cvs -d :pserver:[email protected]:/cvsroot/lsb export -D now tools/nALFS
  $ cd src/si
! $ ./Configure
! ... answer the questions ...
! $ make nalfs
! 
! Next up you need to retrieve the packages that form the LSBsi.
! For each entity that describes a package, there's a matching
! line in the extras/package_locations file that describes where
! to find the package, and optionally an alternate location if
! the main location is likely to change.  Stable, official locations
! are used when possible, the "likely to change" comes in when
! the website follows a policy of moving an older release to
! a different location when a new one comes out.  The entitycheck
! tool can retrieve the packages if it's able to speak ftp and
! http without being stopped by your firewall (see below for a
! quick note on using a proxy).  The entitycheck tool can also
! check a file of checksums (extras/md5sums) for further verification
! that you have the right bits.
! 
! $ make update
! (runs entitycheck to retrieve packages)
! 
! You may need to do this as root depending on the permissions
! you set on the package directory you specified to Configure.
! 
! 
! Proxy note:
! 
! entitycheck uses the Python urllib library to retrieve packages.
! This library can try to use a proxy for the http and ftp services.
! If you need to use a proxy, first set 'http_proxy' and 'ftp_proxy'
! in the environment, using the form: xxx_proxy=host:port
! 
! 
! Next, you'll need to move the required patches to the package directory.
! The entitychecker does not retrieve those since you already have them:
! they're in the src/si/patches directory.  Copy those to the package
! directory.
! 
! Return to the LSBsi's top level directory and run extras/entitycheck.py
! one more time.  The resulting report will tell you about any missing
! entities.  If you use the makefile to drive the build, it will run
! the entitychecker before starting, and refuse to proceed if there
! are any problems. Otherwise, if a package is missing you will not find
! out until partially through the build and that may mean many hours
! of wasted time.
  
! $ cd ~/LSB/src/si
! $ extras/entitycheck.py -c
  
  Once this is done, you can either execute 'nALFS LSB.xml' or run 'make' --
! either must be done as root. This will create the si rooted at /usr/src/si by
  default, you can also change this with the Configure script as noted above.
  nALFS will provide a curses based interface whereas the makefile will run nALFS
***************
*** 87,107 ****
  
  Note, the build started with LSB.xml will take roughly 3 hours on a 1.7ghz
! P4, consume around a gigabyte of disk space, and in general swamp the machine.
! Find a beefy machine you can ignore for a while as it churns.  If the build
! fails for some reason run 'mount' and find all of the bind mounts nALFS left
! open and close them.  This is usually an extra /proc and the packages mount.
  Then remove the build directory using the path you specified to Configure and
! start again.  That's right, all over (-:  As you become familiar with the
! system you will discover places that are safe to restart from but in the
! beginning just starting fresh is best.  Hopefully this process will become
! more fault tolerant and require less manual control over time.
! 
! Once you have successfully built the LSBsi parts of the build process are left
! behind and can be reused thus reducing the edit/build/test cycle.
! The LSB.phase3.xml file defines how to build just the si and can be used after
! the initial build has completed if changes were only made to phase3.  Typing
! 'make lsbsi' in the top level directory will do just that.
  
  Enjoy a cup (or 3) of your favorite beverage while the system is building ....
  
  Design Information:
--- 103,147 ----
  
  Note, the build started with LSB.xml will take roughly 3 hours on a 1.7ghz
! P4, consume over a gigabyte of disk space, and in general swamp the machine.
! Find a beefy machine you can ignore for a while as it churns.  On slower
! machines, with less memory, the full build has been known to take 20 hours!
! 
! If the build fails for some reason run 'mount' and find all of the bind
! mounts nALFS left open and close them.  This is usually an extra /proc
! and the packages mount.  There's a makefile target to help with this, try
! 
! # make clear_mounts
! 
  Then remove the build directory using the path you specified to Configure and
! start again.  That's right, all over (-:  There's another make target:
! 
! # make scrub
! 
! Actually, the build is mostly restartable in benign cases, that is, if
! your machine crashes or you have to kill the build or something.  But if
! there was a problem and you're not really sure what caused it, like, say,
! something doesn't compile and it could be the compiler you build earlier,
! then it's by far safer to blow the whole build area away and start over.
! 
! Once you have successfully built the LSBsi parts of the build process are
! left behind and can be reused thus reducing the edit/build/test cycle.
! The LSB.phase3.xml file defines how to build just the si and can be used
! after the initial build has completed if changes were only made to phase3.
! Typing 'make lsbsi' in the top level directory will do just that.  The build
! tool leaves a stamp file behind after each major package is built, and the
! makefile leaves a stamp file behind as each phase is completed.  This is one
! of the main restartability features, but there's a downside:  if you *know*
! you want to rebuild a specific package and it doesn't affect anything else
! (i.e., you don't need to resort to "make scrub"), it won't rebuild because the
! stamp file will prevent it.  You'll have to rub out the stamp file to proceed.
! 
! The bootstrap phase puts the stamp files in /tmp.  The other phases run
! in a chroot environment, so the stamps go inside that chroot - in fact,
! they go in the /tmp inside the chroot, so by default they would be in
! /usr/src/si/lsbsi-intermediate/tmp.  The filenames are easy to recognize
! once you find the directory.
  
  Enjoy a cup (or 3) of your favorite beverage while the system is building ....
+ 
  
  Design Information:
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.