1*6777b538SAndroid Build Coastguard Worker#!/bin/bash 2*6777b538SAndroid Build Coastguard Worker# 3*6777b538SAndroid Build Coastguard Worker# Copyright 2016 Google Inc. 4*6777b538SAndroid Build Coastguard Worker# 5*6777b538SAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License"); 6*6777b538SAndroid Build Coastguard Worker# you may not use this file except in compliance with the License. 7*6777b538SAndroid Build Coastguard Worker# You may obtain a copy of the License at 8*6777b538SAndroid Build Coastguard Worker# 9*6777b538SAndroid Build Coastguard Worker# http://www.apache.org/licenses/LICENSE-2.0 10*6777b538SAndroid Build Coastguard Worker# 11*6777b538SAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software 12*6777b538SAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS, 13*6777b538SAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14*6777b538SAndroid Build Coastguard Worker# See the License for the specific language governing permissions and 15*6777b538SAndroid Build Coastguard Worker# limitations under the License. 16*6777b538SAndroid Build Coastguard Worker# 17*6777b538SAndroid Build Coastguard Worker################################################################################ 18*6777b538SAndroid Build Coastguard Worker 19*6777b538SAndroid Build Coastguard Worker# Run this script to generate the configure script and other files that will 20*6777b538SAndroid Build Coastguard Worker# be included in the distribution. These files are not checked in because they 21*6777b538SAndroid Build Coastguard Worker# are automatically generated. 22*6777b538SAndroid Build Coastguard Worker 23*6777b538SAndroid Build Coastguard Workerset -e 24*6777b538SAndroid Build Coastguard Worker 25*6777b538SAndroid Build Coastguard Workerif [ ! -z "$@" ]; then 26*6777b538SAndroid Build Coastguard Worker for argument in "$@"; do 27*6777b538SAndroid Build Coastguard Worker case $argument in 28*6777b538SAndroid Build Coastguard Worker # make curl silent 29*6777b538SAndroid Build Coastguard Worker "-s") 30*6777b538SAndroid Build Coastguard Worker curlopts="-s" 31*6777b538SAndroid Build Coastguard Worker ;; 32*6777b538SAndroid Build Coastguard Worker esac 33*6777b538SAndroid Build Coastguard Worker done 34*6777b538SAndroid Build Coastguard Workerfi 35*6777b538SAndroid Build Coastguard Worker 36*6777b538SAndroid Build Coastguard Worker 37*6777b538SAndroid Build Coastguard Worker# Check that we're being run from the right directory. 38*6777b538SAndroid Build Coastguard Workerif test ! -f compact_enc_det/compact_enc_det.h; then 39*6777b538SAndroid Build Coastguard Worker cat >&2 << __EOF__ 40*6777b538SAndroid Build Coastguard WorkerCould not find source code. Make sure you are running this script from the 41*6777b538SAndroid Build Coastguard Workerroot of the distribution tree. 42*6777b538SAndroid Build Coastguard Worker__EOF__ 43*6777b538SAndroid Build Coastguard Worker exit 1 44*6777b538SAndroid Build Coastguard Workerfi 45*6777b538SAndroid Build Coastguard Worker 46*6777b538SAndroid Build Coastguard Worker# Check that gtest is present. It is used to build unit test suite. 47*6777b538SAndroid Build Coastguard Workerif test ! -e gtest; then 48*6777b538SAndroid Build Coastguard Worker if test -z $(which curl); then 49*6777b538SAndroid Build Coastguard Worker echo "curl cannot be found. Please install it to build the package." 50*6777b538SAndroid Build Coastguard Worker exit 1 51*6777b538SAndroid Build Coastguard Worker fi 52*6777b538SAndroid Build Coastguard Worker 53*6777b538SAndroid Build Coastguard Worker echo "Google Test not present. Fetching from the web..." 54*6777b538SAndroid Build Coastguard Worker curl $curlopts -L -O https://github.com/google/googletest/archive/master.zip 55*6777b538SAndroid Build Coastguard Worker unzip -q master.zip 56*6777b538SAndroid Build Coastguard Worker rm master.zip 57*6777b538SAndroid Build Coastguard Worker mv googletest-master gtest 58*6777b538SAndroid Build Coastguard Workerfi 59*6777b538SAndroid Build Coastguard Worker 60*6777b538SAndroid Build Coastguard Workerif test -z $(which cmake); then 61*6777b538SAndroid Build Coastguard Worker echo "CMake cannot be found. Please install it to build the package." 62*6777b538SAndroid Build Coastguard Worker exit 1 63*6777b538SAndroid Build Coastguard Workerfi 64*6777b538SAndroid Build Coastguard Worker 65*6777b538SAndroid Build Coastguard Worker# Build gtest 66*6777b538SAndroid Build Coastguard Worker(cd gtest && cmake . && make) 67*6777b538SAndroid Build Coastguard Worker 68*6777b538SAndroid Build Coastguard Worker# Build the main package 69*6777b538SAndroid Build Coastguard Workercmake . && make 70*6777b538SAndroid Build Coastguard Worker 71*6777b538SAndroid Build Coastguard Workerset -ex 72*6777b538SAndroid Build Coastguard Worker 73*6777b538SAndroid Build Coastguard Workerexit 0 74