1#!/usr/bin/env bash 2 3# Licensed to the Apache Software Foundation (ASF) under one 4# or more contributor license agreements. See the NOTICE file 5# distributed with this work for additional information 6# regarding copyright ownership. The ASF licenses this file 7# to you under the Apache License, Version 2.0 (the 8# "License"); you may not use this file except in compliance 9# with the License. You may obtain a copy of the License at 10# 11# http://www.apache.org/licenses/LICENSE-2.0 12# 13# Unless required by applicable law or agreed to in writing, 14# software distributed under the License is distributed on an 15# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16# KIND, either express or implied. See the License for the 17# specific language governing permissions and limitations 18# under the License. 19 20# This script builds the static library of protobuf along with protoc, that can be used as dependency of mxnet. 21set -ex 22PROTOBUF_VERSION=3.5.1 23if [[ $PLATFORM == 'darwin' ]]; then 24 DY_EXT="dylib" 25else 26 DY_EXT="so" 27fi 28 29LIBPROTOBUF="$DEPS_PATH/lib/libprotobuf.$DY_EXT" 30LIBPROTOC="$DEPS_PATH/lib/libprotoc.$DY_EXT" 31if [[ ! -e $LIBPROTOBUF ]] || [[ ! -e $LIBPROTOC ]]; then 32 # Download and build protobuf 33 >&2 echo "Building protobuf..." 34 download \ 35 https://github.com/google/protobuf/archive/v${PROTOBUF_VERSION}.zip \ 36 ${DEPS_PATH}/protobuf.zip 37 unzip -q $DEPS_PATH/protobuf.zip -d $DEPS_PATH 38 pushd . 39 cd $DEPS_PATH/protobuf-$PROTOBUF_VERSION 40 ./autogen.sh 41 ./configure -prefix=$DEPS_PATH 42 $MAKE 43 $MAKE install 44 popd 45fi 46 47