scripts for running linux tests with docker
This commit is contained in:
14
configure
vendored
14
configure
vendored
@@ -50,6 +50,12 @@ case ${MASON_PLATFORM} in
|
||||
;;
|
||||
esac
|
||||
|
||||
if [ ${MASON_PLATFORM} == 'linux' ] ; then
|
||||
MESA_VERSION=10.4.3
|
||||
mason install mesa ${MESA_VERSION}
|
||||
export PKG_CONFIG_PATH=`mason prefix mesa ${MESA_VERSION}`/lib/pkgconfig
|
||||
fi
|
||||
|
||||
function abort { >&2 echo -e "\033[1m\033[31m$1\033[0m"; exit 1; }
|
||||
|
||||
if [ -z ${CONFIG_FILE} ]; then
|
||||
@@ -121,6 +127,14 @@ if [ ! -z ${GLFW_VERSION} ]; then
|
||||
CONFIG+=" 'glfw3_ldflags%': $(quote_flags $(mason ldflags glfw ${GLFW_VERSION})),"$LN
|
||||
fi
|
||||
|
||||
if [ ${MASON_PLATFORM} == 'linux' ]; then
|
||||
CONFIG+=" 'opengl_cflags%': $(quote_flags $(pkg-config gl --cflags)),"$LN
|
||||
CONFIG+=" 'opengl_ldflags%': $(quote_flags $(pkg-config gl --libs)),"$LN
|
||||
else
|
||||
CONFIG+=" 'opengl_cflags%': $(quote_flags),"$LN
|
||||
CONFIG+=" 'opengl_ldflags%': $(quote_flags),"$LN
|
||||
fi
|
||||
|
||||
if [ ! -z ${LIBPNG_VERSION} ]; then
|
||||
mason install libpng ${LIBPNG_VERSION}
|
||||
CONFIG+=" 'png_static_libs%': $(quote_flags $(mason static_libs libpng ${LIBPNG_VERSION})),"$LN
|
||||
|
||||
19
docker/linux/Dockerfile
Normal file
19
docker/linux/Dockerfile
Normal file
@@ -0,0 +1,19 @@
|
||||
FROM ubuntu:12.04
|
||||
|
||||
RUN apt-get update -y && \
|
||||
apt-get install -y build-essential git-core python-pip python-software-properties software-properties-common && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN add-apt-repository --yes ppa:ubuntu-toolchain-r/test && \
|
||||
add-apt-repository --yes ppa:boost-latest/ppa && \
|
||||
apt-get update -y && \
|
||||
apt-get -y install gcc-4.8 g++-4.8 curl zlib1g-dev automake gdb libtool xutils-dev make cmake pkg-config python-pip libboost1.55-dev libcurl4-openssl-dev libpng-dev libsqlite3-dev mesa-utils libxi-dev x11proto-randr-dev x11proto-xext-dev libxrandr-dev x11proto-xf86vidmode-dev libxxf86vm-dev libxcursor-dev libxinerama-dev xvfb llvm-3.4 && \
|
||||
pip install awscli
|
||||
|
||||
RUN apt-get install -y imagemagick
|
||||
|
||||
RUN useradd -ms /bin/bash mapbox
|
||||
|
||||
USER mapbox
|
||||
ENV HOME /home/mapbox
|
||||
WORKDIR /home/mapbox
|
||||
15
docker/linux/run-clang.sh
Normal file
15
docker/linux/run-clang.sh
Normal file
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
set -o pipefail
|
||||
|
||||
docker build \
|
||||
-t mapbox/gl-native:linux \
|
||||
docker/linux
|
||||
|
||||
docker run \
|
||||
-i \
|
||||
-e "CXX=clang++" \
|
||||
-v `pwd`:/home/mapbox/build \
|
||||
-t mapbox/gl-native:linux \
|
||||
build/docker/linux/test.sh
|
||||
15
docker/linux/run-gcc.sh
Executable file
15
docker/linux/run-gcc.sh
Executable file
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
set -o pipefail
|
||||
|
||||
docker build \
|
||||
-t mapbox/gl-native:linux \
|
||||
docker/linux
|
||||
|
||||
docker run \
|
||||
-i \
|
||||
-e "CXX=g++" \
|
||||
-v `pwd`:/home/mapbox/build \
|
||||
-t mapbox/gl-native:linux \
|
||||
build/docker/linux/test.sh
|
||||
26
docker/linux/test.sh
Executable file
26
docker/linux/test.sh
Executable file
@@ -0,0 +1,26 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
set -o pipefail
|
||||
|
||||
export TRAVIS_OS_NAME=linux
|
||||
|
||||
cd build
|
||||
|
||||
source ./scripts/local_mason.sh
|
||||
mason install mesa 10.4.3
|
||||
export LD_LIBRARY_PATH=`mason prefix mesa 10.4.3`/lib
|
||||
|
||||
export DISPLAY=:99.0
|
||||
Xvfb :99 -ac -screen 0 1024x768x24 &
|
||||
|
||||
if [[ ${CXX} == "g++" ]]; then
|
||||
export CXX="g++-4.8"
|
||||
export CC="gcc-4.8"
|
||||
fi
|
||||
|
||||
source ./scripts/install_node.sh
|
||||
|
||||
make linux -j`nproc`
|
||||
make test-* -j`nproc`
|
||||
./scripts/compare_images.sh
|
||||
@@ -29,14 +29,17 @@
|
||||
'variables': {
|
||||
'cflags_cc': [
|
||||
'<@(uv_cflags)',
|
||||
'<@(opengl_cflags)',
|
||||
'<@(boost_cflags)',
|
||||
],
|
||||
'cflags': [
|
||||
'<@(uv_cflags)',
|
||||
'<@(opengl_cflags)',
|
||||
'-fPIC'
|
||||
],
|
||||
'ldflags': [
|
||||
'<@(uv_ldflags)',
|
||||
'<@(opengl_ldflags)',
|
||||
],
|
||||
'libraries': [
|
||||
'<@(uv_static_libs)',
|
||||
|
||||
@@ -13,6 +13,12 @@
|
||||
'include_dirs': [
|
||||
'../include',
|
||||
],
|
||||
|
||||
'cflags_cc': [ '<@(opengl_cflags)' ],
|
||||
|
||||
'link_settings': {
|
||||
'libraries': [ '<@(opengl_ldflags)' ],
|
||||
},
|
||||
},
|
||||
],
|
||||
}
|
||||
|
||||
@@ -29,6 +29,8 @@
|
||||
'-framework Foundation',
|
||||
'-framework ImageIO',
|
||||
'-framework CoreServices',
|
||||
'-framework OpenGL',
|
||||
'-framework ApplicationServices',
|
||||
],
|
||||
},
|
||||
|
||||
|
||||
@@ -52,11 +52,6 @@
|
||||
'libraries': [ '<@(libraries)', '<@(ldflags)' ],
|
||||
}]
|
||||
],
|
||||
|
||||
'copies': [{
|
||||
'files': [ '../styles/styles' ],
|
||||
'destination': '<(PRODUCT_DIR)'
|
||||
}],
|
||||
},
|
||||
],
|
||||
}
|
||||
|
||||
@@ -31,9 +31,6 @@ if [[ ${TRAVIS_OS_NAME} == "linux" ]]; then
|
||||
x11proto-xf86vidmode-dev libxxf86vm-dev \
|
||||
libxcursor-dev libxinerama-dev \
|
||||
llvm-3.4 # required for mesa
|
||||
|
||||
mapbox_time "install_mesa" \
|
||||
mason install mesa 10.4.3
|
||||
fi
|
||||
|
||||
mapbox_time "install_awscli" \
|
||||
|
||||
@@ -67,22 +67,15 @@
|
||||
],
|
||||
'libraries': [
|
||||
'<@(uv_static_libs)',
|
||||
'<@(glfw3_static_libs)',
|
||||
'<@(sqlite3_static_libs)',
|
||||
'<@(zlib_static_libs)',
|
||||
'<@(curl_static_libs)',
|
||||
],
|
||||
'variables': {
|
||||
'cflags_cc': [
|
||||
'<@(uv_cflags)',
|
||||
'<@(opengl_cflags)',
|
||||
'<@(boost_cflags)',
|
||||
],
|
||||
'ldflags': [
|
||||
'<@(uv_ldflags)',
|
||||
'<@(glfw3_ldflags)',
|
||||
'<@(sqlite3_ldflags)',
|
||||
'<@(zlib_ldflags)',
|
||||
'<@(curl_ldflags)',
|
||||
],
|
||||
},
|
||||
'conditions': [
|
||||
|
||||
Reference in New Issue
Block a user