Changeset 877cc6a


Ignore:
Timestamp:
04/06/2006 07:35:22 PM (18 years ago)
Author:
Manuel Canales Esparcia <manuel@…>
Branches:
1.0, 2.3, 2.3.x, 2.4, ablfs, ablfs-more, legacy, new_features, trunk
Children:
a241c33
Parents:
a0ed344
Message:

Merged experimental branch to trunk.
Updated TODO.

Files:
23 added
13 deleted
2 edited
3 moved

Legend:

Unmodified
Added
Removed
  • BLFS/blfs.xsl

    ra0ed344 r877cc6a  
    55    extension-element-prefixes="exsl"
    66    version="1.0">
     7
     8<!-- $Id$ -->
    79
    810<!-- XSLT stylesheet to create shell scripts from BLFS books. -->
  • BLFS/config

    ra0ed344 r877cc6a  
    11#####
    22#
    3 # Configuration file for the jhablfs build script
     3# Configuration file for the blfs module
     4#
     5# $Id$
    46#
    57#####
     8declare -r FTP=ftp://ftp.linuxfromscratch.org/pub/blfs/conglomeration
    69
    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
     12BOOK=
    1413
    1514#--- Book version
    16 BLFSVRS=development
     15LFSVRS=development
    1716
    1817#--- FTP/HTTP mirror used as fallback (full path)
     
    2625
    2726
    28 
    2927#==== INTERNAL VARIABLES ====
    3028# Don't edit it unless you know what you are doing
    3129
    3230#--- Default stylesheet
    33 XSL=dump-blfs-scripts.xsl
     31   XSL=blfs.xsl
     32MKFILE=$JHALFSDIR/Makefile
    3433
    35 #--- Files that will be copied to $JHABLFSDIR
    36 FILES="functions dump-blfs-scripts.xsl"
  • LFS/lfs.xsl

    ra0ed344 r877cc6a  
    44  %general-entities;
    55]>
     6
     7<!-- $Id$ -->
    68
    79<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
     
    2123  <!-- Install vim-lang package? -->
    2224  <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"/>
    2334
    2435  <xsl:template match="/">
     
    122133        <xsl:text>&#xA;</xsl:text>
    123134      </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>&#xA;</xsl:text>
     143      </xsl:when>
    124144      <!-- Copying the kernel config file -->
    125145      <xsl:when test="string() = 'make mrproper'">
     
    182202    <xsl:choose>
    183203      <xsl:when test="ancestor::sect1[@id='ch-system-glibc']">
    184         <xsl:text>$TIMEZONE</xsl:text>
     204        <xsl:value-of select="$timezone"/>
    185205      </xsl:when>
    186206      <xsl:when test="ancestor::sect1[@id='ch-system-groff']">
    187         <xsl:text>$PAGE</xsl:text>
     207        <xsl:value-of select="$page"/>
    188208      </xsl:when>
    189209      <xsl:otherwise>
  • README

    ra0ed344 r877cc6a  
    1 jhalfs 0.2
     1$Id$
    22
    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.
     31. INTRODUCTION::
    94
    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.
    128
    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.
    1413
    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.
    1917
    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
     242. INSTALLATION::
     25     No installation is required. System-wide installation is not allowed
     26  for now.
     27
     283. 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
     324. 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
     535. 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
     756. 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
     92Authors:
     93  George Boudreau
     94  Manuel Canales Esparcia
     95  Jeremy Huntwork
  • TODO

    ra0ed344 r877cc6a  
    11            jhalfs TODO
    22          ---------------
    3 
    4 (The fixes for this issues are in the experimental branch)
    5 
    6 CODE STYLE
    7 ----------
    8 
    9 DONE  - To use the same coding style in all modules. The current used
    10     for HLFS module (colors, error-handling, etc) look a good starting
    11     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 files
    17     setting the "Id" key on the header of each file and using the
    18     "Date" key when needed (like in the -v output of jhalfs)
    193
    204
     
    226-------------
    237
    24 DONE  - Make jhalfs a "master script" that will control and run each
    25     book's module. When doing that reestructuration we coulud to change
    26     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 configuration
    31     file.
    32 
    33 DONE  - The LFS, CLFS and HLFS modules should be exclusives. I.e., when
    34     one is called the others must be ignored.
    35 
    368  - The BLFS moudule should can be called in conjunction with any of
    379    LFS, CLFS or HLFS modules.
    3810
    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?
    4013
    4114
     
    4417----------
    4518
    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.
    5021
    5122  - To add a switch to build the BLFS module dependencies at the end of
     
    5425    at the same time that the LFS book. Plus links or lynx to read the
    5526    (to be) generated BLFS HTML pages and, maybe, gpm.
    56 
    57 
    58 CLFS MODULE
    59 -----------
    60 
    61 DONE  - Start the module creation.
    62 
    63 
    64 HLFS MODULE
    65 -----------
    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.
    7227
    7328
     
    12782    Makefile if additional scripts are manually added to the *-commands/*/ dirs.
    12883
    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.
    13085
    13186  - To add support for package management??? NO by default, but patches
Note: See TracChangeset for help on using the changeset viewer.