source: README.BLFS@ f65d3cb

2.3 2.3.x 2.4 ablfs ablfs-more legacy new_features trunk
Last change on this file since f65d3cb was 57c7bfe, checked in by Manuel Canales Esparcia <manuel@…>, 18 years ago

Renamed makefile.conf to envars.conf

  • Property mode set to 100644
File size: 3.8 KB
RevLine 
[824b6e4]1$Id$
2
31. INTRODUCTION::
4
5 To automatize packages build from the BLFS book instructions is a huge
6 task. The BLFS book isn't linear, some package pages need to use a non
7 defaul layout, there are circular dependencies, several packages can be
8 installed on a non default prifix, build commands can change based on what
9 dependencies will be used, etc.
10
11 Said that, the goal of jhalfs is try to help you solving packages
12 dependencies and creating your own build scripts/Makefile. Some of the
13 auto-generated build scripts and Makefile could work "as is", but as a
14 general rule you will need to review and edit the scripts while reading
15 the book.
16
[4c5274d]17 NOTE:: The code is still under development and may contains several bugs
[824b6e4]18
19
202. USAGE::
21
22 Due the complexity of the BLFS book, the scripts/Mafile generation is
23 done in several steps:
24
25 2.1 INSTALLATION::
26 Run "make" to launch the menuconfig interface. Select the BLFS book
27 and it version. Then set the installation directory (default
28 $HOME/blfs_root) and the BLFS sources directory (default blfs-xml).
29
30 All required files will be placed in the installation directory and
31 BLFS XML sources will be checkout to the named sub-directory.
32
33 Installed files:
34
35 lib/* functions, xsl, and auto-generates dependencies tree files
36 README.BLFS this file
37 TODO developers notes
38 packages auto-generated file with packages info
39 alternatives.conf configuration files for alternative packages
[57c7bfe]40 envars.conf envars needed when running the build scripts
[824b6e4]41 update_book.sh update the XML book sources and regenerate packages file
42 and GNOME and KDE dependencies tree
43 blfs-parser.sh generates linear BLFS books and build scripts
44 gen-makefile.sh generates Makefile
45 progress_bar.sh the Makefile progress bar
46
47 From now on, all the work must be done from inside the installation
48 root directory.
49
50 2.2 UPDATING BOOK SOURCES::
51 If using the SVN book version, from time to time you may want to update
52 the XML sources. To do that run "./update_book.sh"
53
54 2.3 PARSING THE BOOK::
55 Next step is to create a book and build scripts in dependencies build order
56 for a target package. A target package can be any of the ones listed in the
[4c5274d]57 packages file. That is done using the blfs-parser.sh script, but we are trying
[824b6e4]58 to make a menuconfig based system.
59
60 The script need three arguments:
61
62 package name as listed in packages file
[a1fcc9dd]63 dependencies level 1 for required,
64 2 for required an recommended
[824b6e4]65 3 for required, recommended, and optional
[a1fcc9dd]66 sudo usage y if sudo will be used (you want build as a normal user)
67 n if sudo isn't needed (you want build as root)
[824b6e4]68
69 For example:
70
71 ./blfs-parser galeon 3 y
72
73 will create a directory named "galeon". Inside that directory you find a
74 directory named "HTML" that contains a galeon-based HTML book with all
75 dependencies in build order and a "scripts" directory with build scripts
76 that uses sudo for commands that need root priviledges.
77
78 There is also two other directories that contains files generated while
79 resolving dependencies trees.
80
81 Now is the time to review the generated book and scripts, making in the
82 scripts any changes you want to fit your needs. Scripts for aditional
83 packages (i.e., for non-BLFS packages) can be inserted in an easy way.
84
85 2.4 CREATING THE MAKEFILE
[4c5274d]86 When the build scripts are ready to be run, the Makefile can be
[a1fcc9dd]87 created. Be sure that you cd into the "package" directory and run
[824b6e4]88
[a1fcc9dd]89 ../gen_makefile.sh
[824b6e4]90
[a1fcc9dd]91 Review the Makefile and if all look sane, start the build.
[824b6e4]92
93
94(Text is needed for the installed packages tracking system and like)
95
Note: See TracBrowser for help on using the repository browser.