#! /usr/bin/env bash # #/** # * Copyright The Apache Software Foundation # * # * Licensed to the Apache Software Foundation (ASF) under one # * or more contributor license agreements. See the NOTICE file # * distributed with this work for additional information # * regarding copyright ownership. The ASF licenses this file # * to you 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. # */ set -x set -e SOURCE="${BASH_SOURCE[0]}" while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" SOURCE="$(readlink "$SOURCE")" [[ $SOURCE != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located done DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" source ${DIR}/../bin/hbase-client-env.sh # On some systems, autotools installs libraries to lib64 rather than lib. Fix # this by setting up lib64 as a symlink to lib. We have to do this step first # to handle cases where one third-party library depends on another. mkdir -p "${HBASE_PREFIX}/lib" cd ${HBASE_PREFIX} ln -sf lib "${HBASE_PREFIX}/lib64" if [ ! -f gtest ]; then cd ${HBASE_GTEST_DIR} cmake . make -j4 cd .. ln -sf ${HBASE_GTEST_DIR} gtest fi if [ ! -f ${HBASE_PREFIX}/lib/libprotobuf.a ]; then cd ${HBASE_PROTOBUF_DIR} ./configure --with-pic --disable-shared --prefix=${HBASE_PREFIX} make -j4 install fi if [ ! -f ${HBASE_PREFIX}/lib/libev.a ]; then cd ${HBASE_LIBEV_DIR} ./configure --with-pic --disable-shared --prefix=${HBASE_PREFIX} make -j4 install fi echo "---------------------" echo "Thirdparty dependencies built and installed into $HBASE_PREFIX successfully"