Fix gen-special when an entity is commented out:
[automated_linux_from_scratch.git] / branches / 2.3.x / BLFS / update_book.sh
blob42b300289fa22edc8d289cf4ac0ee0e68ae77e99
1 #!/bin/bash
3 # $Id$
5 set -e
7 declare -r SVN="svn://svn.linuxfromscratch.org"
9 DOC_MODE=$1 # Action to take, update, get or none
10 BLFS_XML=$2 # Book directory
11 TREE=$3 # SVN tree for the BLFS book version
13 [[ -z $BLFS_XML ]] && BLFS_XML=blfs-xml
14 [[ -z $DOC_MODE ]] && DOC_MODE=update
15 [[ -z $TREE ]] && TREE=trunk/BOOK
17 TRACKING_DIR=tracking-dir
19 #---------------------
20 # packages module
21 source libs/func_packages
22 [[ $? > 0 ]] && echo -e "\n\tERROR: func_packages did not load..\n" && exit
24 #----------------------------#
25 BOOK_Source() { #
26 #----------------------------#
27 : <<inline_doc
28 function: Retrieve or upate a copy of the BLFS book
29 input vars: $1 BLFS_XML book sources directory
30 $2 DOC_MODE action get/update
31 $3 TREE SVN tree when $2=get
32 externals: none
33 modifies: $BLFS_XML directory tree
34 returns: nothing
35 output:
36 on error: exit
37 on success: text messages
38 inline_doc
40 case $DOC_MODE in
41 update )
42 if [[ ! -d $BLFS_XML ]] ; then
43 echo -e "\n\t$BLFS_XML is not a directory\n"
44 exit 1
46 if [[ ! -f $BLFS_XML/x/x.xml ]] ; then
47 echo -e "\n\tLooks like $BLFS_XML is not a BLFS book sources directory\n"
48 exit 1
51 if [[ -d $BLFS_XML/.svn ]] ; then
52 echo -e "\n\tUpdating the $BLFS_XML book sources ...\n"
53 pushd $BLFS_XML 1> /dev/null
54 svn up
55 popd 1> /dev/null
56 echo -e "\n\tBook sources updated."
57 else
58 echo -e "\n\tLooks like $BLFS_XML is not a svn working copy."
59 echo -e "\tSkipping BLFS sources update.\n"
63 get )
64 [[ ! -d $BLFS_XML ]] && mkdir -pv $BLFS_XML
65 svn co $SVN/BLFS/$TREE $BLFS_XML 2>&1
67 * )
68 echo -e "\n\tUnknown option ${DOC_MODE} ignored.\n"
70 esac
73 [ "${DOC_MODE}" != "none" ] && BOOK_Source
75 if [ "${DOC_MODE}" = "none" ] ; then
76 echo -en "\n\tGenerating packages database file ..."
77 generate_packages
78 echo "done."
80 echo -en "\tGenerating alsa dependencies list ..."
81 generate_alsa
82 echo "done."
84 echo -en "\tGenerating gnome-core dependencies list ..."
85 generate_gnome_core
86 echo "done."
88 echo -en "\tGenerating gnome-full dependencies list ..."
89 generate_gnome_full
90 echo "done."
92 echo -en "\tGenerating kde-core dependencies list ..."
93 generate_kde_core
94 echo "done."
96 echo -en "\tGenerating kde-full dependencies list ..."
97 generate_kde_full
98 echo -e "done."
100 echo -en "\tGenerating kde-koffice dependencies list ..."
101 generate_kde_koffice
102 echo -e "done."
104 echo -en "\tGenerating xorg7 dependencies list ..."
105 generate_xorg7
106 echo "done."