2016-09-24 06:01:57 +02:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
LINKAGE=$1
|
|
|
|
if [ -z $LINKAGE ]; then
|
|
|
|
LINKAGE="shared_lib"
|
|
|
|
fi
|
|
|
|
|
2018-04-09 21:42:16 +02:00
|
|
|
BRANCH=$2
|
|
|
|
if [ -z $BRANCH ]; then
|
|
|
|
BRANCH="master"
|
|
|
|
fi
|
|
|
|
|
2016-09-24 06:01:57 +02:00
|
|
|
run ()
|
|
|
|
{
|
|
|
|
COMMAND=$1
|
|
|
|
# check for empty commands
|
|
|
|
if test -z "$COMMAND" ; then
|
|
|
|
echo -e "\033[1;5;31mERROR\033[0m No command specified!"
|
|
|
|
return 1
|
|
|
|
fi
|
|
|
|
|
|
|
|
shift;
|
|
|
|
OPTIONS="$@"
|
|
|
|
# print a message
|
|
|
|
if test -n "$OPTIONS" ; then
|
|
|
|
echo -ne "\033[1m$COMMAND $OPTIONS\033[0m ... "
|
|
|
|
else
|
|
|
|
echo -ne "\033[1m$COMMAND\033[0m ... "
|
|
|
|
fi
|
|
|
|
|
|
|
|
# run or die
|
|
|
|
$COMMAND $OPTIONS ; RESULT=$?
|
|
|
|
if test $RESULT -ne 0 ; then
|
|
|
|
echo -e "\033[1;5;31mERROR\033[0m $COMMAND failed. (exit code = $RESULT)"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
|
|
|
echo -e "\033[0;32myes\033[0m"
|
|
|
|
return 0
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
echo "*** Building RocksDB... "
|
|
|
|
|
|
|
|
USERDIR=$PWD # Save current dir and return to it later
|
|
|
|
|
2018-01-28 05:46:41 +01:00
|
|
|
run git submodule update --init deps/rocksdb
|
2016-09-24 06:01:57 +02:00
|
|
|
|
2018-01-28 05:46:41 +01:00
|
|
|
run cd deps/rocksdb
|
2020-06-16 06:21:32 +02:00
|
|
|
git fetch --tags --force
|
2018-04-09 21:42:16 +02:00
|
|
|
run git checkout $BRANCH
|
2018-06-15 03:44:18 +02:00
|
|
|
NJOBS=`nproc`
|
2020-06-14 11:57:00 +02:00
|
|
|
export CFLAGS="$CFLAGS -DROCKSDB_USE_RTTI"
|
|
|
|
export CFLAGS="$CFLAGS -frtti"
|
2018-12-24 00:16:21 +01:00
|
|
|
export CFLAGS="$CFLAGS -fPIC"
|
2018-12-24 01:04:08 +01:00
|
|
|
export CFLAGS="$CFLAGS -ftls-model=initial-exec"
|
2019-06-23 01:53:56 +02:00
|
|
|
export CFLAGS="$CFLAGS -Wno-error"
|
2020-05-04 23:04:14 +02:00
|
|
|
export CFLAGS="$CFLAGS -mtune=native"
|
2018-11-29 21:58:26 +01:00
|
|
|
export DISABLE_JEMALLOC=1
|
2020-05-04 23:06:23 +02:00
|
|
|
run make V=1 -j$NJOBS $LINKAGE
|
2016-09-24 06:01:57 +02:00
|
|
|
run cd $USERDIR # Return to user's original directory
|