193 lines
		
	
	
		
			5.7 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
			
		
		
	
	
			193 lines
		
	
	
		
			5.7 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
| #!/bin/bash -eu
 | |
| # Copyright 2017 Google Inc.
 | |
| #
 | |
| # Licensed under the Apache License, Version 2.0 (the "License");
 | |
| # you may not use this file except in compliance with the License.
 | |
| # You may obtain a copy of the License at
 | |
| #
 | |
| #      http://www.apache.org/licenses/LICENSE-2.0
 | |
| #
 | |
| # Unless required by applicable law or agreed to in writing, software
 | |
| # distributed under the License is distributed on an "AS IS" BASIS,
 | |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | |
| # See the License for the specific language governing permissions and
 | |
| # limitations under the License.
 | |
| #
 | |
| ################################################################################
 | |
| 
 | |
| tar -xJf $SRC/zlib-1.2.11.tar.xz
 | |
| pushd zlib-1.2.11
 | |
| ./configure --static
 | |
| make -j$(nproc)
 | |
| export ZLIB_CFLAGS="-I$(pwd)"
 | |
| export ZLIB_LIBS="-L$(pwd) -lz"
 | |
| popd
 | |
| 
 | |
| tar -xzf $SRC/lcms2-2.8.tar.gz
 | |
| pushd lcms2-2.8
 | |
| ./configure --disable-shared --enable-static --without-jpeg --without-tiff
 | |
| make -C src -j$(nproc)
 | |
| export LCMS2_CFLAGS="-I$(pwd)/include"
 | |
| export LCMS2_LIBS="-L$(pwd)/src -llcms2"
 | |
| popd
 | |
| 
 | |
| tar -xJf $SRC/libpng-1.6.34.tar.xz
 | |
| pushd libpng-1.6.34
 | |
| ./configure --disable-shared --enable-static CPPFLAGS="$ZLIB_CFLAGS" LDFLAGS="$ZLIB_LIBS"
 | |
| make -j$(nproc)
 | |
| export LIBPNG_CFLAGS="-I$(pwd)"
 | |
| export LIBPNG_LIBS="-L$(pwd) -lpng16"
 | |
| popd
 | |
| 
 | |
| tar -xzf $SRC/libxml2-2.9.7.tar.gz
 | |
| pushd libxml2-2.9.7
 | |
| ./configure --disable-shared --enable-static --disable-ipv6 --without-python --without-zlib --without-lzma
 | |
| make -j$(nproc)
 | |
| export LIBXML_CFLAGS="-I$(pwd)/include"
 | |
| export LIBXML_LIBS="-L$(pwd) -lxml2"
 | |
| export XML_CFLAGS="$LIBXML_CFLAGS"
 | |
| export XML_LIBS="$LIBXML_LIBS"
 | |
| popd
 | |
| 
 | |
| tar -xzf $SRC/icu4c-60_2-src.tgz
 | |
| pushd icu/source
 | |
| patch -p2 < $SRC/icu4c-ubsan.patch
 | |
| patch -p3 < $SRC/ofz3670.patch
 | |
| patch -p3 < $SRC/ofz4860.patch
 | |
| ./configure --disable-shared --enable-static --with-data-packaging=static --disable-dyload --disable-strict \
 | |
|     --disable-layout --disable-samples --disable-extras --disable-icuio --disable-plugins \
 | |
|     CPPFLAGS=-DU_USE_STRTOD_L=0
 | |
| make -j$(nproc)
 | |
| export ICU_CFLAGS="-I$(pwd) -I$(pwd)/i18n -I$(pwd)/common"
 | |
| export ICU_LIBS="-L$(pwd)/lib -licui18n -licuuc -licudata"
 | |
| popd
 | |
| 
 | |
| tar -xjf $SRC/boost_1_66_0.tar.bz2
 | |
| pushd boost_1_66_0
 | |
| patch -p2 < $SRC/ofz2894.patch
 | |
| patch -p2 < $SRC/ofz4303.patch
 | |
| export CPPFLAGS="-I$(pwd)"
 | |
| popd
 | |
| 
 | |
| tar -xjf $SRC/mdds-1.3.1.tar.bz2
 | |
| pushd mdds-1.3.1
 | |
| ./configure
 | |
| export MDDS_CFLAGS="-I$(pwd)/include"
 | |
| export MDDS_LIBS=' '
 | |
| popd
 | |
| 
 | |
| pushd librevenge
 | |
| ./autogen.sh
 | |
| ./configure --without-docs --disable-werror --disable-shared --enable-static --disable-tests --enable-fuzzers
 | |
| make -j$(nproc)
 | |
| rvnginc=$(pwd)/inc
 | |
| rvnglib=$(pwd)/src/lib
 | |
| export REVENGE_CFLAGS="-I$(pwd)/inc"
 | |
| export REVENGE_LIBS="-L$(pwd)/src/lib -lrevenge-0.0"
 | |
| export REVENGE_STREAM_CFLAGS="-I$(pwd)/inc"
 | |
| export REVENGE_STREAM_LIBS="-L$(pwd)/src/lib -lrevenge-stream-0.0"
 | |
| export REVENGE_GENERATORS_CFLAGS="-I$(pwd)/inc"
 | |
| export REVENGE_GENERATORS_LIBS="-L$(pwd)/src/lib -lrevenge-generators-0.0"
 | |
| popd
 | |
| 
 | |
| pushd libmspub
 | |
| ./autogen.sh
 | |
| ./configure --without-docs --disable-werror --disable-shared --enable-static --disable-tools --enable-fuzzers
 | |
| make -j$(nproc)
 | |
| popd
 | |
| 
 | |
| pushd libcdr
 | |
| ./autogen.sh
 | |
| ./configure --without-docs --disable-werror --disable-shared --enable-static --disable-tools --enable-fuzzers --disable-tests
 | |
| make -j$(nproc)
 | |
| popd
 | |
| 
 | |
| pushd libvisio
 | |
| ./autogen.sh
 | |
| ./configure --without-docs --disable-werror --disable-shared --enable-static --disable-tools --enable-fuzzers --disable-tests
 | |
| make -j$(nproc)
 | |
| popd
 | |
| 
 | |
| pushd libzmf
 | |
| ./autogen.sh
 | |
| ./configure --without-docs --disable-werror --disable-shared --enable-static --disable-tools --enable-fuzzers --disable-tests
 | |
| make -j$(nproc)
 | |
| popd
 | |
| 
 | |
| pushd libpagemaker
 | |
| ./autogen.sh
 | |
| ./configure --without-docs --disable-werror --disable-shared --enable-static --disable-tools --enable-fuzzers
 | |
| make -j$(nproc)
 | |
| popd
 | |
| 
 | |
| pushd libfreehand
 | |
| ./autogen.sh
 | |
| ./configure --without-docs --disable-werror --disable-shared --enable-static --disable-tools --enable-fuzzers --disable-tests
 | |
| make -j$(nproc)
 | |
| popd
 | |
| 
 | |
| pushd libwpd
 | |
| ./autogen.sh
 | |
| ./configure --without-docs --disable-werror --disable-shared --enable-static --disable-tools --enable-fuzzers
 | |
| make -j$(nproc)
 | |
| export WPD_CFLAGS=-I$(pwd)/inc
 | |
| export WPD_LIBS="-L$(pwd)/src/lib -lwpd-0.10"
 | |
| popd
 | |
| 
 | |
| pushd libwpg
 | |
| ./autogen.sh
 | |
| ./configure --without-docs --disable-werror --disable-shared --enable-static --disable-tools --enable-fuzzers
 | |
| make -j$(nproc)
 | |
| popd
 | |
| 
 | |
| pushd libstaroffice
 | |
| ./autogen.sh
 | |
| ./configure --without-docs --disable-werror --disable-shared --enable-static --disable-tools --enable-fuzzers
 | |
| make -j$(nproc)
 | |
| popd
 | |
| 
 | |
| pushd libwps
 | |
| ./autogen.sh
 | |
| ./configure --without-docs --disable-werror --disable-shared --enable-static --disable-tools --enable-fuzzers
 | |
| make -j$(nproc)
 | |
| popd
 | |
| 
 | |
| pushd libmwaw
 | |
| ./autogen.sh
 | |
| ./configure --without-docs --disable-werror --disable-shared --enable-static --disable-tools --disable-zip --enable-fuzzers
 | |
| make -C src/lib -j$(nproc)
 | |
| # Link with less parallelism to avoid memory problems on the builders
 | |
| make -j2
 | |
| popd
 | |
| 
 | |
| pushd libe-book
 | |
| ./autogen.sh
 | |
| ./configure --without-docs --disable-werror --disable-shared --enable-static \
 | |
|     --without-tools --enable-fuzzers --without-liblangtag --disable-tests
 | |
| make -j$(nproc)
 | |
| popd
 | |
| 
 | |
| pushd libabw
 | |
| ./autogen.sh
 | |
| ./configure --without-docs --disable-werror --disable-shared --enable-static --disable-tools --enable-fuzzers
 | |
| make -j$(nproc)
 | |
| popd
 | |
| 
 | |
| pushd libetonyek
 | |
| ./autogen.sh
 | |
| ./configure --without-docs --disable-werror --disable-shared --enable-static \
 | |
|     --without-tools --enable-fuzzers --with-mdds=0.x --without-liblangtag --disable-tests
 | |
| make -j$(nproc)
 | |
| popd
 | |
| 
 | |
| pushd libqxp
 | |
| ./autogen.sh
 | |
| ./configure --without-docs --disable-werror --disable-shared --enable-static --disable-tools --enable-fuzzers --disable-tests
 | |
| make -j$(nproc)
 | |
| popd
 | |
| 
 | |
| cp */src/fuzz/*fuzzer $OUT
 | |
| cp */src/fuzz/*.dict $OUT
 | |
| cp *_seed_corpus.zip $OUT
 | |
| cp *.options $OUT
 |