-
Notifications
You must be signed in to change notification settings - Fork 32
/
Copy pathgenerate_tarball.sh
82 lines (69 loc) · 2.88 KB
/
generate_tarball.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
#! /bin/bash
NAME=$1
OS=$2
CDT_PREFIX=${PREFIX}/${SUBPREFIX}
mkdir -p ${PREFIX}/bin/
mkdir -p ${PREFIX}/lib/cmake/${PROJECT}
mkdir -p ${CDT_PREFIX}/bin
mkdir -p ${CDT_PREFIX}/include
mkdir -p ${CDT_PREFIX}/lib/cmake/${PROJECT}
mkdir -p ${CDT_PREFIX}/cmake
mkdir -p ${CDT_PREFIX}/scripts
mkdir -p ${CDT_PREFIX}/licenses
#echo "${PREFIX} ** ${SUBPREFIX} ** ${CDT_PREFIX}"
# install binaries
cp -R ${BUILD_DIR}/bin/* ${CDT_PREFIX}/bin || exit 1
cp -R ${BUILD_DIR}/licenses/* ${CDT_PREFIX}/licenses || exit 1
# install cmake modules
sed "s/_PREFIX_/\/${SPREFIX}/g" ${BUILD_DIR}/modules/CDTMacrosPackage.cmake &> ${CDT_PREFIX}/lib/cmake/${PROJECT}/CDTMacros.cmake || exit 1
sed "s/_PREFIX_/\/${SPREFIX}/g" ${BUILD_DIR}/modules/CDTWasmToolchainPackage.cmake &> ${CDT_PREFIX}/lib/cmake/${PROJECT}/CDTWasmToolchain.cmake || exit 1
sed "s/_PREFIX_/\/${SPREFIX}\/${SSUBPREFIX}/g" ${BUILD_DIR}/modules/${PROJECT}-config.cmake.package &> ${CDT_PREFIX}/lib/cmake/${PROJECT}/${PROJECT}-config.cmake || exit 1
# install scripts
cp -R ${BUILD_DIR}/scripts/* ${CDT_PREFIX}/scripts || exit 1
# install misc.
cp ${BUILD_DIR}/cdt.imports ${CDT_PREFIX} || exit 1
# install wasm includes
cp -R ${BUILD_DIR}/include/* ${CDT_PREFIX}/include || exit 1
# install wasm libs
cp ${BUILD_DIR}/lib/*.a ${CDT_PREFIX}/lib || exit 1
# install libc++.so
if [[ "$OS" == "ubuntu-16.04" ]]; then
cp /usr/lib/libc++.so.1.0 ${CDT_PREFIX}/lib || exit 1
cp /usr/lib/libc++abi.so.1.0 ${CDT_PREFIX}/lib || exit 1
DIR=`pwd`
cd ${CDT_PREFIX}/lib || exit 1
ln -sf libc++.so.1.0 libc++.so.1 || exit 1
ln -sf libc++abi.so.1.0 libc++abi.so.1 || exit 1
cd ${DIR} || exit 1
fi
# make symlinks
pushd ${PREFIX}/lib/cmake/${PROJECT} &> /dev/null
ln -sf ../../../${SUBPREFIX}/lib/cmake/${PROJECT}/${PROJECT}-config.cmake ${PROJECT}-config.cmake || exit 1
ln -sf ../../../${SUBPREFIX}/lib/cmake/${PROJECT}/CDTWasmToolchain.cmake CDTWasmToolchain.cmake || exit 1
ln -sf ../../../${SUBPREFIX}/lib/cmake/${PROJECT}/CDTMacros.cmake CDTMacros.cmake || exit 1
popd &> /dev/null
create_symlink() {
ln -sf ../${SUBPREFIX}/bin/$1 ${PREFIX}/bin/$2 || exit 1
}
create_symlink cdt-cc cdt-cc
create_symlink cdt-cpp cdt-cpp
create_symlink cdt-ld cdt-ld
create_symlink eosio-pp eosio-pp
create_symlink cdt-init cdt-init
create_symlink eosio-wasm2wast eosio-wasm2wast
create_symlink eosio-wast2wasm eosio-wast2wasm
create_symlink eosio-wasm2wast cdt-wasm2wast
create_symlink eosio-wast2wasm cdt-wast2wasm
create_symlink cdt-ar cdt-ar
create_symlink cdt-abidiff cdt-abidiff
create_symlink cdt-nm cdt-nm
create_symlink cdt-objcopy cdt-objcopy
create_symlink cdt-objdump cdt-objdump
create_symlink cdt-ranlib cdt-ranlib
create_symlink cdt-readelf cdt-readelf
create_symlink cdt-strip cdt-strip
create_symlink antler-proj antler-proj
create_symlink antler-proj cdt-proj
echo "Generating Tarball $NAME.tar.gz..."
tar -cvzf $NAME.tar.gz ./${PREFIX}/* || exit 1
rm -r ${PREFIX} || exit 1