#!/bin/bash
source setenv_qc.sh
set -e

PRODUCT_TRUSTZONE_TYPE=$1
PLATFORM=$2

case "$PRODUCT_TRUSTZONE_TYPE" in
    SM8250)
            echo "Build for sm8250"
            export CHIPSET_SM8250=true
            export USE_QSEELIB_SM8250=true
            export USE_4KMIRRORING=true
            export USE_VENDOR_PATH=true
            ;;
    SM8150)
            echo "Build for sm8150"
            export CHIPSET_SM8150=true
            export USE_QSEELIB_SM8150=true
            export USE_4KMIRRORING=true
            export USE_VENDOR_PATH=true
            ;;
    SM7150)
            echo "Build for sm7150"
            export CHIPSET_SM6150=true
            export USE_QSEELIB_MSM8996=true
            export USE_VENDOR_PATH=true
            ;;
    SM6150)
            echo "Build for sm6150"
            export CHIPSET_SM6150=true
            export USE_QSEELIB_SM6150=true
            export USE_VENDOR_PATH=true
            ;;
    SDM845)
            echo "Build for sdm845"
            export CHIPSET_SDM845=true
            export USE_QSEELIB_MSM8996=true
            export USE_4KMIRRORING=true
            export USE_VENDOR_PATH=true
            ;;
    SDM710)
            echo "Build for sdm710"
            export CHIPSET_SDM710=true
            export USE_QSEELIB_MSM8996=true
            export USE_VENDOR_PATH=true
            ;;
    SDM660)
            echo "Build for sdm660"
            export CHIPSET_SDM660=true
            export USE_QSEELIB_MSM8996=true
            export USE_VENDOR_PATH=true
            ;;
    SDM450)
            echo "Build for sdm450"
            export CHIPSET_SDM450=true
            export USE_QSEELIB_MSM8996=true
            export USE_QSEE_WRAP_WITH_SFS=true
            export USE_VENDOR_PATH=true
            ;;
    SDM429)
            echo "Build for sdm429"
            export CHIPSET_SDM429=true
            export USE_QSEELIB_MSM8996=true
            export USE_VENDOR_PATH=true
            ;;
    msm8998)
            echo "Build for msm8998"
            export CHIPSET_MSM8998=true
            export USE_QSEELIB_MSM8998=true
            export USE_QSEE_WRAP_WITH_SFS=true
            export USE_4KMIRRORING=true
            export USE_VENDOR_PATH=true
            ;;
    msm8996)
            echo "Build for msm8996"
            export CHIPSET_MSM8996=true
            export USE_QSEELIB_MSM8996=true
            export USE_QSEE_WRAP_WITH_SFS=true
            ;;
    msm8976)
            echo "Build for msm8976"
            export CHIPSET_MSM8976=true
            export USE_QSEELIB_MSM8974=true
            export USE_QSEE_WRAP_WITH_SFS=true
            ;;
    msm8976pro)
            echo "Build for msm8976pro"
            export CHIPSET_MSM8976PRO=true
            export USE_QSEELIB_MSM8996=true
            export USE_QSEE_WRAP_WITH_SFS=true
            ;;
    msm8953)
            echo "Build for msm8953"
            export CHIPSET_MSM8953=true
            export USE_QSEELIB_MSM8996=true
            export USE_QSEE_WRAP_WITH_SFS=true
            ;;
    msm8917)
            echo "Build for msm8917"
            export CHIPSET_MSM8917=true
            export USE_QSEELIB_MSM8996=true
            export USE_QSEE_WRAP_WITH_SFS=true
            ;;
    msm8916)
            echo "Build for msm8916"
            export CHIPSET_MSM8916=true
            export USE_QSEELIB_MSM8974=true
            export USE_QSEE_WRAP_WITH_SFS=true
            ;;
esac

SCRIPT_NAME=`basename $0`
echo $ANDROID_NDK_ROOT

if [ -z "$ANDROID_NDK_ROOT" ]; then
    echo "$SCRIPT_NAME: Please set the \$ANDROID_NDK_ROOT envvar!"
    exit 1
elif [ ! -d "$ANDROID_NDK_ROOT" ]; then
    echo "$SCRIPT_NAME: \$ANDROID_NDK_ROOT does not reference a directory!"
    exit 1
fi

PRODUCT_ROOT=`pwd`/libhdcp2
export PRODUCT_ROOT
echo $PRODUCT_ROOT

export NDK_PROJECT_PATH=`pwd`/libhdcp2/qsee

pushd $NDK_PROJECT_PATH

mkdir -p jni
echo APP_BUILD_SCRIPT :=$NDK_PROJECT_PATH/Android.mk > jni/Application.mk

if [ "$1" == "--debug" ]; then
    echo APP_OPTIM := debug >> jni/Application.mk
    VARIANT=debug
else
    VARIANT=release
fi

sh ../../$ANDROID_NDK_ROOT/ndk-build APP_ABI=armeabi APP_PLATFORM=android-24

mkdir -p $VARIANT
cp libs/armeabi/* $VARIANT

cp $VARIANT/libhdcp2.so ../../../bin
cp $VARIANT/libstagefright_hdcp.so ../../../bin

# Clear build output
cd ../../../
rm -rfv nwd/libhdcp2/qsee/jni
rm -rfv nwd/libhdcp2/qsee/libs
rm -rfv nwd/libhdcp2/qsee/obj
rm -rfv nwd/libhdcp2/qsee/release

echo "-------------------------------------------------------------------------"
echo "Strip for library (libhdcp2.so)"
./strip ./bin/libhdcp2.so

echo "Strip for library (libstagefright_hdcp.so)"
./strip ./bin/libstagefright_hdcp.so
echo "-------------------------------------------------------------------------"
echo ""
