mirror of
https://github.com/facebook/rocksdb.git
synced 2024-11-25 22:44:05 +00:00
edc764e91b
Summary: Right now we use valgrind built with gcc-5-glibc-2.23 which keep generating this error everywhere ``` ==3224756== Conditional jump or move depends on uninitialised value(s) ==3224756== at 0x401AD68: index (in /usr/local/fbcode/gcc-4.9-glibc-2.20/lib/ld-2.20.so) ==3224756== by 0x4008933: _dl_map_object (in /usr/local/fbcode/gcc-4.9-glibc-2.20/lib/ld-2.20.so) ==3224756== by 0x4000ECC: map_doit (in /usr/local/fbcode/gcc-4.9-glibc-2.20/lib/ld-2.20.so) ==3224756== by 0x40101C7: _dl_catch_error (in /usr/local/fbcode/gcc-4.9-glibc-2.20/lib/ld-2.20.so) ==3224756== by 0x4000B34: do_preload (in /usr/local/fbcode/gcc-4.9-glibc-2.20/lib/ld-2.20.so) ==3224756== by 0x400458C: dl_main (in /usr/local/fbcode/gcc-4.9-glibc-2.20/lib/ld-2.20.so) ==3224756== by 0x40185DB: _dl_sysdep_start (in /usr/local/fbcode/gcc-4.9-glibc-2.20/lib/ld-2.20.so) ==3224756== by 0x4004F39: _dl_start (in /usr/local/fbcode/gcc-4.9-glibc-2.20/lib/ld-2.20.so) ==3224756== by 0x4000CE7: ??? (in /usr/local/fbcode/gcc-4.9-glibc-2.20/lib/ld-2.20.so) ==3224756== Uninitialised value was created by a stack allocation ==3224756== at 0x4004519: dl_main (in /usr/local/fbcode/gcc-4.9-glibc-2.20/lib/ld-2.20.so) ==3224756== ``` Test Plan: DISABLE_JEMALLOC=1 make valgrind_check -j64 Reviewers: andrewkr, yiwu, sdong Reviewed By: sdong Subscribers: andrewkr, dhruba Differential Revision: https://reviews.facebook.net/D59343
128 lines
3.5 KiB
Bash
Executable file
128 lines
3.5 KiB
Bash
Executable file
#!/bin/sh
|
|
#
|
|
# Update dependencies.sh file with the latest avaliable versions
|
|
|
|
BASEDIR=$(dirname $0)
|
|
OUTPUT=""
|
|
|
|
function log_variable()
|
|
{
|
|
echo "$1=${!1}" >> "$OUTPUT"
|
|
}
|
|
|
|
|
|
TP2_LATEST="/mnt/vol/engshare/fbcode/third-party2"
|
|
## $1 => lib name
|
|
## $2 => lib version (if not provided, will try to pick latest)
|
|
## $3 => platform (if not provided, will try to pick latest gcc)
|
|
##
|
|
## get_lib_base will set a variable named ${LIB_NAME}_BASE to the lib location
|
|
function get_lib_base()
|
|
{
|
|
local lib_name=$1
|
|
local lib_version=$2
|
|
local lib_platform=$3
|
|
|
|
local result="$TP2_LATEST/$lib_name/"
|
|
|
|
# Lib Version
|
|
if [ -z "$lib_version" ] || [ "$lib_version" = "LATEST" ]; then
|
|
# version is not provided, use latest
|
|
result=`ls -dr1v $result/*/ | head -n1`
|
|
else
|
|
result="$result/$lib_version/"
|
|
fi
|
|
|
|
# Lib Platform
|
|
if [ -z "$lib_platform" ]; then
|
|
# platform is not provided, use latest gcc
|
|
result=`ls -dr1v $result/gcc-*[^fb]/ | head -n1`
|
|
else
|
|
result="$result/$lib_platform/"
|
|
fi
|
|
|
|
result=`ls -1d $result/*/ | head -n1`
|
|
|
|
# lib_name => LIB_NAME_BASE
|
|
local __res_var=${lib_name^^}"_BASE"
|
|
__res_var=`echo $__res_var | tr - _`
|
|
# LIB_NAME_BASE=$result
|
|
eval $__res_var=`readlink -f $result`
|
|
|
|
log_variable $__res_var
|
|
}
|
|
|
|
###########################################################
|
|
# 4.9.x dependencies #
|
|
###########################################################
|
|
|
|
OUTPUT="$BASEDIR/dependencies.sh"
|
|
|
|
rm -f "$OUTPUT"
|
|
touch "$OUTPUT"
|
|
|
|
echo "Writing dependencies to $OUTPUT"
|
|
|
|
# Compilers locations
|
|
GCC_BASE=`readlink -f $TP2_LATEST/gcc/4.9.x/centos6-native/*/`
|
|
CLANG_BASE=`readlink -f $TP2_LATEST/llvm-fb/stable/centos6-native/*/`
|
|
|
|
log_variable GCC_BASE
|
|
log_variable CLANG_BASE
|
|
|
|
# Libraries locations
|
|
get_lib_base libgcc 4.9.x
|
|
get_lib_base glibc 2.20
|
|
get_lib_base snappy LATEST gcc-4.9-glibc-2.20
|
|
get_lib_base zlib LATEST
|
|
get_lib_base bzip2 LATEST
|
|
get_lib_base lz4 LATEST
|
|
get_lib_base zstd LATEST
|
|
get_lib_base gflags LATEST
|
|
get_lib_base jemalloc LATEST
|
|
get_lib_base numa LATEST
|
|
get_lib_base libunwind LATEST
|
|
|
|
get_lib_base kernel-headers LATEST
|
|
get_lib_base binutils LATEST centos6-native
|
|
get_lib_base valgrind 3.10.0 gcc-4.9-glibc-2.20
|
|
|
|
git diff $OUTPUT
|
|
|
|
###########################################################
|
|
# 4.8.1 dependencies #
|
|
###########################################################
|
|
|
|
OUTPUT="$BASEDIR/dependencies_4.8.1.sh"
|
|
|
|
rm -f "$OUTPUT"
|
|
touch "$OUTPUT"
|
|
|
|
echo "Writing 4.8.1 dependencies to $OUTPUT"
|
|
|
|
# Compilers locations
|
|
GCC_BASE=`readlink -f $TP2_LATEST/gcc/4.8.1/centos6-native/*/`
|
|
CLANG_BASE=`readlink -f $TP2_LATEST/llvm-fb/stable/centos6-native/*/`
|
|
|
|
log_variable GCC_BASE
|
|
log_variable CLANG_BASE
|
|
|
|
# Libraries locations
|
|
get_lib_base libgcc 4.8.1 gcc-4.8.1-glibc-2.17
|
|
get_lib_base glibc 2.17 gcc-4.8.1-glibc-2.17
|
|
get_lib_base snappy LATEST gcc-4.8.1-glibc-2.17
|
|
get_lib_base zlib LATEST gcc-4.8.1-glibc-2.17
|
|
get_lib_base bzip2 LATEST gcc-4.8.1-glibc-2.17
|
|
get_lib_base lz4 LATEST gcc-4.8.1-glibc-2.17
|
|
get_lib_base zstd LATEST gcc-4.8.1-glibc-2.17
|
|
get_lib_base gflags LATEST gcc-4.8.1-glibc-2.17
|
|
get_lib_base jemalloc LATEST gcc-4.8.1-glibc-2.17
|
|
get_lib_base numa LATEST gcc-4.8.1-glibc-2.17
|
|
get_lib_base libunwind LATEST gcc-4.8.1-glibc-2.17
|
|
|
|
get_lib_base kernel-headers LATEST gcc-4.8.1-glibc-2.17
|
|
get_lib_base binutils LATEST centos6-native
|
|
get_lib_base valgrind 3.8.1 gcc-4.8.1-glibc-2.17
|
|
|
|
git diff $OUTPUT
|