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
|
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; }
|
function abort { >&2 echo -e "\033[1m\033[31m$1\033[0m"; exit 1; }
|
||||||
|
|
||||||
if [ -z ${CONFIG_FILE} ]; then
|
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
|
CONFIG+=" 'glfw3_ldflags%': $(quote_flags $(mason ldflags glfw ${GLFW_VERSION})),"$LN
|
||||||
fi
|
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
|
if [ ! -z ${LIBPNG_VERSION} ]; then
|
||||||
mason install libpng ${LIBPNG_VERSION}
|
mason install libpng ${LIBPNG_VERSION}
|
||||||
CONFIG+=" 'png_static_libs%': $(quote_flags $(mason static_libs libpng ${LIBPNG_VERSION})),"$LN
|
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': {
|
'variables': {
|
||||||
'cflags_cc': [
|
'cflags_cc': [
|
||||||
'<@(uv_cflags)',
|
'<@(uv_cflags)',
|
||||||
|
'<@(opengl_cflags)',
|
||||||
'<@(boost_cflags)',
|
'<@(boost_cflags)',
|
||||||
],
|
],
|
||||||
'cflags': [
|
'cflags': [
|
||||||
'<@(uv_cflags)',
|
'<@(uv_cflags)',
|
||||||
|
'<@(opengl_cflags)',
|
||||||
'-fPIC'
|
'-fPIC'
|
||||||
],
|
],
|
||||||
'ldflags': [
|
'ldflags': [
|
||||||
'<@(uv_ldflags)',
|
'<@(uv_ldflags)',
|
||||||
|
'<@(opengl_ldflags)',
|
||||||
],
|
],
|
||||||
'libraries': [
|
'libraries': [
|
||||||
'<@(uv_static_libs)',
|
'<@(uv_static_libs)',
|
||||||
|
|||||||
@@ -13,6 +13,12 @@
|
|||||||
'include_dirs': [
|
'include_dirs': [
|
||||||
'../include',
|
'../include',
|
||||||
],
|
],
|
||||||
|
|
||||||
|
'cflags_cc': [ '<@(opengl_cflags)' ],
|
||||||
|
|
||||||
|
'link_settings': {
|
||||||
|
'libraries': [ '<@(opengl_ldflags)' ],
|
||||||
|
},
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -29,6 +29,8 @@
|
|||||||
'-framework Foundation',
|
'-framework Foundation',
|
||||||
'-framework ImageIO',
|
'-framework ImageIO',
|
||||||
'-framework CoreServices',
|
'-framework CoreServices',
|
||||||
|
'-framework OpenGL',
|
||||||
|
'-framework ApplicationServices',
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
@@ -52,11 +52,6 @@
|
|||||||
'libraries': [ '<@(libraries)', '<@(ldflags)' ],
|
'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 \
|
x11proto-xf86vidmode-dev libxxf86vm-dev \
|
||||||
libxcursor-dev libxinerama-dev \
|
libxcursor-dev libxinerama-dev \
|
||||||
llvm-3.4 # required for mesa
|
llvm-3.4 # required for mesa
|
||||||
|
|
||||||
mapbox_time "install_mesa" \
|
|
||||||
mason install mesa 10.4.3
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
mapbox_time "install_awscli" \
|
mapbox_time "install_awscli" \
|
||||||
|
|||||||
@@ -67,22 +67,15 @@
|
|||||||
],
|
],
|
||||||
'libraries': [
|
'libraries': [
|
||||||
'<@(uv_static_libs)',
|
'<@(uv_static_libs)',
|
||||||
'<@(glfw3_static_libs)',
|
|
||||||
'<@(sqlite3_static_libs)',
|
|
||||||
'<@(zlib_static_libs)',
|
|
||||||
'<@(curl_static_libs)',
|
|
||||||
],
|
],
|
||||||
'variables': {
|
'variables': {
|
||||||
'cflags_cc': [
|
'cflags_cc': [
|
||||||
'<@(uv_cflags)',
|
'<@(uv_cflags)',
|
||||||
|
'<@(opengl_cflags)',
|
||||||
'<@(boost_cflags)',
|
'<@(boost_cflags)',
|
||||||
],
|
],
|
||||||
'ldflags': [
|
'ldflags': [
|
||||||
'<@(uv_ldflags)',
|
'<@(uv_ldflags)',
|
||||||
'<@(glfw3_ldflags)',
|
|
||||||
'<@(sqlite3_ldflags)',
|
|
||||||
'<@(zlib_ldflags)',
|
|
||||||
'<@(curl_ldflags)',
|
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
'conditions': [
|
'conditions': [
|
||||||
|
|||||||
Reference in New Issue
Block a user