source: BLFS/libs/func_parser@ 3d888ef

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

Added a preliminar version of scripts.xsl.
Updated TODO.

  • Property mode set to 100644
File size: 3.7 KB
Line 
1#!/bin/bash
2#####
3#
4# Parse the XML documents to create a 'package' book
5#
6# $Id$
7#####
8
9
10#----------------------------#
11generate_TARGET_xml() { #
12#----------------------------#
13: <<inline_doc
14 function: Generate the XML document for the TARGET package
15 input vars: nothing
16 externals: vars: TARGET
17 modifies: nothing
18 returns: nothing
19 output: file: $TARGET-index.xml
20 on error: nothing
21 on success: nothing
22inline_doc
23
24 local
25 echo -en "\tGenerating $TARGET-index.xml ..."
26
27 #---------------------
28 # Header to $TARGET-index.xml
29{
30cat << EOF
31<?xml version="1.0" encoding="ISO-8859-1"?>
32<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
33 "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" >
34
35<book>
36
37 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../$BLFS_XML/book/bookinfo.xml"/>
38
39 <preface>
40 <?dbhtml filename="preface.html" dir="preface"?>
41
42 <title>Preface</title>
43
44 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../$BLFS_XML/introduction/important/locale-issues.xml"/>
45 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../$BLFS_XML/introduction/important/bootscripts.xml"/>
46
47 </preface>
48
49 <chapter>
50 <?dbhtml filename="chapter.html" dir="installing"?>
51
52 <title>Installing $TARGET in Dependencies Build Order</title>
53
54EOF
55} > $TARGET-index.xml
56
57 #---------------------
58 # Dump $TARGET-index.xml.tmp in reverse order.
59 tac $TARGET-index.xml.tmp >> $TARGET-index.xml
60 rm $TARGET-index.xml.tmp
61
62 #---------------------
63 # Footer of $TARGET-index.xml
64{
65cat << EOF
66
67 </chapter>
68
69 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../$BLFS_XML/appendices/creat-comm.xml"/>
70 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../$BLFS_XML/appendices/ac-free-lic.xml"/>
71
72 <index/>
73
74</book>
75
76EOF
77} >> $TARGET-index.xml
78
79 echo "done"
80}
81
82
83#-------------------------#
84generate_target_book() { #
85#-------------------------#
86: <<inline_doc
87 function: Create an HTML document of the requested TARGET.
88 input vars: nothing
89 externals: vars: TARGET
90 BLFS_XML
91 MAIL_SERVER
92 X11
93 modifies: nothing
94 returns: nothing
95 output: file: NUMEROUS FILES
96 on error: nothing
97 on success: nothing
98inline_doc
99
100 local filename # output filename
101
102 echo -en "\tGenerating the HTML book ..."
103 xsltproc --xinclude --nonet \
104 --stringparam mail_server $MAIL_SERVER \
105 --stringparam xwindow $X11 \
106 --stringparam base.dir HTML/ \
107 ../libs/book.xsl \
108 $TARGET-index.xml > xsltproc.log 2>&1
109
110 mkdir HTML/{stylesheets,images}
111 cp ../$BLFS_XML/stylesheets/*.css HTML/stylesheets
112 cp ../$BLFS_XML/images/*.png HTML/images
113 cd HTML
114 sed -i -e "s@../stylesheets@stylesheets@g" *.html
115 sed -i -e "s@../images@images@g" *.html
116 for filename in `find . -name "*.html"` ; do
117 tidy -config ../../$BLFS_XML/tidy.conf $filename || true
118 sh ../../$BLFS_XML/obfuscate.sh $filename
119 sed -i -e "s@text/html@application/xhtml+xml@g" $filename
120 done
121 cd ..
122 echo "done"
123}
124
125
126#-------------------------#
127create_build_scripts() { #
128#-------------------------#
129: <<inline_doc
130 function: Create shell scripts of the requested TARGET.
131 input vars: nothing
132 externals: TARGET
133 modifies: nothing
134 returns: nothing
135 output: file: NUMEROUS FILES
136 on error: nothing
137 on success: nothing
138inline_doc
139
140 # Log separator
141 echo -e "\n\tScripts generation errors:\n" >> xsltproc.log
142
143 echo -en "\tGenerating the build scripts ..."
144 xsltproc --xinclude --nonet \
145 -o ./scripts/ ../libs/scripts.xsl \
146 $TARGET-index.xml >> xsltproc.log 2>&1
147 echo "done"
148}
Note: See TracBrowser for help on using the repository browser.