source: README@ 3d888ef

experimental
Last change on this file since 3d888ef was 9f46f8b, checked in by Manuel Canales Esparcia <manuel@…>, 19 years ago

Merged r2718 from trunk.

  • Property mode set to 100644
File size: 4.4 KB
RevLine 
[e58c70fd]1$Id$
2
31. INTRODUCTION::
4
[86e1d17]5 This collection of scripts, known as jhalfs-X, strives to create
[fcf5226]6 accurate makefiles from the Linux From Scratch book series XML files.
[854cde2]7 This software is an evolution of the original "jhalfs" code.
[e58c70fd]8
9 The usage of this script assumes you have read and are familiar with
[854cde2]10 the book(s) and, therefore, the configuration variables found in config
11 files will have meaning to you. There are a number of command line switches
[e58c70fd]12 which, if used, will override the config file settings.
13
14 NOTES::
[854cde2]15 *. The resulting Makefile takes considerable time to run to completion.
16 Lay in a supply of caffeine beverages.
[e58c70fd]17
[67e3bc3]18 *. It is recommended that you temporarily unpack your linux kernel,
[3a27393]19 run <make menuconfig>, configure the kernel as per the book and save
[854cde2]20 the resulting .config file. This suggestion also applies to the
[86e1d17]21 configuration of the uClibc package when building a HLFS system using
22 uClibc rather than glibc.
[e58c70fd]23
242. INSTALLATION::
[1a97861]25 No installation is required. System-wide installation is not allowed
[86e1d17]26 for now.
[e58c70fd]27
283. CONFIGURATION FILES::
[854cde2]29 Each book in the LFS series has its own set of configurable parameters
[8ca21dc]30 as well as the common parameters file.
[e58c70fd]31
324. RUNNING::
[854cde2]33 The script master.sh cannot be invoked directly but only via the
[b051b90]34 supplied symlinks. After editing the config file for the project you wish
[854cde2]35 to build, run the script.
36
[9f46f8b]37 The term <symlink> refers to the 1 of 3 package symlinks, lfs,hlfs,clfs.
[854cde2]38 Replace <symlink> with your choice of packages; i.e.: ./lfs
[fcf5226]39
[d20c553]40 ./<symlink> eg: ./lfs or ./hlfs
[67e3bc3]41 Create a makefile based on the settings found in the config files.
[854cde2]42 You must enter the build partition/jhalfs directory and manually run <make>
[fcf5226]43
[d20c553]44 ./<symlink> -G eg: ./lfs -G
[fcf5226]45 Download the packages and patches necessary to build <symlink>
[67e3bc3]46
[d20c553]47 ./<symlink> -G -M eg: ./lfs -G -M
[fcf5226]48 Download the packages, create and automatically run the Makefile
[67e3bc3]49
[d20c553]50 ./<symlink> --help eg: ./lfs --help
51 will give you a context sensitive list of command line switches.
[e58c70fd]52
535. LAYOUT::
54
[d20c553]55 /CLFS/config
56 /master.sh
57 /xxxx.xsl
[9f46f8b]58
[d20c553]59 /HLFS/config
60 /master.sh
61 /xxxx.xsl
62
63 /LFS/config
64 / master.sh
65 /xxxx.xsl
66
67 /common/config
68 /common_functions
69 /makefile_functions
70 /func_check_versions.sh
71 /func_validate_configs.sh
72
73 /contrib/jhalfs-paco.patch
74
75 /extras/do_copy_files
76 /do_ica_prep
77 /do_ica_work
78 /farce
79 /filelist
80
81 README
82 README.PACO
83 TODO
[9f46f8b]84
[d20c553]85 ./clfs ---|
[9f46f8b]86 ./hlfs ---|+---> master.sh
87 ./lfs ---|
88
89
[e58c70fd]906. FAQ::
[3a27393]91 Q. "It doesn't work!"
[d20c553]92 A. Yes it does, try ./lfs --help
[9f46f8b]93
[3a27393]94 Q. "How do I specify the build location?"
[65d83a6]95 A. The original LFS document worked against the well know location /mnt/lfs.
96 This script automates the build of all of the LFS series of books and uses
97 a generic location $BUILDDIR with a default value a /mnt/build_dir.
98 You may change this value to suit your needs.
[9f46f8b]99
[65d83a6]100 The layout below $BUILDDIR is as follows.
101 $BUILDDIR/
102 jhalfs (makefile,cmd scripts,logs..etc)
[d20c553]103 sources (where packages reside)
[9f46f8b]104 tools (temporary bootstrap system)
[d20c553]105 cross-tools (temporary CLFS only)
[65d83a6]106 ...
107 FHS dir structure
108 ...
[9f46f8b]109
[3a27393]110 Q. "What is the function of the SRC_ARCHIVE variable?"
[fed9756]111 A. When then symlinked master.sh runs it creates a local copy of the
112 necessary packages in BUILDDIR/sources by downloading the files. If
113 the variable SRC_ARCHIVE is defined the software will first look in
114 this location for the file and, if found, will copy it to BUILDDIR/sources.
115 If the files are not found in SRC_ARCHIVE _and_ you have write priv to
116 the directory any downloaded files will be mirrored there.
[9f46f8b]117
[3a27393]118 Q. "How do I set the SRC_ARCHIVE location?"
[65d83a6]119 A. The best way to set the value of SRC_ARCHIVE is
120 export SRC_ARCHIVE=/wherever/you/store/downloaded/packages
121 OR
[9f46f8b]122 you can change the setting in .common/config.
123
[3a27393]124 Q. "Why have 2 copies of the files?"
[466b5cc]125 A. The package files must be visible during the chroot phase and this is a
126 simple and reliable method of doing so. This method also handles the CLFS
127 build method where the final build may be done on a separate machine.
[fcf5226]128
129Authors:
[67e3bc3]130 George Boudreau
[fcf5226]131 Manuel Canales Esparcia
[67e3bc3]132 Jeremy Huntwork
Note: See TracBrowser for help on using the repository browser.