Annotation of parser3/buildall-with-xml, revision 1.47
1.2 paf 1: #!/bin/sh
2:
1.47 ! moko 3: # $Id: buildall-with-xml,v 1.46 2012-06-09 08:35:00 moko 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.33 misha 20: # libgc="gc6.8" # FreeBSD 4.X is not supported in newer gc version
1.27 misha 21: libgc="gc-7.1"
1.7 misha 22: if test ! -f "$libgc.tar.gz"; then
1.24 misha 23: echo "Downloading gc [1 lib of 4]..."
1.7 misha 24: wget -c http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/$libgc.tar.gz
25: fi
26: echo "Unpacking gc..."
1.9 misha 27: rm -rf $libgc
1.7 misha 28: gunzip -c $libgc.tar.gz | tar vxf - >/dev/null
29: cd $libgc
1.24 misha 30: echo "Configuring gc..."
1.29 misha 31: CPPFLAGS="-DUSE_LIBC_PRIVATES -DUSE_MMAP -DDONT_ADD_BYTE_AT_END" \
1.14 misha 32: ./configure --prefix=$project_directory/gc \
33: --disable-threads \
34: --disable-shared \
35: --silent
1.24 misha 36: echo "Building gc..."
1.2 paf 37: make
38: make install
1.16 misha 39: cd ..
1.15 misha 40: rm -rf $libgc
1.2 paf 41: fi
42:
43:
1.24 misha 44: if test ! -f "$project_directory/pcre/lib/libpcre.a"; then
45: cd $project_directory/src
1.42 misha 46: libpcre="pcre-8.30"
1.24 misha 47: if test ! -f "$libpcre.tar.gz"; then
48: echo "Downloading pcre [2 lib of 4]..."
1.35 misha 49: wget -c --passive-ftp ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/$libpcre.tar.gz
1.24 misha 50: fi
51: echo "Unpacking pcre..."
52: rm -rf $libpcre
53: gunzip -c $libpcre.tar.gz | tar vxf - >/dev/null
54: cd $libpcre
55: current_dir=`pwd`
56: echo "Configuring pcre..."
57: ./configure --prefix="$project_directory/pcre" \
1.41 misha 58: --with-match-limit=10000 \
59: --with-match-limit-recursion=10000 \
1.24 misha 60: --enable-utf8 \
61: --enable-unicode-properties \
62: --disable-shared \
63: --disable-cpp \
64: --disable-pcregrep-libz \
1.39 misha 65: --disable-pcregrep-libbz2 \
1.24 misha 66: --silent
67: echo "Building pcre..."
68: make
69: cp pcre_internal.h ucp.h $project_directory/pcre/include
70: cd ..
71: rm -rf $libpcre
72: fi
73:
74:
1.2 paf 75: if test ! -f "$project_directory/gnome/lib/libxml2.a"; then
76: cd $project_directory/src
1.43 misha 77: libxml2="libxml2-2.8.0"
1.7 misha 78: if test ! -f "$libxml2.tar.gz"; then
1.24 misha 79: echo "Downloading libxml [3 lib of 4]..."
1.7 misha 80: wget -c --passive-ftp ftp://xmlsoft.org/libxml2/$libxml2.tar.gz
81: fi
82: echo "Unpacking libxml2... (be patient)"
1.8 misha 83: rm -rf $libxml2
1.7 misha 84: gunzip -c $libxml2.tar.gz | tar vxf - >/dev/null
85: cd $libxml2
1.14 misha 86: #sax1, output, tree, xinclude[in libxslt], html[in libxslt, mode=html?], xptr[xinclude], pattern -- needed!
1.2 paf 87: echo "Configuring libxml..."
88: ./configure --prefix=$project_directory/gnome \
1.31 misha 89: --without-catalog \
1.14 misha 90: --without-iconv \
91: --without-threads \
92: --without-debug \
93: --without-iso8859x \
94: --without-legacy \
95: --without-push \
96: --without-python \
97: --without-reader \
98: --without-writer \
99: --without-readline \
100: --without-regexps \
101: --without-schemas \
102: --without-schematron \
103: --without-modules \
104: --without-ftp \
105: --without-http \
106: --without-docbook \
1.2 paf 107: --without-zlib \
1.44 misha 108: --without-lzma \
1.14 misha 109: --disable-shared \
110: --silent
1.2 paf 111: echo "int main(){return 0;}">testapi.c
112: echo "int main(){return 0;}">runtest.c
113: echo "Building libxml..."
114: make
115: make install
1.16 misha 116: cd ..
1.15 misha 117: rm -rf $libxml2
1.2 paf 118: fi
119:
120: if test ! -f "$project_directory/gnome/lib/libxslt.a"; then
121: cd $project_directory/src
1.32 misha 122: libxslt="libxslt-1.1.26"
1.7 misha 123: if test ! -f "$libxslt.tar.gz"; then
1.24 misha 124: echo "Downloading libxslt [4 lib of 4]..."
1.7 misha 125: wget -c --passive-ftp ftp://xmlsoft.org/libxslt/$libxslt.tar.gz
126: fi
127: echo "Unpacking libxslt... (be patient)"
1.8 misha 128: rm -rf $libxslt
1.7 misha 129: gunzip -c $libxslt.tar.gz | tar vxf - >/dev/null
130: cd $libxslt
1.2 paf 131: echo "Configuring libxslt..."
132: ./configure --prefix=$project_directory/gnome \
133: --with-libxml-prefix=$project_directory/gnome \
1.14 misha 134: --without-debug \
135: --without-debugger \
136: --without-crypto \
137: --without-plugins \
138: --disable-shared \
139: --silent
1.2 paf 140: echo "Building libxslt..."
141: make
142: make install
1.16 misha 143: cd ..
1.15 misha 144: rm -rf $libxslt
1.2 paf 145: fi
146:
1.24 misha 147:
1.2 paf 148: cd $parser3_directory
149:
1.19 misha 150:
1.2 paf 151: if test ! -f "Makefile"; then
1.45 moko 152: options="$@"
1.19 misha 153: options="$options --with-static-gc=$project_directory/gc/lib"
1.24 misha 154: options="$options --with-static-pcre=$project_directory/pcre"
1.19 misha 155: options="$options --with-static-xml=$project_directory/gnome"
1.38 moko 156: # options="$options --with-apache"
1.19 misha 157: # options="$options --disable-safe-mode"
1.21 misha 158: # options="$options --disable-stringstream"
1.19 misha 159: options="$options --silent"
160:
1.2 paf 161: echo "Configuring parser3..."
1.19 misha 162: ./configure --prefix=$install_directory "--with-sendmail=$sendmail_command" $options
1.2 paf 163: fi
164: echo "Building parser3..."
165: make install
1.17 misha 166:
167: # remove debug info
168: # strip ${install_directory}/bin/parser3
169:
1.2 paf 170: echo "DONE"
171:
172: echo
173: echo
174: echo "********************************************************************************************************"
175: echo "Now you can copy $install_directory with subdirectories"
176: echo " -Parser3 with XML support-"
177: echo "to your cgi-bin directory"
178: echo "Read more about installing Parser here:"
179: echo " http://www.parser.ru/en/docs/lang/install4apachecgi.htm in English"
180: echo " http://www.parser.ru/docs/lang/install4apachecgi.htm in Russian"
181: echo "********************************************************************************************************"
E-mail: