--- parser3/buildall 2013/10/16 21:25:24 1.11 +++ parser3/buildall 2020/12/16 20:37:16 1.34 @@ -1,5 +1,5 @@ #!/bin/sh -# $Id: buildall,v 1.11 2013/10/16 21:25:24 moko Exp $ +# $Id: buildall,v 1.34 2020/12/16 20:37:16 moko Exp $ install_directory=$HOME/parser3install sendmail_command="/usr/sbin/sendmail -i -t -f postmaster" @@ -12,36 +12,45 @@ build_xml="yes" build_gmime="" build_apache="" build_stripped="" +direct_download="" options="--with-included-ltdl" options="$options --with-gc=$project_dir/gc/lib" options="$options --with-pcre=$project_dir/pcre" #options="$options --disable-stringstream" -echo "Building statically linked parser3\c" +printf "Building statically linked parser3" for PARAM in "$@"; do case "$PARAM" in "--without-xml") - echo ", without xml\c" + printf ", without xml" build_xml="" ;; "--with-apache") - echo ", with apache module\c" + printf ", with apache module" options="$options --with-apache" build_apache="yes" ;; "--with-mailreceive") - echo ", with mail receiving\c" + printf ", with mail receiving" options="$options --with-mailreceive=$project_dir/gnome" build_gmime="yes" ;; + "--with-system-mailreceive") + printf ", with mail receiving" + options="$options --with-mailreceive" + ;; "--strip") - echo ", without debug information\c" + printf ", without debug information" build_stripped="yes" ;; + "--direct-download") + printf ", download sources from master" + direct_download="yes" + ;; "--help") echo - echo "Usage: buildall [--without-xml] [--with-apache] [--with-mailreceive] [--strip] [--disable-safe-mode] [other configure options ...]" + echo "Usage: buildall [--without-xml] [--with-apache] [--with-mailreceive] [--with-system-mailreceive] [--strip] [--direct-download] [--disable-safe-mode] [other configure options ...]" exit 1 ;; *) @@ -74,30 +83,31 @@ fi ############################### Support functions ################################ -prepare_gz () { +prepare () { cd $project_dir/src if test ! -f "$1"; then - echo "Downloading $lib..." - $download $2$1 + if test "$direct_download" = "yes"; then + echo "Downloading $lib from $2..." + $download $2$1 + else + echo "Downloading $lib (master at $2)..." + $download https://www.parser.ru/off-line/download/libs/$1 + fi fi echo "Unpacking $lib..." rm -rf $lib +} + +prepare_gz () { + prepare $1 $2 gunzip -c $1 | tar xf - >/dev/null cd $lib } prepare_xz () { - cd $project_dir/src - - if test ! -f "$1"; then - echo "Downloading $lib..." - $download $2$1 - fi - - echo "Unpacking $lib..." - rm -rf $lib + prepare $1 $2 xzcat $1 | tar xf - >/dev/null cd $lib } @@ -113,13 +123,17 @@ echo mkdir src >/dev/null 2>&1 if test ! -f "$project_dir/gc/lib/libgc.a"; then -# libgc="gc6.8" # FreeBSD 4.X is not supported in newer gc version - lib="gc-7.2" - prepare_gz ${lib}d.tar.gz http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/ + lib="libatomic_ops-7.6.2" + prepare_gz ${lib}.tar.gz http://www.hboehm.info/gc/gc_source/ + + lib="gc-8.0.4" + prepare_gz ${lib}.tar.gz http://www.hboehm.info/gc/gc_source/ + + mv ../libatomic_ops-7.6.2 libatomic_ops + echo "Configuring $lib..." - CPPFLAGS="-DUSE_LIBC_PRIVATES -DUSE_MMAP -DDONT_ADD_BYTE_AT_END" \ + CPPFLAGS="-DUSE_MMAP -DDONT_ADD_BYTE_AT_END" \ ./configure --prefix=$project_dir/gc \ - --disable-threads \ --disable-shared \ --silent $cflags echo "Building $lib..." @@ -128,8 +142,8 @@ if test ! -f "$project_dir/gc/lib/libgc. fi if test ! -f "$project_dir/pcre/lib/libpcre.a"; then - lib="pcre-8.33" - prepare_gz $lib.tar.gz ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/ + lib="pcre-8.43" + prepare_gz $lib.tar.gz https://ftp.pcre.org/pub/pcre/ echo "Configuring $lib..." ./configure --prefix="$project_dir/pcre" \ --with-match-limit-recursion=10000 \ @@ -146,14 +160,13 @@ if test ! -f "$project_dir/pcre/lib/libp fi if test "$build_xml" = "yes" -a ! -f "$project_dir/gnome/lib/libxml2.a"; then - lib="libxml2-2.9.1" + lib="libxml2-2.9.9" prepare_gz $lib.tar.gz ftp://xmlsoft.org/libxml2/ #sax1, output, tree, xinclude[in libxslt], html[in libxslt, mode=html?], xptr[xinclude], pattern -- needed! echo "Configuring $lib..." ./configure --prefix=$project_dir/gnome \ --without-catalog \ --without-iconv \ - --without-threads \ --without-debug \ --without-iso8859x \ --without-legacy \ @@ -178,9 +191,10 @@ if test "$build_xml" = "yes" -a ! -f "$p fi if test "$build_xml" = "yes" -a ! -f "$project_dir/gnome/lib/libxslt.a"; then - lib="libxslt-1.1.28" + lib="libxslt-1.1.34" prepare_gz $lib.tar.gz ftp://xmlsoft.org/libxslt/ echo "Configuring $lib..." + CFLAGS="$CFLAGS -D__stub_clock_gettime -Dclock_gettime=choke_me" \ ./configure --prefix=$project_dir/gnome \ --with-libxml-prefix=$project_dir/gnome \ --without-debug \ @@ -246,7 +260,11 @@ fi cd $parser3_dir if test ! -f "Makefile"; then echo "Configuring parser3..." - ./configure --prefix=$install_directory "--with-sendmail=$sendmail_command" $options --silent $cflags $gmime_cflags + ./configure --prefix=$install_directory \ + --sysconfdir=$install_directory/bin \ + --datadir=$install_directory/bin \ + --with-sendmail="$sendmail_command" \ + $options $cflags $gmime_cflags fi echo "Building parser3..."