Merge commit 'f8dd96543542220181c76afb8c084f4908213fb5' as 'third_party/mason'
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
language: generic
|
||||
|
||||
matrix:
|
||||
include:
|
||||
- os: osx
|
||||
osx_image: xcode7.3
|
||||
compiler: clang
|
||||
- os: linux
|
||||
compiler: clang
|
||||
sudo: false
|
||||
addons:
|
||||
apt:
|
||||
sources: [ 'ubuntu-toolchain-r-test' ]
|
||||
packages: [ 'libstdc++-5-dev' ]
|
||||
|
||||
env:
|
||||
global:
|
||||
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
|
||||
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
|
||||
|
||||
script:
|
||||
- ./mason build ${MASON_NAME} ${MASON_VERSION}
|
||||
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
|
||||
@@ -0,0 +1,13 @@
|
||||
diff --git a/build/standalone.gypi b/build/standalone.gypi
|
||||
index 7145a16..84e512d 100644
|
||||
--- a/build/standalone.gypi
|
||||
+++ b/build/standalone.gypi
|
||||
@@ -190,7 +190,7 @@
|
||||
'GCC_INLINES_ARE_PRIVATE_EXTERN': 'YES',
|
||||
'GCC_SYMBOLS_PRIVATE_EXTERN': 'YES', # -fvisibility=hidden
|
||||
'GCC_THREADSAFE_STATICS': 'NO', # -fno-threadsafe-statics
|
||||
- 'GCC_TREAT_WARNINGS_AS_ERRORS': 'YES', # -Werror
|
||||
+ 'GCC_TREAT_WARNINGS_AS_ERRORS': 'NO', # -Werror
|
||||
'GCC_VERSION': '4.2',
|
||||
'GCC_WARN_ABOUT_MISSING_NEWLINE': 'YES', # -Wnewline-eof
|
||||
# MACOSX_DEPLOYMENT_TARGET maps to -mmacosx-version-min
|
||||
+51
@@ -0,0 +1,51 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
MASON_NAME=v8
|
||||
MASON_VERSION=3.14.5.10
|
||||
MASON_LIB_FILE=lib/libv8_base.a
|
||||
|
||||
. ${MASON_DIR}/mason.sh
|
||||
|
||||
function mason_load_source {
|
||||
mason_download \
|
||||
https://github.com/${MASON_NAME}/${MASON_NAME}/archive/${MASON_VERSION}.tar.gz \
|
||||
2e3700f00d1c1863e7718b2c2bd109cced7217ff
|
||||
|
||||
mason_extract_tar_gz
|
||||
|
||||
export MASON_BUILD_PATH=${MASON_ROOT}/.build/${MASON_NAME}-${MASON_VERSION}
|
||||
}
|
||||
|
||||
function mason_compile {
|
||||
git clone --depth 1 https://chromium.googlesource.com/external/gyp build/gyp
|
||||
mason_step "Loading patch ${MASON_DIR}/scripts/${MASON_NAME}/${MASON_VERSION}/patch.diff"
|
||||
patch -N -p1 < ${MASON_DIR}/scripts/${MASON_NAME}/${MASON_VERSION}/patch.diff
|
||||
if [[ $(uname -s) == 'Darwin' ]]; then
|
||||
export LDFLAGS="${LDFLAGS:-} -stdlib=libc++"
|
||||
fi
|
||||
make x64.release werror=no -j${MASON_CONCURRENCY}
|
||||
mkdir -p ${MASON_PREFIX}/include
|
||||
mkdir -p ${MASON_PREFIX}/bin
|
||||
mkdir -p ${MASON_PREFIX}/lib
|
||||
cp -r include/* ${MASON_PREFIX}/include/
|
||||
if [[ $(uname -s) == 'Darwin' ]]; then
|
||||
cp out/x64.release/lib*.a ${MASON_PREFIX}/lib/
|
||||
else
|
||||
cp out/x64.release/obj.target/tools/gyp/lib*.a ${MASON_PREFIX}/lib/
|
||||
fi
|
||||
cp out/x64.release/d8 ${MASON_PREFIX}/bin/
|
||||
}
|
||||
|
||||
function mason_cflags {
|
||||
echo -I${MASON_PREFIX}/include
|
||||
}
|
||||
|
||||
function mason_ldflags {
|
||||
:
|
||||
}
|
||||
|
||||
function mason_clean {
|
||||
make clean
|
||||
}
|
||||
|
||||
mason_run "$@"
|
||||
@@ -0,0 +1,23 @@
|
||||
language: generic
|
||||
|
||||
matrix:
|
||||
include:
|
||||
- os: osx
|
||||
osx_image: xcode7.3
|
||||
compiler: clang
|
||||
- os: linux
|
||||
compiler: clang
|
||||
sudo: false
|
||||
addons:
|
||||
apt:
|
||||
sources: [ 'ubuntu-toolchain-r-test' ]
|
||||
packages: [ 'libstdc++-5-dev' ]
|
||||
|
||||
env:
|
||||
global:
|
||||
- secure: "clCFM3prHnDocZ8lXlimPxAogvFirD1Zx8cMcFJ/XpkTA/0pCgnhpArM4y/NzLHR57pNZTSCr3p6XZI1c1iTG4Zm8x0sK2A4aTFRahypXNy/e+LzAbtd1y1+dEEDwlJvNNGxizQX4frhOgSNQFDFnWLtmF3stlft5YWyc2kI+FI="
|
||||
- secure: "jKJErCng8Sk8YJ0IN2FX3lhv7G1LeudMfFBAXViZaXn8w/gWPs+SlfXQmIJ5SruU7U2GQKnAhzbjwXjVAgAh8OAblzny0DDm5Lh5WmwkgAP8JH1LpsBwCYx2S/v8qyR4DX1RVhHS8mQu298180ZDVgGccw+hd8xrE/S5TEQcNfQ="
|
||||
|
||||
script:
|
||||
- ./mason build ${MASON_NAME} ${MASON_VERSION}
|
||||
- ./mason publish ${MASON_NAME} ${MASON_VERSION}
|
||||
+131
@@ -0,0 +1,131 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
MASON_NAME=v8
|
||||
MASON_VERSION=5.1.281.47
|
||||
MASON_LIB_FILE=lib/libv8_base.a
|
||||
|
||||
. ${MASON_DIR}/mason.sh
|
||||
|
||||
function mason_load_source {
|
||||
mason_download \
|
||||
https://github.com/${MASON_NAME}/${MASON_NAME}/archive/${MASON_VERSION}.tar.gz \
|
||||
3304589e65c878dfe45898abb5e7c7f85a9c9ab6
|
||||
|
||||
mason_extract_tar_gz
|
||||
|
||||
export MASON_BUILD_PATH=${MASON_ROOT}/.build/${MASON_NAME}-${MASON_VERSION}
|
||||
}
|
||||
function mason_prepare_compile {
|
||||
CCACHE_VERSION=3.3.1
|
||||
${MASON_DIR}/mason install ccache ${CCACHE_VERSION}
|
||||
MASON_CCACHE=$(${MASON_DIR}/mason prefix ccache ${CCACHE_VERSION})
|
||||
|
||||
# create a directory to cache v8 deps
|
||||
mkdir -p ../v8-deps
|
||||
cd ../v8-deps
|
||||
|
||||
M_GYP_PATH=$(pwd)/build/gyp/
|
||||
if [[ ! -d ${M_GYP_PATH} ]]; then
|
||||
git clone https://chromium.googlesource.com/external/gyp ${M_GYP_PATH}
|
||||
(cd ${M_GYP_PATH} && git checkout 4ec6c4e3a94bd04a6da2858163d40b2429b8aad1)
|
||||
fi
|
||||
|
||||
M_ICU_PATH=$(pwd)/third_party/icu/
|
||||
if [[ ! -d ${M_ICU_PATH} ]]; then
|
||||
git clone https://chromium.googlesource.com/chromium/deps/icu.git ${M_ICU_PATH}
|
||||
(cd ${M_ICU_PATH} && git checkout c291cde264469b20ca969ce8832088acb21e0c48)
|
||||
fi
|
||||
|
||||
M_BUILDTOOLS_PATH=$(pwd)/buildtools/
|
||||
if [[ ! -d ${M_BUILDTOOLS_PATH} ]]; then
|
||||
git clone https://chromium.googlesource.com/chromium/buildtools.git ${M_BUILDTOOLS_PATH}
|
||||
(cd ${M_BUILDTOOLS_PATH} && git checkout 80b5126f91be4eb359248d28696746ef09d5be67)
|
||||
fi
|
||||
|
||||
M_CLANG_PATH=$(pwd)/tools/clang/
|
||||
if [[ ! -d ${M_CLANG_PATH} ]]; then
|
||||
git clone https://chromium.googlesource.com/chromium/src/tools/clang.git ${M_CLANG_PATH}
|
||||
(cd ${M_CLANG_PATH} && git checkout faee82e064e04e5cbf60cc7327e7a81d2a4557ad)
|
||||
fi
|
||||
|
||||
M_TRACE_PATH=$(pwd)/base/trace_event/common/
|
||||
if [[ ! -d ${M_TRACE_PATH} ]]; then
|
||||
git clone https://chromium.googlesource.com/chromium/src/base/trace_event/common.git ${M_TRACE_PATH}
|
||||
(cd ${M_TRACE_PATH} && git checkout c8c8665c2deaf1cc749d9f8e153256d4f67bf1b8)
|
||||
fi
|
||||
|
||||
M_GTEST_PATH=$(pwd)/testing/gtest/
|
||||
if [[ ! -d ${M_GTEST_PATH} ]]; then
|
||||
git clone https://chromium.googlesource.com/external/github.com/google/googletest.git ${M_GTEST_PATH}
|
||||
(cd ${M_GTEST_PATH} && git checkout 6f8a66431cb592dad629028a50b3dd418a408c87)
|
||||
fi
|
||||
|
||||
M_GMOCK_PATH=$(pwd)/testing/gmock/
|
||||
if [[ ! -d ${M_GMOCK_PATH} ]]; then
|
||||
git clone https://chromium.googlesource.com/external/googlemock.git ${M_GMOCK_PATH}
|
||||
(cd ${M_GMOCK_PATH} && git checkout 0421b6f358139f02e102c9c332ce19a33faf75be)
|
||||
fi
|
||||
|
||||
M_SWARMING_PATH=$(pwd)/tools/swarming_client/
|
||||
if [[ ! -d ${M_SWARMING_PATH} ]]; then
|
||||
git clone https://chromium.googlesource.com/external/swarming.client.git ${M_SWARMING_PATH}
|
||||
(cd ${M_SWARMING_PATH} && git checkout df6e95e7669883c8fe9ef956c69a544154701a49)
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
function mason_compile {
|
||||
if [[ $(uname -s) == 'Darwin' ]]; then
|
||||
export LDFLAGS="${LDFLAGS:-} -stdlib=libc++"
|
||||
fi
|
||||
export CXX="${MASON_CCACHE}/bin/ccache ${CXX}"
|
||||
cp -r ${M_GYP_PATH} build/gyp
|
||||
cp -r ${M_ICU_PATH} third_party/icu
|
||||
cp -r ${M_BUILDTOOLS_PATH} buildtools
|
||||
cp -r ${M_CLANG_PATH} tools/clang
|
||||
mkdir -p base/trace_event
|
||||
cp -r ${M_TRACE_PATH} base/trace_event/common
|
||||
cp -r ${M_GTEST_PATH} testing/gtest
|
||||
cp -r ${M_GMOCK_PATH} testing/gmock
|
||||
cp -r ${M_SWARMING_PATH} tools/swarming_client
|
||||
|
||||
# make gyp default to full archives for static libs rather than thin
|
||||
if [[ $(uname -s) == 'Linux' ]]; then
|
||||
perl -i -p -e "s/\'standalone_static_library\', 0\)/\'standalone_static_library\', 1\)/g;" build/gyp/pylib/gyp/generator/make.py
|
||||
fi
|
||||
#PYTHONPATH="$(pwd)/tools/generate_shim_headers:$(pwd)/build:$(pwd)/build/gyp/pylib:" \
|
||||
#GYP_GENERATORS=make \
|
||||
#build/gyp/gyp --generator-output="out" build/all.gyp \
|
||||
# -Ibuild/standalone.gypi --depth=. \
|
||||
# -Dv8_target_arch=x64 \
|
||||
# -Dtarget_arch=x64 \
|
||||
# -S.x64.release -Dv8_enable_backtrace=1 -Dwerror='' -Darm_fpu=default -Darm_float_abi=default \
|
||||
# -Dv8_no_strict_aliasing=1 -Dv8_enable_i18n_support=0
|
||||
make x64.release library=static werror=no snapshot=on strictaliasing=off i18nsupport=off -j${MASON_CONCURRENCY}
|
||||
mkdir -p ${MASON_PREFIX}/include
|
||||
mkdir -p ${MASON_PREFIX}/lib
|
||||
cp -r include/* ${MASON_PREFIX}/include/
|
||||
if [[ $(uname -s) == 'Darwin' ]]; then
|
||||
cp out/x64.release/*v8*.a ${MASON_PREFIX}/lib/
|
||||
else
|
||||
cp out/x64.release/obj.target/tools/gyp/lib*.a ${MASON_PREFIX}/lib/
|
||||
fi
|
||||
}
|
||||
|
||||
function mason_cflags {
|
||||
echo -I${MASON_PREFIX}/include
|
||||
}
|
||||
|
||||
function mason_ldflags {
|
||||
:
|
||||
}
|
||||
|
||||
function mason_static_libs {
|
||||
echo ${MASON_PREFIX}/lib/libv8_base.a ${MASON_PREFIX}/lib/libv8_libplatform.a ${MASON_PREFIX}/lib/libv8_external_snapshot.a ${MASON_PREFIX}/lib/libv8_libbase.a
|
||||
}
|
||||
|
||||
function mason_clean {
|
||||
make clean
|
||||
}
|
||||
|
||||
mason_run "$@"
|
||||
Reference in New Issue
Block a user