Annotation of parser3/buildall-with-xml, revision 1.27

1.2       paf         1: #!/bin/sh
                      2: 
1.27    ! misha       3: # $Id: buildall-with-xml,v 1.26 2009-04-21 10:25:01 misha Exp $
1.2       paf         4: 
                      5: install_directory=$HOME/parser3install
                      6: sendmail_command="/usr/sbin/sendmail -i -t -f postmaster"
                      7: 
                      8: echo "buildall-with-xml"
                      9: echo "Script author: Alexander Petrosian <paf@design.ru> (http://paf.design.ru)"
                     10: echo
                     11: echo "Building..."
                     12: 
                     13: parser3_directory=`pwd`
                     14: cd ..
                     15: project_directory=`pwd`
                     16: mkdir src >/dev/null 2>&1
                     17: 
                     18: if test ! -f "$project_directory/gc/lib/libgc.a"; then
                     19:   cd $project_directory/src
1.27    ! misha      20:   libgc="gc-7.1"
1.7       misha      21:   if test ! -f "$libgc.tar.gz"; then
1.24      misha      22:     echo "Downloading gc [1 lib of 4]..."
1.7       misha      23:     wget -c http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/$libgc.tar.gz
                     24:   fi
                     25:   echo "Unpacking gc..."
1.9       misha      26:   rm -rf $libgc
1.7       misha      27:   gunzip -c $libgc.tar.gz | tar vxf - >/dev/null
                     28:   cd $libgc
1.24      misha      29:   echo "Configuring gc..."
1.3       paf        30:   CPPFLAGS="-DUSE_LIBC_PRIVATES -DUSE_MMAP -DUSE_MUNMAP" \
1.14      misha      31:   ./configure --prefix=$project_directory/gc \
                     32:     --disable-threads \
                     33:     --disable-shared \
                     34:     --silent
1.24      misha      35:   echo "Building gc..."
1.2       paf        36:   make
                     37:   make install
1.16      misha      38:   cd ..
1.15      misha      39:   rm -rf $libgc
1.2       paf        40: fi
                     41: 
                     42: 
1.24      misha      43: if test ! -f "$project_directory/pcre/lib/libpcre.a"; then
                     44:   cd $project_directory/src
1.26      misha      45:   libpcre="pcre-7.9"
1.24      misha      46:   if test ! -f "$libpcre.tar.gz"; then
                     47:     echo "Downloading pcre [2 lib of 4]..."
                     48:     wget -c ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/$libpcre.tar.gz
                     49:   fi
                     50:   echo "Unpacking pcre..."
                     51:   rm -rf $libpcre
                     52:   gunzip -c $libpcre.tar.gz | tar vxf - >/dev/null
                     53:   cd $libpcre
                     54:   current_dir=`pwd`
                     55:   echo "Configuring pcre..."
                     56:   ./configure --prefix="$project_directory/pcre" \
                     57:     --enable-utf8 \
                     58:     --enable-unicode-properties \
                     59:     --disable-shared \
                     60:     --disable-cpp \
                     61:     --disable-pcregrep-libz \
                     62:     --disable-pcregrep-libz2 \
                     63:     --silent
                     64:   echo "Building pcre..."
                     65:   make
                     66:   make install
                     67:   echo "Copying required files (Parser3 uses some PCRE internals)..."
                     68:   cp pcre_internal.h ucp.h $project_directory/pcre/include
                     69:   cd ..
                     70:   rm -rf $libpcre
                     71: fi
                     72: 
                     73: 
1.2       paf        74: if test ! -f "$project_directory/gnome/lib/libxml2.a"; then
                     75:   cd $project_directory/src
1.22      misha      76:   libxml2="libxml2-2.6.32"
1.7       misha      77:   if test ! -f "$libxml2.tar.gz"; then
1.24      misha      78:     echo "Downloading libxml [3 lib of 4]..."
1.7       misha      79:     wget -c --passive-ftp ftp://xmlsoft.org/libxml2/$libxml2.tar.gz
                     80:   fi
                     81:   echo "Unpacking libxml2... (be patient)"
1.8       misha      82:   rm -rf $libxml2
1.7       misha      83:   gunzip -c $libxml2.tar.gz | tar vxf - >/dev/null
                     84:   cd $libxml2
1.14      misha      85:   #sax1, output, tree, xinclude[in libxslt], html[in libxslt, mode=html?], xptr[xinclude], pattern -- needed!
1.2       paf        86:   echo "Configuring libxml..."
                     87:   ./configure --prefix=$project_directory/gnome \
1.14      misha      88:     --without-iconv \
                     89:     --without-threads \
                     90:     --without-debug \
                     91:     --without-iso8859x \
                     92:     --without-legacy \
                     93:     --without-push \
                     94:     --without-python \
                     95:     --without-reader \
                     96:     --without-writer \
                     97:     --without-readline \
                     98:     --without-regexps \
                     99:     --without-schemas \
                    100:     --without-schematron \
                    101:     --without-modules \
                    102:     --without-ftp \
                    103:     --without-http \
                    104:     --without-docbook \
1.2       paf       105:     --without-zlib \
1.14      misha     106:     --disable-shared \
                    107:     --silent
1.2       paf       108:   echo "int main(){return 0;}">testapi.c
                    109:   echo "int main(){return 0;}">runtest.c
                    110:   echo "Building libxml..."
                    111:   make
                    112:   make install
1.16      misha     113:   cd ..
1.15      misha     114:   rm -rf $libxml2
1.2       paf       115: fi
                    116: 
                    117: if test ! -f "$project_directory/gnome/lib/libxslt.a"; then
                    118:   cd $project_directory/src
1.23      misha     119:   libxslt="libxslt-1.1.24"
1.7       misha     120:   if test ! -f "$libxslt.tar.gz"; then
1.24      misha     121:     echo "Downloading libxslt [4 lib of 4]..."
1.7       misha     122:     wget -c --passive-ftp ftp://xmlsoft.org/libxslt/$libxslt.tar.gz
                    123:   fi
                    124:   echo "Unpacking libxslt... (be patient)"
1.8       misha     125:   rm -rf $libxslt
1.7       misha     126:   gunzip -c $libxslt.tar.gz | tar vxf - >/dev/null
                    127:   cd $libxslt
1.2       paf       128:   echo "Configuring libxslt..."
                    129:   ./configure --prefix=$project_directory/gnome \
                    130:      --with-libxml-prefix=$project_directory/gnome \
1.14      misha     131:      --without-debug \
                    132:      --without-debugger \
                    133:      --without-crypto \
                    134:      --without-plugins \
                    135:      --disable-shared \
                    136:      --silent
1.2       paf       137:   echo "Building libxslt..."
                    138:   make
                    139:   make install
1.16      misha     140:   cd ..
1.15      misha     141:   rm -rf $libxslt
1.2       paf       142: fi
                    143: 
1.24      misha     144: 
1.2       paf       145: cd $parser3_directory
                    146: 
1.19      misha     147: 
1.2       paf       148: if test ! -f "Makefile"; then
1.19      misha     149:   options=""
                    150:   options="$options --with-static-gc=$project_directory/gc/lib"
1.24      misha     151:   options="$options --with-static-pcre=$project_directory/pcre"
1.19      misha     152:   options="$options --with-static-xml=$project_directory/gnome"
                    153: #  options="$options --disable-safe-mode"
                    154: #  options="$options --with-dynamic-stdcpp"
1.21      misha     155: #  options="$options --disable-stringstream"
1.19      misha     156:   options="$options --silent"
                    157: 
1.2       paf       158:   echo "Configuring parser3..."
1.19      misha     159:   ./configure --prefix=$install_directory "--with-sendmail=$sendmail_command" $options
1.2       paf       160: fi
                    161: echo "Building parser3..."
                    162: make install
1.17      misha     163: 
                    164: # remove debug info
                    165: # strip ${install_directory}/bin/parser3
                    166: 
1.2       paf       167: echo "DONE"
                    168: 
                    169: echo
                    170: echo
                    171: echo "********************************************************************************************************"
                    172: echo "Now you can copy $install_directory with subdirectories"
                    173: echo "  -Parser3 with XML support-"
                    174: echo "to your cgi-bin directory"
                    175: echo "Read more about installing Parser here:"
                    176: echo "  http://www.parser.ru/en/docs/lang/install4apachecgi.htm in English"
                    177: echo "  http://www.parser.ru/docs/lang/install4apachecgi.htm in Russian"
                    178: echo "********************************************************************************************************"

E-mail: