Annotation of parser3/buildall-with-xml, revision 1.43
1.2 paf 1: #!/bin/sh
2:
1.43 ! misha 3: # $Id: buildall-with-xml,v 1.42 2012-04-27 02:37:57 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.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: make install
70: echo "Copying required files (Parser3 uses some PCRE internals)..."
71: cp pcre_internal.h ucp.h $project_directory/pcre/include
72: cd ..
73: rm -rf $libpcre
74: fi
75:
76:
1.2 paf 77: if test ! -f "$project_directory/gnome/lib/libxml2.a"; then
78: cd $project_directory/src
1.43 ! misha 79: libxml2="libxml2-2.8.0"
1.7 misha 80: if test ! -f "$libxml2.tar.gz"; then
1.24 misha 81: echo "Downloading libxml [3 lib of 4]..."
1.7 misha 82: wget -c --passive-ftp ftp://xmlsoft.org/libxml2/$libxml2.tar.gz
83: fi
84: echo "Unpacking libxml2... (be patient)"
1.8 misha 85: rm -rf $libxml2
1.7 misha 86: gunzip -c $libxml2.tar.gz | tar vxf - >/dev/null
87: cd $libxml2
1.14 misha 88: #sax1, output, tree, xinclude[in libxslt], html[in libxslt, mode=html?], xptr[xinclude], pattern -- needed!
1.2 paf 89: echo "Configuring libxml..."
90: ./configure --prefix=$project_directory/gnome \
1.31 misha 91: --without-catalog \
1.14 misha 92: --without-iconv \
93: --without-threads \
94: --without-debug \
95: --without-iso8859x \
96: --without-legacy \
97: --without-push \
98: --without-python \
99: --without-reader \
100: --without-writer \
101: --without-readline \
102: --without-regexps \
103: --without-schemas \
104: --without-schematron \
105: --without-modules \
106: --without-ftp \
107: --without-http \
108: --without-docbook \
1.2 paf 109: --without-zlib \
1.14 misha 110: --disable-shared \
111: --silent
1.2 paf 112: echo "int main(){return 0;}">testapi.c
113: echo "int main(){return 0;}">runtest.c
114: echo "Building libxml..."
115: make
116: make install
1.16 misha 117: cd ..
1.15 misha 118: rm -rf $libxml2
1.2 paf 119: fi
120:
121: if test ! -f "$project_directory/gnome/lib/libxslt.a"; then
122: cd $project_directory/src
1.32 misha 123: libxslt="libxslt-1.1.26"
1.7 misha 124: if test ! -f "$libxslt.tar.gz"; then
1.24 misha 125: echo "Downloading libxslt [4 lib of 4]..."
1.7 misha 126: wget -c --passive-ftp ftp://xmlsoft.org/libxslt/$libxslt.tar.gz
127: fi
128: echo "Unpacking libxslt... (be patient)"
1.8 misha 129: rm -rf $libxslt
1.7 misha 130: gunzip -c $libxslt.tar.gz | tar vxf - >/dev/null
131: cd $libxslt
1.2 paf 132: echo "Configuring libxslt..."
133: ./configure --prefix=$project_directory/gnome \
134: --with-libxml-prefix=$project_directory/gnome \
1.14 misha 135: --without-debug \
136: --without-debugger \
137: --without-crypto \
138: --without-plugins \
139: --disable-shared \
140: --silent
1.2 paf 141: echo "Building libxslt..."
142: make
143: make install
1.16 misha 144: cd ..
1.15 misha 145: rm -rf $libxslt
1.2 paf 146: fi
147:
1.24 misha 148:
1.2 paf 149: cd $parser3_directory
150:
1.19 misha 151:
1.2 paf 152: if test ! -f "Makefile"; then
1.19 misha 153: options=""
154: options="$options --with-static-gc=$project_directory/gc/lib"
1.24 misha 155: options="$options --with-static-pcre=$project_directory/pcre"
1.19 misha 156: options="$options --with-static-xml=$project_directory/gnome"
1.36 misha 157: # options="$options --with-curl=/usr/include/curl"
1.38 moko 158: # options="$options --with-apache"
1.19 misha 159: # options="$options --disable-safe-mode"
160: # options="$options --with-dynamic-stdcpp"
1.21 misha 161: # options="$options --disable-stringstream"
1.19 misha 162: options="$options --silent"
163:
1.2 paf 164: echo "Configuring parser3..."
1.19 misha 165: ./configure --prefix=$install_directory "--with-sendmail=$sendmail_command" $options
1.2 paf 166: fi
167: echo "Building parser3..."
168: make install
1.17 misha 169:
170: # remove debug info
171: # strip ${install_directory}/bin/parser3
172:
1.2 paf 173: echo "DONE"
174:
175: echo
176: echo
177: echo "********************************************************************************************************"
178: echo "Now you can copy $install_directory with subdirectories"
179: echo " -Parser3 with XML support-"
180: echo "to your cgi-bin directory"
181: echo "Read more about installing Parser here:"
182: echo " http://www.parser.ru/en/docs/lang/install4apachecgi.htm in English"
183: echo " http://www.parser.ru/docs/lang/install4apachecgi.htm in Russian"
184: echo "********************************************************************************************************"
E-mail: