blob: 43ab31f501ecd00a2b0fe04289ba7fef5f5b09a9 [file] [log] [blame]
# Copyright 2016 The Fuchsia Authors. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# 1. Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY
# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
usage() { echo "$0 usage:" && grep " .)\ #" $0; exit 0; }
script_dir=$(dirname $BASH_SOURCE)
script_dir=`cd $script_dir; pwd`
clean_build=false
clean_cmake=false
os_name=`uname`
default_fuchsia_root=`cd ../../../..;pwd`
if [ x$build_tag == x ] ; then
build_tag="debug"
fi
case $os_name in
Linux)
N=`cat /proc/cpuinfo | grep processor | wc -l`
PARALLEL=-j`expr $N + $N`
toolchain_suffix=linux
buildtools_prefix=""
;;
Darwin)
PARALLEL=-j`sysctl -n hw.ncpu`
toolchain_suffix=darwin
buildtools_prefix="/mac"
;;
*)
PARALLEL=-j8
;;
esac
: ${FUCHSIA_ROOT=$default_fuchsia_root} && export FUCHSIA_ROOT
: ${FUCHSIA_BUILDTOOLS=$FUCHSIA_ROOT/buildtools$buildtools_prefix} && export FUCHSIA_BUILDTOOLS
: ${FUCHSIA_TOOLCHAIN=$FUCHSIA_ROOT/buildtools/toolchain/clang+llvm-x86_64-$toolchain_suffix} && export FUCHSIA_TOOLCHAIN
: ${FUCHSIA_SYSROOT=$FUCHSIA_ROOT/out/build-zircon/build-x86/sysroot} && export FUCHSIA_SYSROOT
: ${ZIRCON_ROOT=$FUCHSIA_ROOT/zircon} && export ZIRCON_ROOT
: ${ZIRCON_TOOLCHAINS=$HOME/projects/zircon_toolchains} && export ZIRCON_TOOLCHAINS
: ${WEBKIT_ROOT=$FUCHSIA_ROOT/third_party/webkit} && export WEBKIT_ROOT
: ${ZIRCON_GCC_DIR=$FUCHSIA_ROOT/zircon/prebuilt/downloads/x86_64-elf-6.2.0-$os_name-x86_64/bin} && export ZIRCON_GCC_DIR
: ${ZIRCON_STRIP=$FUCHSIA_ROOT/zircon/prebuilt/downloads/x86_64-elf-6.2.0-$os_name-x86_64/bin/x86_64-elf-strip} && export ZIRCON_STRIP
: ${ZIRCON_MKBOOTFS=$FUCHSIA_ROOT/zircon/build-x86/tools/mkbootfs} && export ZIRCON_MKBOOTFS
: ${FUCHSIA_OUT_DIR=$FUCHSIA_ROOT/out} && export FUCHSIA_OUT_DIR
: ${FUCHSIA_ARCH_OUT_DIR=$FUCHSIA_OUT_DIR/$build_tag-x86-64} && export FUCHSIA_ARCH_OUT_DIR
: ${WM_DEPS_SOURCE_DIR=$FUCHSIA_OUT_DIR/wmdepsrc} && export WM_DEPS_SOURCE_DIR
: ${FUCHSIA_CROSS_ROOT=$FUCHSIA_ARCH_OUT_DIR/wmdeps} && export FUCHSIA_CROSS_ROOT
declare -x PATH=$FUCHSIA_BUILDTOOLS/cmake/bin:$PATH
case $os_name in
Linux)
declare -x PATH=$FUCHSIA_BUILDTOOLS:$PATH
;;
Darwin)
declare -x PATH=$FUCHSIA_BUILDTOOLS/mac:$PATH
;;
*)
;;
esac
maybe_clean_webkit()
{
if [ $clean_cmake == true ] ; then
rm -rf $WEBKIT_BUILD/CMake*
fi
if [ $clean_build == true ] ; then
rm -rf $WEBKIT_BUILD
fi
}
declare -x PATH="$PATH:/usr/local/bin"