-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmkn.sh
executable file
·52 lines (39 loc) · 1.28 KB
/
mkn.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
#!/usr/bin/env bash
set -e
CWD="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
[ -z "$(which cmake)" ] && echo "cmake is required to build aws.cpp_sdk" && exit 1;
[ -z "$(which mkn)" ] && echo "mkn is required to build aws.cpp_sdk" && exit 1;
rm -rf inst
mkdir -p inst/lib inst/include
GIT_URL="https://github.com/aws/aws-sdk-cpp"
GIT_BNC="master"
GIT_OPT="--depth 1"
DIR="aws"
[ -z "$MKN_MAKE_THREADS" ] && MKN_MAKE_THREADS="$(nproc --all)"
[ ! -d "$CWD/$DIR" ] && git clone $GIT_OPT $GIT_URL -b $GIT_BNC $DIR --recursive
## This is a semicolon separated list
## example
# MKN_AWS_CPP_SDK_BUILD="s3;ec2"
[ -n "$MKN_AWS_CPP_SDK_BUILD" ] && MKN_CMAKE_CONFIG+=" -DBUILD_ONLY=$MKN_AWS_CPP_SDK_BUILD"
mkn clean -d
MKN_REPO="$(mkn -G MKN_REPO)"
VER_CURL="$(mkn -G net.curl.version)"
rm -rf $CWD/build
mkdir $CWD/build
pushd $CWD/build
read -r -d '' CMAKE <<- EOM || echo "running cmake"
cmake -DCMAKE_INSTALL_PREFIX=$CWD/inst
-DCMAKE_BUILD_TYPE=Release
-DCURL_INCLUDE_DIR=${MKN_REPO}/net/curl/$VER_CURL/inst/include
-DCURL_LIBRARY=${MKN_REPO}/net/curl/$VER_CURL/inst/lib/libcurl.so
$MKN_CMAKE_CONFIG
../$DIR
EOM
echo $CMAKE
$CMAKE
make -j$MKN_MAKE_THREADS VERBOSE=1
make install
popd
rm -rf $CWD/build
echo "Finished successfully"
exit 0