1#!/bin/bash
2#Copyright (c) 2023 Huawei Device Co., Ltd.
3#Licensed under the Apache License, Version 2.0 (the "License");
4#you may not use this file except in compliance with the License.
5#You may obtain a copy of the License at
6#
7#    http://www.apache.org/licenses/LICENSE-2.0
8#
9#Unless required by applicable law or agreed to in writing, software
10#distributed under the License is distributed on an "AS IS" BASIS,
11#WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12#See the License for the specific language governing permissions and
13#limitations under the License.
14set -e
15WORKING_DIR=$(cd "$(dirname "$0")"; pwd)
16PROJECT_ROOT=${WORKING_DIR%/foundation*}
17
18CMAKE_ROOT=$PROJECT_ROOT/prebuilts/cmake/linux-x86/bin
19echo $CMAKE_ROOT
20
21OHOS_NDK=$PROJECT_ROOT/prebuilts/clang/ohos/linux-x86_64/llvm
22LLVM_DIR=$PROJECT_ROOT/prebuilts/clang/ohos/linux-x86_64/llvm
23echo $LLVM_DIR
24
25NINJA_HOME=$PROJECT_ROOT/prebuilts/build-tools/linux-x86/bin
26echo $NINJA_HOME
27
28export PATH="$NINJA_HOME:$PATH"
29DEST_GEN_PATH=$1
30
31compile()
32{
33    PROJECT_DIR=$DEST_GEN_PATH
34    if [ -d "$PROJECT_DIR" ]; then
35        rm -rf $PROJECT_DIR
36        echo "Clean Output"
37    fi
38	mkdir -p $PROJECT_DIR
39    chmod -R 775 $PROJECT_DIR
40
41    mkdir -p $PROJECT_DIR/Strip
42
43    NINJA_TOOL=ninja
44    if [ $HW_NINJA_NAME ]; then
45        echo "Lume assert Compile use ninja_back"
46        NINJA_TOOL=$NINJA_HOME/$HW_NINJA_NAME
47    else
48        echo "Lume assert Compile use ninja"
49        NINJA_TOOL=$NINJA_HOME/ninja
50    fi
51    $CMAKE_ROOT/cmake -H$WORKING_DIR -B$PROJECT_DIR -G Ninja -DCMAKE_MAKE_PROGRAM=$NINJA_TOOL
52    $NINJA_TOOL -C $PROJECT_DIR  -f build.ninja
53    chmod 775 $PROJECT_DIR/LumeAssetCompiler
54    cp -r $PROJECT_DIR/LumeAssetCompiler $PROJECT_DIR/Strip
55    #$LLVM_DIR/bin/llvm-strip -s $PROJECT_DIR/Strip/LumeAssetCompiler
56    rm -rf $WORKING_DIR/../test/RofsBuild/LumeAssetCompiler
57    #cp $PROJECT_DIR/Strip/LumeAssetCompiler $WORKING_DIR/../test/RofsBuild/LumeAssetCompiler
58    cd $WORKING_DIR/../test/RofsBuild/
59    #./compile_rofs.sh rofs
60    cd -
61}
62
63echo "compile start asset x86_64"
64
65compile
66