--- parser3/Attic/buildall-with-xml 2007/02/03 18:15:22 1.5 +++ parser3/Attic/buildall-with-xml 2012/06/12 21:12:23 1.48 @@ -1,9 +1,12 @@ #!/bin/sh -# $Id: buildall-with-xml,v 1.5 2007/02/03 18:15:22 misha Exp $ +# $Id: buildall-with-xml,v 1.48 2012/06/12 21:12:23 moko Exp $ install_directory=$HOME/parser3install sendmail_command="/usr/sbin/sendmail -i -t -f postmaster" +download="wget -c --passive-ftp" +cflags="" +cflags="CFLAGS=-fPIC CXXFLAGS=-fPIC" #required for apache module on x64 echo "buildall-with-xml" echo "Script author: Alexander Petrosian (http://paf.design.ru)" @@ -17,73 +20,153 @@ mkdir src >/dev/null 2>&1 if test ! -f "$project_directory/gc/lib/libgc.a"; then cd $project_directory/src - echo "Downloading libgc [1 lib of 3]..." - wget -c http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/gc6.6.tar.gz - echo "Unpacking..." - gunzip -c gc6.6.tar.gz | tar vxf - >/dev/null - cd gc6.6 - echo "Configuring libgc..." - CPPFLAGS="-DUSE_LIBC_PRIVATES -DUSE_MMAP -DUSE_MUNMAP" \ - ./configure --prefix=$project_directory/gc --disable-threads --disable-shared --silent - echo "Building libgc..." +# libgc="gc6.8" # FreeBSD 4.X is not supported in newer gc version + libgc="gc-7.1" + if test ! -f "$libgc.tar.gz"; then + echo "Downloading gc [1 lib of 4]..." + $download http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/$libgc.tar.gz + fi + echo "Unpacking gc..." + rm -rf $libgc + gunzip -c $libgc.tar.gz | tar vxf - >/dev/null + cd $libgc + echo "Configuring gc..." + CPPFLAGS="-DUSE_LIBC_PRIVATES -DUSE_MMAP -DDONT_ADD_BYTE_AT_END" \ + ./configure --prefix=$project_directory/gc \ + --disable-threads \ + --disable-shared \ + --silent $cflags + echo "Building gc..." make make install + cd .. + rm -rf $libgc fi +if test ! -f "$project_directory/pcre/lib/libpcre.a"; then + cd $project_directory/src + libpcre="pcre-8.30" + if test ! -f "$libpcre.tar.gz"; then + echo "Downloading pcre [2 lib of 4]..." + $download ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/$libpcre.tar.gz + fi + echo "Unpacking pcre..." + rm -rf $libpcre + gunzip -c $libpcre.tar.gz | tar vxf - >/dev/null + cd $libpcre + current_dir=`pwd` + echo "Configuring pcre..." + ./configure --prefix="$project_directory/pcre" \ + --with-match-limit=10000 \ + --with-match-limit-recursion=10000 \ + --enable-utf8 \ + --enable-unicode-properties \ + --disable-shared \ + --disable-cpp \ + --disable-pcregrep-libz \ + --disable-pcregrep-libbz2 \ + --silent $cflags + echo "Building pcre..." + make install + cd .. + rm -rf $libpcre +fi if test ! -f "$project_directory/gnome/lib/libxml2.a"; then cd $project_directory/src - echo "Downloading libxml [2 lib of 3]..." - wget -c --passive-ftp ftp://xmlsoft.org/libxml2/libxml2-2.6.27.tar.gz - echo "Unpacking... (be patient)" - gunzip -c libxml2-2.6.27.tar.gz | tar vxf - >/dev/null - cd libxml2-2.6.27 - #sax1, output, tree, xinclude[in libxslt], html[in libxslt, mode=html?] xptr[xinclude]-- needed! + libxml2="libxml2-2.8.0" + if test ! -f "$libxml2.tar.gz"; then + echo "Downloading libxml [3 lib of 4]..." + $download ftp://xmlsoft.org/libxml2/$libxml2.tar.gz + fi + echo "Unpacking libxml2... (be patient)" + rm -rf $libxml2 + gunzip -c $libxml2.tar.gz | tar vxf - >/dev/null + cd $libxml2 + #sax1, output, tree, xinclude[in libxslt], html[in libxslt, mode=html?], xptr[xinclude], pattern -- needed! echo "Configuring libxml..." ./configure --prefix=$project_directory/gnome \ - --without-iconv --without-threads --without-debug \ - --without-iso8859x --without-legacy \ - --without-pattern --without-push --without-python \ - --without-reader --without-writer --without-readline --without-regexps \ - --without-schemas --without-schematron \ + --without-catalog \ + --without-iconv \ + --without-threads \ + --without-debug \ + --without-iso8859x \ + --without-legacy \ + --without-push \ + --without-python \ + --without-reader \ + --without-writer \ + --without-readline \ + --without-regexps \ + --without-schemas \ + --without-schematron \ --without-modules \ + --without-ftp \ + --without-http \ + --without-docbook \ --without-zlib \ - --disable-shared --silent + --without-lzma \ + --disable-shared \ + --silent $cflags echo "int main(){return 0;}">testapi.c echo "int main(){return 0;}">runtest.c echo "Building libxml..." make make install + cd .. + rm -rf $libxml2 fi if test ! -f "$project_directory/gnome/lib/libxslt.a"; then cd $project_directory/src - echo "Downloading libxslt [3 lib of 3]..." - wget -c --passive-ftp ftp://xmlsoft.org/libxslt/libxslt-1.1.20.tar.gz - echo "Unpacking... (be patient)" - gunzip -c libxslt-1.1.20.tar.gz | tar vxf - >/dev/null - cd libxslt-1.1.20 + libxslt="libxslt-1.1.26" + if test ! -f "$libxslt.tar.gz"; then + echo "Downloading libxslt [4 lib of 4]..." + $download ftp://xmlsoft.org/libxslt/$libxslt.tar.gz + fi + echo "Unpacking libxslt... (be patient)" + rm -rf $libxslt + gunzip -c $libxslt.tar.gz | tar vxf - >/dev/null + cd $libxslt echo "Configuring libxslt..." ./configure --prefix=$project_directory/gnome \ --with-libxml-prefix=$project_directory/gnome \ - --without-debug --without-debugger --without-crypto --without-plugins --disable-shared --silent + --without-debug \ + --without-debugger \ + --without-crypto \ + --without-plugins \ + --disable-shared \ + --silent $cflags echo "Building libxslt..." make make install + cd .. + rm -rf $libxslt fi cd $parser3_directory if test ! -f "Makefile"; then + options="$@" + options="$options --with-static-gc=$project_directory/gc/lib" + options="$options --with-static-pcre=$project_directory/pcre" + options="$options --with-static-xml=$project_directory/gnome" +# options="$options --with-apache" +# options="$options --disable-safe-mode" +# options="$options --disable-stringstream" + options="$options --with-included-ltdl" + options="$options --silent $cflags" echo "Configuring parser3..." - ./configure --prefix=$install_directory \ - "--with-sendmail=$sendmail_command" \ - --with-static-gc=$project_directory/gc/lib \ - --with-static-xml=$project_directory/gnome \ - --silent + ./configure --prefix=$install_directory "--with-sendmail=$sendmail_command" $options fi + echo "Building parser3..." make install +if test $? -ne 0; then exit 1; fi + +# remove debug info +# strip ${install_directory}/bin/parser3 + echo "DONE" echo