Skip to content

Commit 439960d

Browse files
committed
Build folly from the travis before_script
1 parent 4ee0ae5 commit 439960d

File tree

2 files changed

+22
-7
lines changed

2 files changed

+22
-7
lines changed

.travis.yml

+10-6
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ matrix:
3535
# are overriden by Travis. Setting the compiler in Travis doesn't work
3636
# either because it strips version.
3737

38-
- env: COMPILER=clang-4.0
38+
- env: MATRIX_EVAL="CC=clang-4.0 && CXX=clang++-4.0"
3939
addons:
4040
apt:
4141
sources:
@@ -46,7 +46,7 @@ matrix:
4646
- clang-4.0
4747
- libstdc++-4.9-dev
4848

49-
- env: COMPILER=gcc-5
49+
- env: MATRIX_EVAL="CC=gcc-5 && CXX=g++-5"
5050
addons:
5151
apt:
5252
sources:
@@ -56,7 +56,7 @@ matrix:
5656
- g++-5
5757
- libjemalloc-dev
5858

59-
- env: COMPILER=gcc-6
59+
- env: MATRIX_EVAL="CC=gcc-6 && CXX=g++-6"
6060
addons:
6161
apt:
6262
sources:
@@ -85,12 +85,16 @@ before_script:
8585
# Install lcov to coveralls conversion + upload tool.
8686
- gem install coveralls-lcov
8787
- lcov --version
88+
# Set CC and CXX based on the matrix environment
89+
- eval "${MATRIX_EVAL}"
90+
# Build folly
91+
- mkdir build
92+
- ./scripts/build_folly.sh build/folly-src build/folly-install
8893

8994
script:
90-
- mkdir build
9195
- cd build
92-
- cmake -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DRSOCKET_CC=$COMPILER
93-
-DRSOCKET_ASAN=$ASAN -DRSOCKET_INSTALL_DEPS=True
96+
- cmake -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DRSOCKET_ASAN=$ASAN
97+
-DCMAKE_PREFIX_PATH=$PWD/folly-install
9498
-DRSOCKET_BUILD_WITH_COVERAGE=ON ..
9599
- make -j4
96100
- lcov --directory . --zerocounters

scripts/build_folly.sh

+12-1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,13 @@ if [[ -z $INSTALL_DIR ]]; then
99
exit 1
1010
fi
1111

12+
# Convert INSTALL_DIR to an absolute path so it still refers to the same
13+
# location after we cd into the build directory.
14+
case "$INSTALL_DIR" in
15+
/*) ;;
16+
*) INSTALL_DIR="$PWD/$INSTALL_DIR"
17+
esac
18+
1219
# If folly was already installed, just return early
1320
INSTALL_MARKER_FILE="$INSTALL_DIR/folly.installed"
1421
if [[ -f $INSTALL_MARKER_FILE ]]; then
@@ -28,7 +35,11 @@ fi
2835

2936
mkdir -p "$CHECKOUT_DIR/_build"
3037
cd "$CHECKOUT_DIR/_build"
31-
cmake "-DCMAKE_INSTALL_PREFIX=${INSTALL_DIR}" ..
38+
if ! cmake "-DCMAKE_INSTALL_PREFIX=${INSTALL_DIR}" ..; then
39+
echo "error configuring folly" >&2
40+
tail -n 100 CMakeFiles/CMakeError.log >&2
41+
exit 1
42+
fi
3243
make -j4
3344
make install
3445
touch "$INSTALL_MARKER_FILE"

0 commit comments

Comments
 (0)