提交 3338bb48 编写于 作者: B Bill Hamilton

Fedora: adjusted script for new variable adjustments

上级 657e414b
......@@ -32,13 +32,13 @@
CWD="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
if [ "${CWD}" != "${PWD}" ]; then
printf "\n\tPlease cd into directory ${CWD} to run this script.\n \tExiting now.\n\n"
printf "\\n\\tPlease cd into directory %s to run this script.\\n \\tExiting now.\\n\\n" "${CWD}"
exit 1
fi
function usage()
{
printf "\tUsage: $0 [Build Option -o <Debug|Release|RelWithDebInfo|MinSizeRel>] [CodeCoverage -c ] [Doxygen -d]\n\n" 1>&2
printf "\\tUsage: %s [Build Option -o <Debug|Release|RelWithDebInfo|MinSizeRel>] [CodeCoverage -c ] [Doxygen -d]\\n\\n" "$0" 1>&2
exit 1
}
......@@ -50,7 +50,6 @@
ENABLE_COVERAGE_TESTING=false
TEMP_DIR="/tmp"
TIME_BEGIN=$( date -u +%s )
ULIMIT=$( ulimit -u )
VERSION=1.2
txtbld=$(tput bold)
......@@ -65,7 +64,7 @@
if [[ "${options[*]}" =~ "${OPTARG}" ]]; then
CMAKE_BUILD_TYPE="${OPTARG}"
else
printf "\n\tInvalid argument: ${OPTARG}\n" 1>&2
printf "\\n\\tInvalid argument: %s\\n" "${OPTARG}" 1>&2
usage
exit 1
fi
......@@ -77,12 +76,12 @@
DOXYGEN=true
;;
\? )
printf "\n\tInvalid Option: -${OPTARG}\n" 1>&2
printf "\\n\\tInvalid Option: %s\\n" "-${OPTARG}" 1>&2
usage
exit 1
;;
: )
printf "\n\tInvalid Option: -${OPTARG} requires an argument\n" 1>&2
printf "\\n\\tInvalid Option: %s requires an argument.\\n" "-${OPTARG}" 1>&2
usage
exit 1
;;
......@@ -95,44 +94,43 @@
fi
if [ ! -d .git ]; then
printf "\n\tThis build script only works with sources cloned from git\n"
printf "\tPlease clone a new eos directory with 'git clone https://github.com/EOSIO/eos --recursive'\n"
printf "\tSee the wiki for instructions: https://github.com/EOSIO/eos/wiki\n"
printf "\\n\\tThis build script only works with sources cloned from git\\n"
printf "\\tPlease clone a new eos directory with 'git clone https://github.com/EOSIO/eos --recursive'\\n"
printf "\\tSee the wiki for instructions: https://github.com/EOSIO/eos/wiki\\n"
exit 1
fi
STALE_SUBMODS=$(( `git submodule status | grep -c "^[+\-]"` ))
STALE_SUBMODS=$(( $(git submodule status | grep -c "^[+\-]") ))
if [ $STALE_SUBMODS -gt 0 ]; then
printf "\n\tgit submodules are not up to date\n"
printf "\tPlease run the command 'git submodule update --init --recursive'\n"
printf "\\n\\tgit submodules are not up to date.\\n"
printf "\\tPlease run the command 'git submodule update --init --recursive'.\\n"
exit 1
fi
printf "\n\tBeginning build version: ${VERSION}\n"
printf "\t$( date -u )\n"
printf "\tUser: $( whoami )\n"
printf "\tgit head id: $( cat .git/refs/heads/master )\n"
printf "\tCurrent branch: $( git branch | grep \* )\n"
printf "\tMake version: $( make --version )\n\n"
printf "\n\tARCHITECTURE: ${ARCH}\n"
printf "\\n\\tBeginning build version: %s\\n" "${VERSION}"
printf "\\t%s\\n" "$( date -u )"
printf "\\tUser: %s\\n" "$( whoami )"
printf "\\tgit head id: %s\\n" "$( cat .git/refs/heads/master )"
printf "\\tCurrent branch: %s\\n" "$( git branch | grep \* )"
printf "\\n\\tARCHITECTURE: %s\\n" "${ARCH}"
if [ $ARCH == "Linux" ]; then
if [ "$ARCH" == "Linux" ]; then
if [ ! -e /etc/os-release ]; then
printf "\n\tEOSIO currently supports Amazon, Centos, Fedora, Mint & Ubuntu Linux only.\n"
printf "\tPlease install on the latest version of one of these Linux distributions.\n"
printf "\thttps://aws.amazon.com/amazon-linux-ami/\n"
printf "\thttps://www.centos.org/\n"
printf "\thttps://start.fedoraproject.org/\n"
printf "\thttps://linuxmint.com/\n"
printf "\thttps://www.ubuntu.com/\n"
printf "\tExiting now.\n"
printf "\\n\\tEOSIO currently supports Amazon, Centos, Fedora, Mint & Ubuntu Linux only.\\n"
printf "\\tPlease install on the latest version of one of these Linux distributions.\\n"
printf "\\thttps://aws.amazon.com/amazon-linux-ami/\\n"
printf "\\thttps://www.centos.org/\\n"
printf "\\thttps://start.fedoraproject.org/\\n"
printf "\\thttps://linuxmint.com/\\n"
printf "\\thttps://www.ubuntu.com/\\n"
printf "\\tExiting now.\\n"
exit 1
fi
OS_NAME=$( cat /etc/os-release | grep ^NAME | cut -d'=' -f2 | sed 's/\"//gI' )
case $OS_NAME in
case "$OS_NAME" in
"Amazon Linux AMI")
FILE="${PWD}/scripts/eosio_build_amazon.sh"
CXX_COMPILER=g++
......@@ -180,16 +178,16 @@
export PATH=${HOME}/opt/mongodb/bin:$PATH
;;
*)
printf "\n\tUnsupported Linux Distribution. Exiting now.\n\n"
printf "\\n\\tUnsupported Linux Distribution. Exiting now.\\n\\n"
exit 1
esac
export BOOST_ROOT=${HOME}/opt/boost_1_66_0
export BOOST_ROOT="${HOME}/opt/boost_1_66_0"
OPENSSL_ROOT_DIR=/usr/include/openssl
WASM_ROOT=${HOME}/opt/wasm
WASM_ROOT="${HOME}/opt/wasm"
fi
if [ $ARCH == "Darwin" ]; then
if [ "$ARCH" == "Darwin" ]; then
FILE="${PWD}/scripts/eosio_build_darwin.sh"
CXX_COMPILER=clang++
C_COMPILER=clang
......@@ -199,38 +197,36 @@
WASM_ROOT=/usr/local/wasm
fi
. $FILE
. "$FILE"
printf "\n\n>>>>>>>> ALL dependencies sucessfully found or installed . Installing EOS.IO\n\n"
printf "\\n\\n>>>>>>>> ALL dependencies sucessfully found or installed . Installing EOS.IO\\n\\n"
if [ ! -d "${BUILD_DIR}" ]; then
mkdir -p "${BUILD_DIR}"
fi
cd "${BUILD_DIR}"
if [ -z $CMAKE ]; then
CMAKE=$( which cmake )
if [ -z "$CMAKE" ]; then
CMAKE=$( command -v cmake )
fi
$CMAKE -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DCMAKE_CXX_COMPILER=${CXX_COMPILER} \
-DCMAKE_C_COMPILER=${C_COMPILER} -DWASM_ROOT=${WASM_ROOT} \
-DOPENSSL_ROOT_DIR=${OPENSSL_ROOT_DIR} -DBUILD_MONGO_DB_PLUGIN=true \
-DENABLE_COVERAGE_TESTING=${ENABLE_COVERAGE_TESTING} -DBUILD_DOXYGEN=${DOXYGEN} \
..
if [ $? -ne 0 ]; then
printf "\n\t>>>>>>>>>>>>>>>>>>>> CMAKE building EOSIO has exited with the above error.\n\n"
if ! "${CMAKE}" -DCMAKE_BUILD_TYPE="${CMAKE_BUILD_TYPE}" -DCMAKE_CXX_COMPILER="${CXX_COMPILER}" \
-DCMAKE_C_COMPILER="${C_COMPILER}" -DWASM_ROOT="${WASM_ROOT}" \
-DOPENSSL_ROOT_DIR="${OPENSSL_ROOT_DIR}" -DBUILD_MONGO_DB_PLUGIN=true \
-DENABLE_COVERAGE_TESTING="${ENABLE_COVERAGE_TESTING}" -DBUILD_DOXYGEN="${DOXYGEN}" ..
then
printf "\\n\\t>>>>>>>>>>>>>>>>>>>> CMAKE building EOSIO has exited with the above error.\\n\\n"
exit -1
fi
make -j${CPU_CORE} -s
if [ $? -ne 0 ]; then
printf "\n\t>>>>>>>>>>>>>>>>>>>> MAKE building EOSIO has exited with the above error.\n\n"
if ! make -j"${CPU_CORE}"
then
printf "\\n\\t>>>>>>>>>>>>>>>>>>>> MAKE building EOSIO has exited with the above error.\\n\\n"
exit -1
fi
TIME_END=$(( `date -u +%s` - $TIME_BEGIN ))
TIME_END=$(( $(date -u +%s) - "${TIME_BEGIN}" ))
printf "\n\n${bldred}\t _______ _______ _______ _________ _______\n"
printf '\t( ____ \( ___ )( ____ \\\\__ __/( ___ )\n'
......@@ -241,34 +237,32 @@
printf "\t| (____/\| (___) |/\____) |___) (___| (___) |\n"
printf "\t(_______/(_______)\_______)\_______/(_______)\n${txtrst}"
printf "\n\tEOS.IO has been successfully built. %d:%d:%d\n\n" $(($TIME_END/3600)) $(($TIME_END%3600/60)) $(($TIME_END%60))
printf "\tTo verify your installation run the following commands:\n"
printf "\\n\\tEOS.IO has been successfully built. %d:%d:%d\\n\\n" $(($TIME_END/3600)) $(($TIME_END%3600/60)) $(($TIME_END%60))
printf "\\tTo verify your installation run the following commands:\\n"
print_instructions
printf "\tFor more information:\n"
printf "\tEOS.IO website: https://eos.io\n"
printf "\tEOS.IO Telegram channel @ https://t.me/EOSProject\n"
printf "\tEOS.IO resources: https://eos.io/resources/\n"
printf "\tEOS.IO wiki: https://github.com/EOSIO/eos/wiki\n\n\n"
printf "\\tFor more information:\\n"
printf "\\tEOS.IO website: https://eos.io\\n"
printf "\\tEOS.IO Telegram channel @ https://t.me/EOSProject\\n"
printf "\\tEOS.IO resources: https://eos.io/resources/\\n"
printf "\\tEOS.IO wiki: https://github.com/EOSIO/eos/wiki\\n\\n\\n"
if [ "x${EOSIO_BUILD_PACKAGE}" != "x" ]; then
# Build eos.io package
$CMAKE -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DCMAKE_CXX_COMPILER=${CXX_COMPILER} \
-DCMAKE_C_COMPILER=${C_COMPILER} -DWASM_ROOT=${WASM_ROOT} \
-DOPENSSL_ROOT_DIR=${OPENSSL_ROOT_DIR} -DCMAKE_INSTALL_PREFIX=/usr ..
if [ $? -ne 0 ]; then
printf "\n\t>>>>>>>>>>>>>>>>>>>> CMAKE building eos.io package has exited with the above error.\n\n"
exit -1
fi
make -j${CPU_CORE} VERBOSE=0 package
if [ "x${EOSIO_BUILD_PACKAGE}" != "x" ]; then
# Build eos.io package
if ! "$CMAKE" -DCMAKE_BUILD_TYPE="${CMAKE_BUILD_TYPE}" -DCMAKE_CXX_COMPILER="${CXX_COMPILER}" \
-DCMAKE_C_COMPILER="${C_COMPILER}" -DWASM_ROOT="${WASM_ROOT}" \
-DOPENSSL_ROOT_DIR="${OPENSSL_ROOT_DIR}" -DCMAKE_INSTALL_PREFIX="/usr" ..
then
printf "\\n\\t>>>>>>>>>>>>>>>>>>>> CMAKE building eos.io package has exited with the above error.\\n\\n"
exit -1
fi
if [ $? -ne 0 ]; then
printf "\n\t>>>>>>>>>>>>>>>>>>>> MAKE building eos.io package has exited with the above error.\n\n"
exit -1
fi
if ! make -j${CPU_CORE} VERBOSE=0 package
then
printf "\\n\\t>>>>>>>>>>>>>>>>>>>> MAKE building eos.io package has exited with the above error.\\n\\n"
exit -1
fi
printf "\n\t>>>>>>>>>>>>>>>>>>>> eos.io package has been successfully built.\n\n"
fi
\ No newline at end of file
printf "\\n\\t>>>>>>>>>>>>>>>>>>>> eos.io package has been successfully built.\\n\\n"
fi
\ No newline at end of file
......@@ -62,7 +62,7 @@
DEP_ARRAY=( git gcc.x86_64 gcc-c++.x86_64 autoconf automake libtool make cmake.x86_64 \
bzip2-devel.x86_64 openssl-devel.x86_64 gmp-devel.x86_64 libstdc++-devel.x86_64 \
python3-devel.x86_64 mongodb.x86_64 mongodb-server.x86_64 libedit.x86_64 \
graphviz.x86_64 doxygen.x86_64 ncurses-devel.x86_64 swig.x86_64 )
graphviz.x86_64 doxygen.x86_64 )
COUNT=1
DISPLAY=""
DEP=""
......@@ -92,7 +92,7 @@
case $yn in
[Yy]* )
printf "\n\n\tInstalling dependencies\n\n"
sudo yum -y install ${DEP}
sudo yum -y install "${DEP}"
if [ $? -ne 0 ]; then
printf "\n\tYUM dependency installation failed.\n"
printf "\n\tExiting now.\n"
......@@ -327,6 +327,6 @@
function print_instructions()
{
printf "\n\t$( which mongod ) -f ${MONGOD_CONF} &\n"
printf "\tcd ${HOME}/eos/build; make test\n\n"
printf "\tcd ${BUILD_DIR}; make test\n\n"
return 0
}
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册