Annotation of parser3/buildall-with-xml, revision 1.36
1.2 paf 1: #!/bin/sh
2:
1.36 ! misha 3: # $Id: buildall-with-xml,v 1.35 2009-12-03 23:08:37 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.26 misha 46: libpcre="pcre-7.9"
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" \
58: --enable-utf8 \
59: --enable-unicode-properties \
60: --disable-shared \
61: --disable-cpp \
62: --disable-pcregrep-libz \
63: --disable-pcregrep-libz2 \
64: --silent
65: echo "Building pcre..."
66: make
67: make install
68: echo "Copying required files (Parser3 uses some PCRE internals)..."
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.34 misha 77: libxml2="libxml2-2.7.6"
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.14 misha 108: --disable-shared \
109: --silent
1.2 paf 110: echo "int main(){return 0;}">testapi.c
111: echo "int main(){return 0;}">runtest.c
112: echo "Building libxml..."
113: make
114: make install
1.16 misha 115: cd ..
1.15 misha 116: rm -rf $libxml2
1.2 paf 117: fi
118:
119: if test ! -f "$project_directory/gnome/lib/libxslt.a"; then
120: cd $project_directory/src
1.32 misha 121: libxslt="libxslt-1.1.26"
1.7 misha 122: if test ! -f "$libxslt.tar.gz"; then
1.24 misha 123: echo "Downloading libxslt [4 lib of 4]..."
1.7 misha 124: wget -c --passive-ftp ftp://xmlsoft.org/libxslt/$libxslt.tar.gz
125: fi
126: echo "Unpacking libxslt... (be patient)"
1.8 misha 127: rm -rf $libxslt
1.7 misha 128: gunzip -c $libxslt.tar.gz | tar vxf - >/dev/null
129: cd $libxslt
1.2 paf 130: echo "Configuring libxslt..."
131: ./configure --prefix=$project_directory/gnome \
132: --with-libxml-prefix=$project_directory/gnome \
1.14 misha 133: --without-debug \
134: --without-debugger \
135: --without-crypto \
136: --without-plugins \
137: --disable-shared \
138: --silent
1.2 paf 139: echo "Building libxslt..."
140: make
141: make install
1.16 misha 142: cd ..
1.15 misha 143: rm -rf $libxslt
1.2 paf 144: fi
145:
1.24 misha 146:
1.2 paf 147: cd $parser3_directory
148:
1.19 misha 149:
1.2 paf 150: if test ! -f "Makefile"; then
1.19 misha 151: options=""
152: options="$options --with-static-gc=$project_directory/gc/lib"
1.24 misha 153: options="$options --with-static-pcre=$project_directory/pcre"
1.19 misha 154: options="$options --with-static-xml=$project_directory/gnome"
1.36 ! misha 155: # options="$options --with-curl=/usr/include/curl"
1.19 misha 156: # options="$options --disable-safe-mode"
157: # options="$options --with-dynamic-stdcpp"
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: