From a21c44dcca3d74763b5b21e0202abfee4ceca4c2 Mon Sep 17 00:00:00 2001 From: =?utf8?q?=EC=9D=B4=EC=B6=98=EC=84=9D/=EB=8F=99=EC=9E=91=EC=A0=9C?= =?utf8?q?=EC=96=B4Lab=28SR=29/Staff=20Engineer/=EC=82=BC=EC=84=B1?= =?utf8?q?=EC=A0=84=EC=9E=90?= Date: Fri, 1 Jun 2018 12:27:11 +0900 Subject: [PATCH] Add script to build pure_arm_compute runtime (#1484) * Add script to build pure_arm_compute runtime 1. Add script to cross-build pure_arm_compute runtime for both arm-ubunut and tizen To run test, please set LD_LIBRARY_PATH=Product/lib/pureacl instead of Product/lib. Signed-off-by: Chunseok Lee --- scripts/command/docker_build_cross_arm_pureacl.sh | 45 ++++++++++++++++++++++ .../command/docker_build_tizen_cross_pureacl.sh | 40 +++++++++++++++++++ 2 files changed, 85 insertions(+) create mode 100755 scripts/command/docker_build_cross_arm_pureacl.sh create mode 100755 scripts/command/docker_build_tizen_cross_pureacl.sh diff --git a/scripts/command/docker_build_cross_arm_pureacl.sh b/scripts/command/docker_build_cross_arm_pureacl.sh new file mode 100755 index 0000000..5a4d445 --- /dev/null +++ b/scripts/command/docker_build_cross_arm_pureacl.sh @@ -0,0 +1,45 @@ +#!/bin/bash + +SCRIPT_ROOT="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +# DOCKER_HOME and DOCKER_ENV_VARS +source $SCRIPT_ROOT/nnfw_docker + +HOST_HOME=$SCRIPT_ROOT/../.. + +DOCKER_VOLUMES+=" -v $HOST_HOME:$DOCKER_HOME" + +DOCKER_ENV_VARS+=" -e TARGET_ARCH=armv7l" +DOCKER_ENV_VARS+=" -e CROSS_BUILD=1" +DOCKER_ENV_VARS+=" -e ROOTFS_DIR=/opt/rootfs" + +DOCKER_RUN_OPTS="--rm" +DOCKER_RUN_OPTS+=" -w $DOCKER_HOME" + +# prepare rootfs +if [[ ! -d $ROOTFS_DIR ]]; then + echo "cannot find rootfs" + exit 1 +fi + +DOCKER_VOLUMES+=" -v $ROOTFS_DIR:/opt/rootfs" +DOCKER_VOLUMES+=" -v $ARMCL_DIR:/opt/libarmcl" + +# Change .gitmodules to work around the permission issue +CMD_SUBMODULE="./scripts/command/change_gitmodule.sh" +docker run $DOCKER_RUN_OPTS $DOCKER_ENV_VARS $DOCKER_VOLUMES $DOCKER_IMAGE_NAME sh -c "$CMD_SUBMODULE" + +if [ -n "$DOCKER_INTERACTIVE" ]; then + DOCKER_RUN_OPTS+=" -it" + CMD="/bin/bash" +else + CMD="export OPTIONS=\"-DBUILD_ACL=ON -DBUILD_PURE_ARM_COMPUTE=ON\" && make && make install && make build_test_suite" +fi + +docker run $DOCKER_RUN_OPTS $DOCKER_ENV_VARS $DOCKER_VOLUMES $DOCKER_IMAGE_NAME sh -c "$CMD" +BUILD_RESULT=$? + +source $SCRIPT_ROOT/../docker_helper +restore_ownership $HOST_HOME $DOCKER_HOME + +exit $BUILD_RESULT diff --git a/scripts/command/docker_build_tizen_cross_pureacl.sh b/scripts/command/docker_build_tizen_cross_pureacl.sh new file mode 100755 index 0000000..1fe31b5 --- /dev/null +++ b/scripts/command/docker_build_tizen_cross_pureacl.sh @@ -0,0 +1,40 @@ +#!/bin/bash + +SCRIPT_ROOT="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +# DOCKER_HOME and DOCKER_ENV_VARS +source $SCRIPT_ROOT/nnfw_docker + +HOST_HOME=$SCRIPT_ROOT/../.. + +DOCKER_VOLUMES+=" -v $HOST_HOME:$DOCKER_HOME" + +DOCKER_ENV_VARS+=" -e TARGET_ARCH=armv7l" +DOCKER_ENV_VARS+=" -e CROSS_BUILD=1" +DOCKER_ENV_VARS+=" -e ROOTFS_DIR=/opt/rootfs" +DOCKER_ENV_VARS+=" -e TARGET_OS=tizen" + +DOCKER_RUN_OPTS="--rm" +DOCKER_RUN_OPTS+=" -w $DOCKER_HOME" + +# prepare rootfs +if [[ ! -d $ROOTFS_DIR ]]; then + echo "cannot find rootfs" + exit 1 +fi + +DOCKER_VOLUMES+=" -v $ROOTFS_DIR/:/opt/rootfs" + +CMD="export OPTIONS=\"-DBUILD_ACL=ON -DBUILD_PURE_ARM_COMPUTE=ON\" && make && make install && make build_test_suite" + +# Change .gitmodules to work around the permission issue +CMD_SUBMODULE="./scripts/command/change_gitmodule.sh" +docker run $DOCKER_RUN_OPTS $DOCKER_ENV_VARS $DOCKER_VOLUMES $DOCKER_IMAGE_NAME sh -c "$CMD_SUBMODULE" + +docker run $DOCKER_RUN_OPTS $DOCKER_ENV_VARS $DOCKER_VOLUMES $DOCKER_IMAGE_NAME sh -c "$CMD" +BUILD_RESULT=$? + +source $SCRIPT_ROOT/../docker_helper +restore_ownership $HOST_HOME $DOCKER_HOME + +exit $BUILD_RESULT -- 2.7.4