Changeset 877cc6a
- Timestamp:
- 04/06/2006 07:35:22 PM (18 years ago)
- Branches:
- 1.0, 2.3, 2.3.x, 2.4, ablfs, ablfs-more, legacy, new_features, trunk
- Children:
- a241c33
- Parents:
- a0ed344
- Files:
-
- 23 added
- 13 deleted
- 2 edited
- 3 moved
Legend:
- Unmodified
- Added
- Removed
-
BLFS/blfs.xsl
ra0ed344 r877cc6a 5 5 extension-element-prefixes="exsl" 6 6 version="1.0"> 7 8 <!-- $Id$ --> 7 9 8 10 <!-- XSLT stylesheet to create shell scripts from BLFS books. --> -
BLFS/config
ra0ed344 r877cc6a 1 1 ##### 2 2 # 3 # Configuration file for the jhablfs build script 3 # Configuration file for the blfs module 4 # 5 # $Id$ 4 6 # 5 7 ##### 8 declare -r FTP=ftp://ftp.linuxfromscratch.org/pub/blfs/conglomeration 6 9 7 declare -r SVN="svn://svn.linuxfromscratch.org" 8 declare -r LOG=000-jhablfs.log 9 10 #--- Working directories 11 JHABLFSDIR=~/jhablfs 12 LOGDIR=$JHABLFSDIR/logs 13 MKFILE=$JHABLFSDIR/Makefile 10 #--- Book's sources directory 11 # If you have previously checked out the book from the repository 12 BOOK= 14 13 15 14 #--- Book version 16 BLFSVRS=development15 LFSVRS=development 17 16 18 17 #--- FTP/HTTP mirror used as fallback (full path) … … 26 25 27 26 28 29 27 #==== INTERNAL VARIABLES ==== 30 28 # Don't edit it unless you know what you are doing 31 29 32 30 #--- Default stylesheet 33 XSL=dump-blfs-scripts.xsl 31 XSL=blfs.xsl 32 MKFILE=$JHALFSDIR/Makefile 34 33 35 #--- Files that will be copied to $JHABLFSDIR36 FILES="functions dump-blfs-scripts.xsl" -
LFS/lfs.xsl
ra0ed344 r877cc6a 4 4 %general-entities; 5 5 ]> 6 7 <!-- $Id$ --> 6 8 7 9 <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" … … 21 23 <!-- Install vim-lang package? --> 22 24 <xsl:param name="vim-lang" select="1"/> 25 26 <!-- Time zone --> 27 <xsl:param name="timezone" select="America/Toronto"/> 28 29 <!-- Page size --> 30 <xsl:param name="page" select="letter"/> 31 32 <!-- Locale settings --> 33 <xsl:param name="lang" select="en_CA"/> 23 34 24 35 <xsl:template match="/"> … … 122 133 <xsl:text>
</xsl:text> 123 134 </xsl:when> 135 <!-- Setting $LANG for /etc/profile --> 136 <xsl:when test="ancestor::sect1[@id='ch-scripts-profile'] and 137 contains(string(),'export LANG=')"> 138 <xsl:value-of select="substring-before(string(),'export LANG=')"/> 139 <xsl:text>export LANG=</xsl:text> 140 <xsl:value-of select="$lang"/> 141 <xsl:value-of select="substring-after(string(),'modifiers]')"/> 142 <xsl:text>
</xsl:text> 143 </xsl:when> 124 144 <!-- Copying the kernel config file --> 125 145 <xsl:when test="string() = 'make mrproper'"> … … 182 202 <xsl:choose> 183 203 <xsl:when test="ancestor::sect1[@id='ch-system-glibc']"> 184 <xsl: text>$TIMEZONE</xsl:text>204 <xsl:value-of select="$timezone"/> 185 205 </xsl:when> 186 206 <xsl:when test="ancestor::sect1[@id='ch-system-groff']"> 187 <xsl: text>$PAGE</xsl:text>207 <xsl:value-of select="$page"/> 188 208 </xsl:when> 189 209 <xsl:otherwise> -
README
ra0ed344 r877cc6a 1 jhalfs 0.2 1 $Id$ 2 2 3 The purpose of jhalfs is to provide a pure automated build of Linux From 4 Scratch. It does this by extracting the necessary commands and information 5 straight from the LFS book's XML source. It then creates a Makefile that 6 acts as the automation control of the commands to be run. Finally, if you have 7 specified it to do so, and have the necessary packages available (jhalfs can 8 download them if you need it to), it can begin and log the build process. 3 1. INTRODUCTION:: 9 4 10 There are several options that jhalfs can employ and that may be useful to 11 your particular needs. For a full list run: 5 This collection of scripts, known as jhalfs-X, strives to create 6 accurate makefiles from the Linux From Scratch book series XML files. 7 This software is an evolution of the original "jhalfs" code. 12 8 13 jhalfs --help 9 The usage of this script assumes you have read and are familiar with 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 12 which, if used, will override the config file settings. 14 13 15 Some variables of the build can be adjusted to fit your particular needs and 16 system. The file 'jhalfs.conf' can be used to specify certain variables of the 17 jhalfs build system. For more information, read the 'jhalfs.conf' file as it 18 should be self-explanatory. 14 NOTES:: 15 *. The resulting Makefile takes considerable time to run to completion. 16 Lay in a supply of caffeine beverages. 19 17 20 For help, questions, or to report a bug, please email the alfs-discuss mailing 21 list: 22 alfs-discuss AT linuxfromscratch DOT org 18 *. It is recommended that you temporarily unpack your linux kernel, 19 run <make menuconfig>, configure the kernal as per the book and save 20 the resulting .config file. This suggestion also applies to the 21 configuration of the uClibc package when building a HLFS system using 22 uClibc rather than glibc. 23 24 2. INSTALLATION:: 25 No installation is required. System-wide installation is not allowed 26 for now. 27 28 3. CONFIGURATION FILES:: 29 Each book in the LFS series has its own set of configurable parameters 30 as well as the common parameters file. 31 32 4. RUNNING:: 33 The script master.sh cannot be invoked directly but only via the 34 supplied symlinks. After editing the config file for the project you wish 35 to build, run the script. 36 37 The term <symlink> refers to the 1 of 4 package symlinks, lfs,hlfs,clfs,blfs. 38 Replace <symlink> with your choice of packages; i.e.: ./lfs 39 40 ./<symlink> 41 Create a makefile based on the settings found in the config files. 42 You must enter the build partition/jhalfs directory and manually run <make> 43 44 ./<symlink> -G 45 Download the packages and patches necessary to build <symlink> 46 47 ./<symlink> -G -M 48 Download the packages, create and automatically run the Makefile 49 50 ./<symlink> --help will give you a context sensitive list of command 51 line switches. 52 53 5. LAYOUT:: 54 55 blfs --+ /BLFS config ---+ /common/config 56 | master.sh -+ /common_functions 57 | xxxx.xsl -+ /makefile_functions 58 | /func_check_versions.sh 59 clfs --+ /CLFS config ---+ /func_validate_configs.sh 60 | master.sh -+ 61 | xxxx.xsl -+ 62 | 63 +--------------------- master.sh --------------->>> 64 +--README 65 | 66 hlfs --+ /HLFS config ---+ 67 | master.sh -+ 68 | xxxx.xsl -+ 69 | 70 lfs --+ /LFS config ---+ 71 master.sh -+ 72 xxxx.xsl -+ 73 74 75 6. FAQ:: 76 Q. "It doesn't work" 77 A. Yes it does.. 78 79 Q. "What is the function of the SRC_ARCHIVE variable 80 A. When the makefile runs it creates a local copy of the necessary packages 81 in BUILDDIR/sources by downloading the files. If the variable SRC_ARCHIVE 82 is defined the software will first look in this location for the file and, 83 if found, will copy it to BUILDDIR/sources. If the files are not found in 84 SRC_ARCHIVE _and_ you have write priv to the directory any downloaded 85 files will be mirrored there. 86 87 Q. "Why have 2 copies of the files." 88 A. The package files must be visible during the chroot phase and this is a 89 simple and reliable method of doing so. This method also handles the CLFS 90 build method where the final build may be done on a separate machine. 91 92 Authors: 93 George Boudreau 94 Manuel Canales Esparcia 95 Jeremy Huntwork -
TODO
ra0ed344 r877cc6a 1 1 jhalfs TODO 2 2 --------------- 3 4 (The fixes for this issues are in the experimental branch)5 6 CODE STYLE7 ----------8 9 DONE - To use the same coding style in all modules. The current used10 for HLFS module (colors, error-handling, etc) look a good starting11 point for me, with two notes (to be discussed):12 13 - Bash code: to use two-spaces indentation (no tabs).14 - Makefile code: to use eight-characters tabs.15 16 DONE - To set the "Date" and "Id" svn:keywords properties on all files17 setting the "Id" key on the header of each file and using the18 "Date" key when needed (like in the -v output of jhalfs)19 3 20 4 … … 22 6 ------------- 23 7 24 DONE - Make jhalfs a "master script" that will control and run each25 book's module. When doing that reestructuration we coulud to change26 the tool's name, if wanted.27 28 DONE - Common code for all modules should be placed in this master script.29 30 DONE - Common configuration options should be placed in a master configuration31 file.32 33 DONE - The LFS, CLFS and HLFS modules should be exclusives. I.e., when34 one is called the others must be ignored.35 36 8 - The BLFS moudule should can be called in conjunction with any of 37 9 LFS, CLFS or HLFS modules. 38 10 39 - Addapt the Makefile to install all modules system-wide. 11 - To create a Makefile to install jhalfs-X system-wide. 12 Note: is that actually wanted? 40 13 41 14 … … 44 17 ---------- 45 18 46 DONE - To move the LFS module to their own subdir. 47 48 DONE - Fix the unpack code to don't hang when both the bz2 and gz formats 49 of the same package are founds in the sources dir. 19 - To fix the dowload code when all packages will be placed on the 20 FTP mirrors in the upstream formats. 50 21 51 22 - To add a switch to build the BLFS module dependencies at the end of … … 54 25 at the same time that the LFS book. Plus links or lynx to read the 55 26 (to be) generated BLFS HTML pages and, maybe, gpm. 56 57 58 CLFS MODULE59 -----------60 61 DONE - Start the module creation.62 63 64 HLFS MODULE65 -----------66 67 DONE - To review and fix, if needed, the bash and XSL code.68 69 DONE - Be sure that the book's XML code is in a sane state.70 71 DONE - To do several build test for both Glibc and uClibc based systems.72 27 73 28 … … 127 82 Makefile if additional scripts are manually added to the *-commands/*/ dirs. 128 83 129 - To add support for ICA/farce ? Can be done as a separate module?84 - To add support for ICA/farce. That is a required feature. 130 85 131 86 - To add support for package management??? NO by default, but patches
Note:
See TracChangeset
for help on using the changeset viewer.