Skip to content

Commit

Permalink
Fixes vesoft-inc#13 (third-party/rocksdb failure) (vesoft-inc#12)
Browse files Browse the repository at this point in the history
  • Loading branch information
sherman-the-tank authored and dutor committed Sep 11, 2018
1 parent 1ca5762 commit d383bb8
Show file tree
Hide file tree
Showing 37 changed files with 154 additions and 104 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

_build
_build.log
_install

common/base/Base.h.gch

Expand Down
41 changes: 37 additions & 4 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,23 @@ find_package(PCHSupport)

add_compile_options(-Winvalid-pch)

include_directories(SYSTEM ${VGRAPH_HOME}/third-party/_build/include)
include_directories(SYSTEM ${VGRAPH_HOME}/third-party/_build/compression/include)
include_directories(SYSTEM ${VGRAPH_HOME}/third-party/bzip2/_install/include)
include_directories(SYSTEM ${VGRAPH_HOME}/third-party/double-conversion/_install/include)
include_directories(SYSTEM ${VGRAPH_HOME}/third-party/fatal/_install/include)
include_directories(SYSTEM ${VGRAPH_HOME}/third-party/fbthrift/_install/include)
include_directories(SYSTEM ${VGRAPH_HOME}/third-party/folly/_install/include)
include_directories(SYSTEM ${VGRAPH_HOME}/third-party/gflags/_install/include)
include_directories(SYSTEM ${VGRAPH_HOME}/third-party/glog/_install/include)
include_directories(SYSTEM ${VGRAPH_HOME}/third-party/googletest/_install/include)
include_directories(SYSTEM ${VGRAPH_HOME}/third-party/jemalloc/_install/include)
include_directories(SYSTEM ${VGRAPH_HOME}/third-party/libevent/_install/include)
include_directories(SYSTEM ${VGRAPH_HOME}/third-party/mstch/_install/include)
include_directories(SYSTEM ${VGRAPH_HOME}/third-party/proxygen/_install/include)
include_directories(SYSTEM ${VGRAPH_HOME}/third-party/rocksdb/_install/include)
include_directories(SYSTEM ${VGRAPH_HOME}/third-party/snappy/_install/include)
include_directories(SYSTEM ${VGRAPH_HOME}/third-party/wangle/_install/include)
include_directories(SYSTEM ${VGRAPH_HOME}/third-party/zlib/_install/include)
include_directories(SYSTEM ${VGRAPH_HOME}/third-party/zstd/_install/include)
include_directories(SYSTEM ${Boost_INCLUDE_DIRS})
include_directories(SYSTEM ${OPENSSL_INCLUDE_DIR})
include_directories(SYSTEM ${KRB5_INCLUDE_DIRS})
Expand All @@ -46,8 +61,23 @@ include_directories(AFTER interface)
include_directories(AFTER ${VGRAPH_HOME})

link_directories(
third-party/_build/lib
third-party/_build/compression/lib
${VGRAPH_HOME}/third-party/bzip2/_install/lib
${VGRAPH_HOME}/third-party/double-conversion/_install/lib
${VGRAPH_HOME}/third-party/fatal/_install/lib
${VGRAPH_HOME}/third-party/fbthrift/_install/lib
${VGRAPH_HOME}/third-party/folly/_install/lib
${VGRAPH_HOME}/third-party/gflags/_install/lib
${VGRAPH_HOME}/third-party/glog/_install/lib
${VGRAPH_HOME}/third-party/googletest/_install/lib
${VGRAPH_HOME}/third-party/jemalloc/_install/lib
${VGRAPH_HOME}/third-party/libevent/_install/lib
${VGRAPH_HOME}/third-party/mstch/_install/lib
${VGRAPH_HOME}/third-party/proxygen/_install/lib
${VGRAPH_HOME}/third-party/rocksdb/_install/lib64
${VGRAPH_HOME}/third-party/snappy/_install/lib
${VGRAPH_HOME}/third-party/wangle/_install/lib
${VGRAPH_HOME}/third-party/zlib/_install/lib
${VGRAPH_HOME}/third-party/zstd/_install/lib
${Boost_LIBRARY_DIRS}
${KRB5_LIBRARY_DIRS}
)
Expand Down Expand Up @@ -86,12 +116,14 @@ add_dependencies(common third-party)
add_custom_target(
clean-build
COMMAND ${CMAKE_MAKE_PROGRAM} clean
COMMAND "find" "." "-name" "Testing" "|" "xargs" "rm" "-fr"
DEPENDS clean-interface clean-pch
)

add_custom_target(
clean-all
COMMAND ${CMAKE_MAKE_PROGRAM} clean
COMMAND "find" "." "-name" "Testing" "|" "xargs" "rm" "-fr"
DEPENDS clean-interface clean-pch clean-third-party
)

Expand All @@ -100,6 +132,7 @@ add_custom_target(
COMMAND "find" "." "-name" "CMakeFiles" "|" "xargs" "rm" "-fr"
COMMAND "find" "." "-name" "CMakeCache.txt" "|" "xargs" "rm" "-f"
COMMAND "find" "." "-name" "cmake_install.cmake" "|" "xargs" "rm" "-f"
COMMAND "find" "." "-name" "CTestTestfile.cmake" "|" "xargs" "rm" "-f"
COMMAND "find" "." "-name" "Makefile" "|" "xargs" "rm" "-f"
DEPENDS clean-all
)
Expand Down
4 changes: 2 additions & 2 deletions interface/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ add_custom_command(
gen-cpp2/vgraph_constants.cpp
gen-cpp2/vgraph_data.cpp
gen-cpp2/vgraph_types.cpp
COMMAND "${CMAKE_HOME_DIRECTORY}/third-party/_build/bin/thrift1" "--allow-neg-enum-vals" "--templates" "${CMAKE_HOME_DIRECTORY}/third-party/_build/include/thrift/templates" "--gen" "mstch_cpp2:include_prefix=\"interface\",process_in_event_base,stack_arguments" "--gen" "java:hashcode" "--gen" "go" "--gen" "py:new_style" "-o" "." "./vgraph.thrift"
COMMAND "${CMAKE_HOME_DIRECTORY}/third-party/fbthrift/_install/bin/thrift1" "--allow-neg-enum-vals" "--templates" "${CMAKE_HOME_DIRECTORY}/third-party/fbthrift/_install/include/thrift/templates" "--gen" "mstch_cpp2:include_prefix=\"interface\",process_in_event_base,stack_arguments" "--gen" "java:hashcode" "--gen" "go" "--gen" "py:new_style" "-o" "." "./vgraph.thrift"
DEPENDS vgraph.thrift
)

Expand All @@ -21,7 +21,7 @@ add_custom_command(
gen-cpp2/consensus_constants.cpp
gen-cpp2/consensus_data.cpp
gen-cpp2/consensus_types.cpp
COMMAND "${CMAKE_HOME_DIRECTORY}/third-party/_build/bin/thrift1" "--allow-neg-enum-vals" "--templates" "${CMAKE_HOME_DIRECTORY}/third-party/_build/include/thrift/templates" "--gen" "mstch_cpp2:include_prefix=\"interface\",process_in_event_base,stack_arguments" "--gen" "java:hashcode" "--gen" "go" "--gen" "py:new_style" "-o" "." "./consensus.thrift"
COMMAND "${CMAKE_HOME_DIRECTORY}/third-party/fbthrift/_install/bin/thrift1" "--allow-neg-enum-vals" "--templates" "${CMAKE_HOME_DIRECTORY}/third-party/fbthrift/_install/include/thrift/templates" "--gen" "mstch_cpp2:include_prefix=\"interface\",process_in_event_base,stack_arguments" "--gen" "java:hashcode" "--gen" "go" "--gen" "py:new_style" "-o" "." "./consensus.thrift"
DEPENDS consensus.thrift
)

Expand Down
1 change: 0 additions & 1 deletion third-party/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,5 @@ add_custom_target(

add_custom_target(
clean-third-party
COMMAND "rm" "-fr" "_build"
DEPENDS clean-bzip2 clean-double-conversion clean-fatal clean-fbthrift clean-folly clean-gflags clean-glog clean-googletest clean-jemalloc clean-libevent clean-mstch clean-proxygen clean-rocksdb clean-snappy clean-wangle clean-zlib clean-zstd
)
2 changes: 1 addition & 1 deletion third-party/bzip2/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,6 @@ add_custom_target(

add_custom_target(
clean-bzip2
COMMAND "rm" "-fr" "_build" "_build.log"
COMMAND "rm" "-fr" "_build" "_install" "_build.log"
)

2 changes: 1 addition & 1 deletion third-party/bzip2/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

source ../functions.sh

prepareBuild "bzip2" "" "/compression"
prepareBuild "bzip2"

echo
echo Start building $PROJECT_NAME with gcc-$GCC_VER
Expand Down
2 changes: 1 addition & 1 deletion third-party/double-conversion/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,6 @@ add_custom_target(

add_custom_target(
clean-double-conversion
COMMAND "rm" "-fr" "_build" "_build.log"
COMMAND "rm" "-fr" "_build" "_install" "_build.log"
)

2 changes: 1 addition & 1 deletion third-party/fatal/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,6 @@ add_custom_target(

add_custom_target(
clean-fatal
COMMAND "rm" "-fr" "_build" "_build.log"
COMMAND "rm" "-fr" "_build" "_install" "_build.log"
)

2 changes: 1 addition & 1 deletion third-party/fatal/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ echo
echo Start installing $PROJECT_NAME
echo

mkdir -p $INSTALL_PATH
mkdir -p $INSTALL_PATH/include
#cp -r $SOURCE_DIR/demo $INSTALL_PATH
#cp -r $SOURCE_DIR/docs $INSTALL_PATH
cp -r $SOURCE_DIR/fatal $INSTALL_PATH/include/.
Expand Down
2 changes: 1 addition & 1 deletion third-party/fbthrift/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,6 @@ add_custom_target(

add_custom_target(
clean-fbthrift
COMMAND "rm" "-fr" "_build" "_build.log"
COMMAND "rm" "-fr" "_build" "_install" "_build.log"
)

27 changes: 16 additions & 11 deletions third-party/fbthrift/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,19 @@ source ../functions.sh

prepareBuild "fbthrift"

BOOST_RELEASE=$TOOLS_ROOT/boost
OPENSSL_RELEASE=$TOOLS_ROOT/openssl
LIBUNWIND_RELEASE=$TOOLS_ROOT/libunwind
KRB_RELEASE=$TOOLS_ROOT/krb5
boost_release=$TOOLS_ROOT/boost
openssl_release=$TOOLS_ROOT/openssl
libunwind_release=$TOOLS_ROOT/libunwind
krb_release=$TOOLS_ROOT/krb5

double_conversion_release=$THIRD_PARTY_DIR/double-conversion/_install
gflags_release=$THIRD_PARTY_DIR/gflags/_install
glog_release=$THIRD_PARTY_DIR/glog/_install
folly_release=$THIRD_PARTY_DIR/folly/_install
wangle_release=$THIRD_PARTY_DIR/wangle/_install
mstch_release=$THIRD_PARTY_DIR/mstch/_install
zlib_release=$THIRD_PARTY_DIR/zlib/_install
zstd_release=$THIRD_PARTY_DIR/zstd/_install

echo
echo Start building $PROJECT_NAME with gcc-$GCC_VER
Expand All @@ -23,16 +32,12 @@ echo

cd $SOURCE_DIR

COMPILER_FLAGS="-fPIC -DPIC -I$OPENSSL_RELEASE/include -I$KRB_RELEASE/include -I$INSTALL_PATH/include $EXTRA_CXXFLAGS"
LINKER_FLAGS="-static-libgcc -static-libstdc++ -L$KRB_RELEASE/lib -L$LIBUNWIND_RELEASE/lib -L$INSTALL_PATH/lib $EXTRA_LDFLAGS"
INCLUDE_DIR=$INSTALL_PATH/include
COMPRESS_INCLUDE_DIR=$INSTALL_PATH/compression/include
LIB_DIR=$INSTALL_PATH/lib
COMPRESS_LIB_DIR=$INSTALL_PATH/compression/lib
COMPILER_FLAGS="-fPIC -DPIC -I$openssl_release/include -I$krb_release/include $EXTRA_CXXFLAGS"
LINKER_FLAGS="-static-libgcc -static-libstdc++ -L$krb_release/lib -L$libunwind_release/lib $EXTRA_LDFLAGS"

if [[ $SOURCE_DIR/CMakeLists.txt -nt $SOURCE_DIR/Makefile ||
$CURR_DIR/build.sh -nt $SOURCE_DIR/Makefile ]]; then
if !($CMAKE_ROOT/bin/cmake $CMAKE_FLAGS -DCMAKE_C_FLAGS:STRING="$COMPILER_FLAGS" -DCMAKE_CXX_FLAGS:STRING="$COMPILER_FLAGS" -DCMAKE_STATIC_LINKER_FLAGS:STRING="" -DCMAKE_EXE_LINKER_FLAGS:STRING="$LINKER_FLAGS" -DOPENSSL_INCLUDE_DIR=$OPENSSL_RELEASE/include -DOPENSSL_SSL_LIBRARY=$OPENSSL_RELEASE/lib/libssl.a -DOPENSSL_CRYPTO_LIBRARY=$OPENSSL_RELEASE/lib/libcrypto.a -DBOOST_ROOT=$BOOST_RELEASE -DBoost_USE_STATIC_LIBS:BOOL=YES -DMSTCH_INCLUDE_DIRS=$INCLUDE_DIR -DMSTCH_LIBRARIES=$LIB_DIR/libmstch.a -DDOUBLE_CONVERSION_INCLUDE_DIR=$INCLUDE_DIR -DDOUBLE_CONVERSION_LIBRARY=$LIB_DIR -DFOLLY_ROOT=$INSTALL_PATH -DGFLAGS_INCLUDE_DIR=$INCLUDE_DIR -DGFLAGS_LIBRARY=$LIB_DIR -DGLOG_INCLUDE_DIRS=$INCLUDE_DIR -DGLOG_LIBRARIES=$LIB_DIR/libglog.a -DWANGLE_INCLUDE_DIRS=$INCLUDE_DIR -DWANGLE_LIBRARIES=$LIB_DIR/libwangle.a -DZLIB_INCLUDE_DIRS=$COMPRESS_INCLUDE_DIR -DZLIB_LIBRARIES=$COMPRESS_LIB_DIR/libz.a -DZSTD_INCLUDE_DIRS=$COMPRESS_INCLUDE_DIR -DZSTD_LIBRARIES=$COMPRESS_LIB_DIR/libzstd.a -DFLEX_EXECUTABLE=$FLEX_ROOT/bin/flex -DTHRIFT_HOME=$INSTALL_PATH $SOURCE_DIR); then
if !($CMAKE_ROOT/bin/cmake $CMAKE_FLAGS -DCMAKE_C_FLAGS:STRING="$COMPILER_FLAGS" -DCMAKE_CXX_FLAGS:STRING="$COMPILER_FLAGS" -DCMAKE_STATIC_LINKER_FLAGS:STRING="" -DCMAKE_EXE_LINKER_FLAGS:STRING="$LINKER_FLAGS" -DOPENSSL_INCLUDE_DIR=$openssl_release/include -DOPENSSL_SSL_LIBRARY=$openssl_release/lib/libssl.a -DOPENSSL_CRYPTO_LIBRARY=$openssl_release/lib/libcrypto.a -DBOOST_ROOT=$boost_release -DBoost_USE_STATIC_LIBS:BOOL=YES -DMSTCH_INCLUDE_DIRS=$mstch_release/include -DMSTCH_LIBRARIES=$mstch_release/lib/libmstch.a -DDOUBLE_CONVERSION_INCLUDE_DIR=$double_conversion_release/include -DDOUBLE_CONVERSION_LIBRARY=$double_conversion_release/lib -Dfolly_DIR=$folly_release/lib/cmake/folly -DGFLAGS_INCLUDE_DIR=$gflags_release/include -DGFLAGS_LIBRARY=$gflags_release/lib -DGLOG_INCLUDE_DIRS=$glog_release/include -DGLOG_LIBRARIES=$glog_release/lib/libglog.a -Dwangle_DIR=$wangle_release/lib/cmake/wangle -DZLIB_INCLUDE_DIRS=$zlib_release/include -DZLIB_LIBRARIES=$zlib_release/lib/libz.a -DZSTD_INCLUDE_DIRS=$zstd_release/include -DZSTD_LIBRARIES=$zstd_release/lib/libzstd.a -DTHRIFT_HOME=$INSTALL_PATH -DFLEX_EXECUTABLE=$FLEX_ROOT/bin/flex $SOURCE_DIR); then
cd $CURR_DIR
echo
echo "### $PROJECT_NAME failed to configure the build ###"
Expand Down
2 changes: 1 addition & 1 deletion third-party/folly/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,6 @@ add_custom_target(

add_custom_target(
clean-folly
COMMAND "rm" "-fr" "_build" "_build.log"
COMMAND "rm" "-fr" "_build" "_install" "_build.log"
)

25 changes: 14 additions & 11 deletions third-party/folly/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,17 @@ source ../functions.sh

prepareBuild "folly"

BOOST_RELEASE=$TOOLS_ROOT/boost
OPENSSL_RELEASE=$TOOLS_ROOT/openssl
LIBUNWIND_RELEASE=$TOOLS_ROOT/libunwind
boost_release=$TOOLS_ROOT/boost
openssl_release=$TOOLS_ROOT/openssl
libunwind_release=$TOOLS_ROOT/libunwind

double_conversion_release=$THIRD_PARTY_DIR/double-conversion/_install
libevent_release=$THIRD_PARTY_DIR/libevent/_install
gflags_release=$THIRD_PARTY_DIR/gflags/_install
glog_release=$THIRD_PARTY_DIR/glog/_install
zlib_release=$THIRD_PARTY_DIR/zlib/_install
zstd_release=$THIRD_PARTY_DIR/zstd/_install
snappy_release=$THIRD_PARTY_DIR/snappy/_install

echo
echo Start building $PROJECT_NAME with gcc-$GCC_VER
Expand All @@ -22,17 +30,12 @@ echo

cd $SOURCE_DIR

INCLUDE_DIR=$INSTALL_PATH/include
COMPRESS_INCLUDE_DIR=$INSTALL_PATH/compression/include
LIB_DIR=$INSTALL_PATH/lib
COMPRESS_LIB_DIR=$INSTALL_PATH/compression/lib

COMPILER_FLAGS="-fPIC -DPIC -DFOLLY_HAVE_LIBDWARF_DWARF_H -DFOLLY_HAVE_LIBZSTD -I$INCLUDE_DIR $EXTRA_CXXFLAGS"
EXE_LINKER_FLAGS="-static-libgcc -static-libstdc++ -L$LIBUNWIND_RELEASE/lib -L$LIB_DIR $EXTRA_LDFLAGS"
COMPILER_FLAGS="-fPIC -DPIC -DFOLLY_HAVE_LIBDWARF_DWARF_H -DFOLLY_HAVE_LIBZSTD -DFOLLY_HAVE_MEMRCHR -Wno-noexcept-type $EXTRA_CXXFLAGS"
EXE_LINKER_FLAGS="-static-libgcc -static-libstdc++ -L$libunwind_release/lib $EXTRA_LDFLAGS"

if [[ $SOURCE_DIR/CMakeLists.txt -nt $SOURCE_DIR/Makefile ||
$CURR_DIR/build.sh -nt $SOURCE_DIR/Makefile ]]; then
if !($CMAKE_ROOT/bin/cmake $CMAKE_FLAGS -DCMAKE_C_FLAGS:STRING="$COMPILER_FLAGS" -DCMAKE_CXX_FLAGS:STRING="$COMPILER_FLAGS" -DCMAKE_EXE_LINKER_FLAGS:STRING="$EXE_LINKER_FLAGS" -DOPENSSL_INCLUDE_DIR=$OPENSSL_RELEASE/include -DOPENSSL_SSL_LIBRARY=$OPENSSL_RELEASE/lib/libssl.a -DOPENSSL_CRYPTO_LIBRARY=$OPENSSL_RELEASE/lib/libcrypto.a -DBOOST_ROOT=$BOOST_RELEASE -DBoost_USE_STATIC_LIBS:BOOL=YES -DDOUBLE_CONVERSION_INCLUDE_DIR=$INCLUDE_DIR -DDOUBLE_CONVERSION_LIBRARY=$LIB_DIR/libdouble-conversion.a -DLIBEVENT_INCLUDE_DIR=$INCLUDE_DIR -DLIBEVENT_LIB=$LIB_DIR/libevent.a -DGFLAGS_INCLUDE_DIR=$INCLUDE_DIR -DGFLAGS_LIBRARY=$LIB_DIR/libgflags.a -DLIBGLOG_INCLUDE_DIR=$INCLUDE_DIR -DLIBGLOG_LIBRARY=$LIB_DIR/libglog.a -DZLIB_INCLUDE_DIR=$COMPRESS_INCLUDE_DIR -DZLIB_LIBRARY=$COMPRESS_LIB_DIR/libz.a -DZSTD_INCLUDE_DIR=$COMPRESS_INCLUDE_DIR -DZSTD_LIBRARY=$COMPRESS_LIB_DIR/libzstd.a -DSNAPPY_INCLUDE_DIR=$COMPRESS_INCLUDE_DIR -DSNAPPY_LIBRARY=$COMPRESS_LIB_DIR/libsnappy.a $SOURCE_DIR); then
if !($CMAKE_ROOT/bin/cmake $CMAKE_FLAGS -DCMAKE_C_FLAGS:STRING="$COMPILER_FLAGS" -DCMAKE_CXX_FLAGS:STRING="$COMPILER_FLAGS" -DCMAKE_EXE_LINKER_FLAGS:STRING="$EXE_LINKER_FLAGS" -DOPENSSL_INCLUDE_DIR=$openssl_release/include -DOPENSSL_SSL_LIBRARY=$openssl_release/lib/libssl.a -DOPENSSL_CRYPTO_LIBRARY=$openssl_release/lib/libcrypto.a -DBOOST_ROOT=$boost_release -DBoost_USE_STATIC_LIBS:BOOL=YES -DDOUBLE_CONVERSION_INCLUDE_DIR=$double_conversion_release/include -DDOUBLE_CONVERSION_LIBRARY=$double_conversion_release/lib/libdouble-conversion.a -DLIBEVENT_INCLUDE_DIR=$libevent_release/include -DLIBEVENT_LIB=$libevent_release/lib/libevent.a -DLIBGFLAGS_INCLUDE_DIR=$gflags_release/include -DLIBGFLAGS_LIBRARY_RELEASE=$gflags_release/lib/libgflags.a -DLIBGLOG_INCLUDE_DIR=$glog_release/include -DLIBGLOG_LIBRARY=$glog_release/lib/libglog.a -DZLIB_INCLUDE_DIR=$zlib_release/include -DZLIB_LIBRARY=$zlib_release/lib/libz.a -DZSTD_INCLUDE_DIR=$zstd_release/include -DZSTD_LIBRARY=$zstd_release/lib/libzstd.a -DSNAPPY_INCLUDE_DIR=$snappy_release/include -DSNAPPY_LIBRARY_RELEASE=$snappy_release/lib/libsnappy.a $SOURCE_DIR); then
cd $CURR_DIR
echo
echo "### $PROJECT_NAME failed to configure the build ###"
Expand Down
14 changes: 2 additions & 12 deletions third-party/functions.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,6 @@
# the default source path "_build/${project_name}"
# If specified, it must start with "/", so that it can
# be appended to the default source path
# 3rd: install_dir. It must be a sub-directory of the default
# install path "third-party/_build"
# If specified, it must start with "/", so that it can
# be appended to the default source path
function prepareBuild() {
# Make sure the script is executed from the source directory
CURR_DIR=`dirname $0`
Expand All @@ -30,12 +26,6 @@ function prepareBuild() {
local src_dir=""
fi

if [[ $# > 2 ]]; then
local install_dir=$3
else
local install_dir=""
fi

CURR_DIR=`pwd`
THIRD_PARTY_DIR=`cd .. && pwd`
TOOLS_ROOT=/home/engshare
Expand All @@ -49,13 +39,13 @@ function prepareBuild() {
tar -zxf ../$SOURCE_TAR_BALL_NAME --keep-newer-files 2> /dev/null

SOURCE_DIR=${BUILD_PATH}/${PROJECT_NAME}${src_dir}
INSTALL_PATH=$THIRD_PARTY_DIR/_build${install_dir}
INSTALL_PATH=$CURR_DIR/_install

GCC_ROOT=$TOOLS_ROOT/gcc
CMAKE_ROOT=$TOOLS_ROOT/cmake
FLEX_ROOT=$TOOLS_ROOT/flex

CMAKE_FLAGS="-DCMAKE_CXX_COMPILER:FILEPATH=$GCC_ROOT/bin/g++ -DCMAKE_C_COMPILER:FILEPATH=$GCC_ROOT/bin/gcc -DCMAKE_SKIP_INSTALL_RPATH:BOOL=YES -DCMAKE_SKIP_RPATH:BOOL=YES -DBUILD_SHARED_LIBS:BOOL=OFF -DBUILD_STATIC_LIBS:BOOL=ON -DCMAKE_VERBOSE_MAKEFILE:BOOL=TRUE -DCMAKE_INSTALL_PREFIX=$INSTALL_PATH"
CMAKE_FLAGS="-DCMAKE_CXX_COMPILER:FILEPATH=$GCC_ROOT/bin/g++ -DCMAKE_C_COMPILER:FILEPATH=$GCC_ROOT/bin/gcc -DCMAKE_SKIP_INSTALL_RPATH:BOOL=YES -DCMAKE_SKIP_RPATH:BOOL=YES -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_LIBS=ON -DCMAKE_VERBOSE_MAKEFILE:BOOL=TRUE -DCMAKE_INSTALL_PREFIX=$INSTALL_PATH"

GCC_VER=`$GCC_ROOT/bin/gcc --version | head -1 | cut -d ' ' -f 3`
EXTRA_CXXFLAGS="-O2"
Expand Down
2 changes: 1 addition & 1 deletion third-party/gflags/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,6 @@ add_custom_target(

add_custom_target(
clean-gflags
COMMAND "rm" "-fr" "_build" "_build.log"
COMMAND "rm" "-fr" "_build" "_install" "_build.log"
)

2 changes: 1 addition & 1 deletion third-party/glog/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,6 @@ add_custom_target(

add_custom_target(
clean-glog
COMMAND "rm" "-fr" "_build" "_build.log"
COMMAND "rm" "-fr" "_build" "_install" "_build.log"
)

8 changes: 4 additions & 4 deletions third-party/glog/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ source ../functions.sh

prepareBuild "glog"

#GFLAGS_RELEASE=$TOOLS_ROOT/gflags
#DOUBLE_CONVERSION_RELEASE=$TOOLS_ROOT/double-conversion
#LIBEVENT_RELEASE=$TOOLS_ROOT/libevent
double_conversion_release=$THIRD_PARTY_DIR/double-conversion/_install
gflags_release=$THIRD_PARTY_DIR/gflags/_install
libevent_release=$THIRD_PARTY_DIR/libevent/_install

echo
echo Start building $PROJECT_NAME with gcc-$GCC_VER
Expand All @@ -26,7 +26,7 @@ fi

if [[ $SOURCE_DIR/configure -nt $SOURCE_DIR/Makefile ||
$CURR_DIR/build.sh -nt $SOURCE_DIR/Makefile ]]; then
if !(CC=$GCC_ROOT/bin/gcc CPP=$GCC_ROOT/bin/cpp CXX=$GCC_ROOT/bin/g++ CXXFLAGS="-fPIC -DPIC -DHAVE_LIB_GFLAGS -I$INSTALL_PATH/include $EXTRA_CXXFLAGS" CFLAGS=$CXXFLAGS CPPFLAGS=$CXXFLAGS LDFLAGS="-static-libgcc -static-libstdc++ -L$INSTALL_PATH/lib $EXTRA_LDFLAGS" LIBS="-lgflags" $SOURCE_DIR/configure --prefix=$INSTALL_PATH --enable-shared=no); then
if !(CC=$GCC_ROOT/bin/gcc CPP=$GCC_ROOT/bin/cpp CXX=$GCC_ROOT/bin/g++ CXXFLAGS="-fPIC -DPIC -DHAVE_LIB_GFLAGS -I$double_conversion_release/include -I$gflags_release/include -I$libevent_release/include $EXTRA_CXXFLAGS" CFLAGS=$CXXFLAGS CPPFLAGS=$CXXFLAGS LDFLAGS="-static-libgcc -static-libstdc++ -L$double_conversion_release/lib -L$gflags_release/lib -L$libevent_release/lib $EXTRA_LDFLAGS" LIBS="-lgflags" $SOURCE_DIR/configure --prefix=$INSTALL_PATH --enable-shared=no); then
cd $CURR_DIR
echo
echo "### $PROJECT_NAME failed to configure the build ###"
Expand Down
2 changes: 1 addition & 1 deletion third-party/googletest/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,6 @@ add_custom_target(

add_custom_target(
clean-googletest
COMMAND "rm" "-fr" "_build" "_build.log"
COMMAND "rm" "-fr" "_build" "_install" "_build.log"
)

Loading

0 comments on commit d383bb8

Please sign in to comment.