• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#!/bin/bash
2# Copyright (c) 2023 Huawei Device Co., Ltd.
3# UniProton is licensed under Mulan PSL v2.
4# You can use this software according to the terms and conditions of the Mulan PSL v2.
5# You may obtain a copy of Mulan PSL v2 at:
6#          http://license.coscl.org.cn/MulanPSL2
7# THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
8# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
9# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
10# See the Mulan PSL v2 for more details.
11
12echo "################# git clone libmetal #################"
13pushd ../component
14rm -rf ./libmetal*
15git clone https://gitee.com/src-openeuler/libmetal.git
16mv ./libmetal/libmetal-2022.10.0.tar.gz .
17rm -rf ./libmetal
18tar -zxvf libmetal-2022.10.0.tar.gz
19mv ./libmetal-2022.10.0 ./libmetal
20cp UniProton-patch-for-libmetal.patch ./libmetal
21cd libmetal
22patch -p1 -d . < UniProton-patch-for-libmetal.patch
23popd
24
25echo "################# git clone openamp #################"
26pushd ../component
27rm -rf ./open-amp*
28git clone https://gitee.com/src-openeuler/OpenAMP.git
29mv ./OpenAMP/open-amp-2022.10.1.tar.gz .
30rm -rf ./OpenAMP
31tar -zxvf open-amp-2022.10.1.tar.gz
32mv ./open-amp-2022.10.1 ./open-amp
33cp UniProton-patch-for-openamp.patch ./open-amp
34cd open-amp
35patch -p1 -d . < UniProton-patch-for-openamp.patch
36popd
37
38echo "######################### build metal #########################"
39pushd .
40mkdir -p libmetal
41cd libmetal
42mkdir -p build
43cd build
44rm -rf *
45cmake ../../../component/libmetal -DCMAKE_TOOLCHAIN_FILE=../../../component/libmetal/cmake/platforms/uniproton_arm64_gcc.cmake -DWITH_DOC=OFF -DWITH_EXAMPLES=OFF -DWITH_TESTS=OFF -DWITH_DEFAULT_LOGGER=OFF -DWITH_SHARED_LIB=OFF
46make VERBOSE=1 DESTDIR=../output install
47if [ $? -ne 0 ];then
48	echo "make metal failed!"
49	exit 1
50fi
51popd
52
53echo "######################### build openamp #########################"
54pushd .
55mkdir -p open-amp
56cd open-amp
57mkdir -p build
58cd build
59rm -rf *
60cmake ../../../component/open-amp -DCMAKE_TOOLCHAIN_FILE=../../../component/open-amp/cmake/platforms/uniproton_arm64_gcc.cmake
61make VERBOSE=1 DESTDIR=../output install
62if [ $? -ne 0 ];then
63        echo "make openamp failed!"
64        exit 1
65fi
66popd
67
68cp ./libmetal/output/usr/local/lib/*.a ../libs
69cp ./open-amp/output/usr/local/lib/*.a ../libs
70