From b0dcc25584e7d064e9311321233fe843a000467e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Konstantin=20K=C3=A4fer?= Date: Fri, 23 Jun 2017 15:50:13 -0700 Subject: [build] upgrade to v4 CircleCI images that have logbt/mesa/gdb/apitrace installed --- circle.yml | 52 ++------ scripts/check-cxx11abi.sh | 4 +- scripts/circle_setup.sh | 35 ------ scripts/valgrind.sup | 296 +++------------------------------------------- 4 files changed, 33 insertions(+), 354 deletions(-) delete mode 100755 scripts/circle_setup.sh diff --git a/circle.yml b/circle.yml index 6620a44541..58e08cfc4f 100644 --- a/circle.yml +++ b/circle.yml @@ -21,7 +21,7 @@ jobs: # ------------------------------------------------------------------------------ clang-tidy: docker: - - image: mbgl/ci:r3-linux-clang-3.9 + - image: mbgl/ci:r4-linux-clang-3.9 working_directory: /src environment: LIBSYSCONFCPUS: 6 @@ -55,7 +55,7 @@ jobs: # ------------------------------------------------------------------------------ android-debug-arm-v7: docker: - - image: mbgl/ci:r3-android-ndk-r15-gradle + - image: mbgl/ci:r4-android-ndk-r15-gradle working_directory: /src environment: LIBSYSCONFCPUS: 6 @@ -131,7 +131,7 @@ jobs: # ------------------------------------------------------------------------------ android-release-all: docker: - - image: mbgl/ci:r3-android-ndk-r15-gradle + - image: mbgl/ci:r4-android-ndk-r15-gradle working_directory: /src environment: LIBSYSCONFCPUS: 6 @@ -178,7 +178,7 @@ jobs: # ------------------------------------------------------------------------------ node4-clang39-release: docker: - - image: mbgl/ci:r3-linux-clang-3.9-node-4 + - image: mbgl/ci:r4-linux-clang-3.9-node-4 working_directory: /src environment: LIBSYSCONFCPUS: 6 @@ -187,7 +187,6 @@ jobs: WITH_EGL: 1 PACKAGE_JSON_VERSION: $(node -e "console.log(require('./package.json').version)") PUBLISH: $([[ "${CIRCLE_BRANCH}" == "node-v${PACKAGE_JSON_VERSION}" ]] && echo true) - DISPLAY: :0 steps: - checkout - restore_cache: @@ -201,12 +200,8 @@ jobs: - run: name: Run node tests command: | - source scripts/circle_setup.sh - mapbox_install_logbt - mapbox_install_apitrace - mapbox_export_mesa_library_path xvfb-run --server-args="-screen 0 1024x768x24" \ - ./logbt -- apitrace trace --api=egl -v make test-node + logbt -- apitrace trace --api=egl -v make test-node - run: name: Publish node package when: on_success @@ -223,7 +218,7 @@ jobs: # ------------------------------------------------------------------------------ node6-clang39-release: docker: - - image: mbgl/ci:r3-linux-clang-3.9 + - image: mbgl/ci:r4-linux-clang-3.9 working_directory: /src environment: LIBSYSCONFCPUS: 6 @@ -232,7 +227,6 @@ jobs: WITH_EGL: 1 PACKAGE_JSON_VERSION: $(node -e "console.log(require('./package.json').version)") PUBLISH: $([[ "${CIRCLE_BRANCH}" == "node-v${PACKAGE_JSON_VERSION}" ]] && echo true) - DISPLAY: :0 steps: - checkout - restore_cache: @@ -246,12 +240,8 @@ jobs: - run: name: Run node tests command: | - source scripts/circle_setup.sh - mapbox_install_logbt - mapbox_install_apitrace - mapbox_export_mesa_library_path xvfb-run --server-args="-screen 0 1024x768x24" \ - ./logbt -- apitrace trace --api=egl -v make test-node + logbt -- apitrace trace --api=egl -v make test-node - run: name: Publish node package when: on_success @@ -268,7 +258,7 @@ jobs: # ------------------------------------------------------------------------------ node6-clang39-debug: docker: - - image: mbgl/ci:r3-linux-clang-3.9 + - image: mbgl/ci:r4-linux-clang-3.9 working_directory: /src environment: LIBSYSCONFCPUS: 6 @@ -277,7 +267,6 @@ jobs: WITH_EGL: 1 PACKAGE_JSON_VERSION: $(node -e "console.log(require('./package.json').version)") PUBLISH: $([[ "${CIRCLE_BRANCH}" == "node-v${PACKAGE_JSON_VERSION}" ]] && echo true) - DISPLAY: :0 steps: - checkout - restore_cache: @@ -291,12 +280,8 @@ jobs: - run: name: Run node tests command: | - source scripts/circle_setup.sh - mapbox_install_logbt - mapbox_install_apitrace - mapbox_export_mesa_library_path xvfb-run --server-args="-screen 0 1024x768x24" \ - ./logbt -- apitrace trace --api=egl -v make test-node + logbt -- apitrace trace --api=egl -v make test-node - run: name: Publish node package when: on_success @@ -313,14 +298,13 @@ jobs: # ------------------------------------------------------------------------------ linux-clang39-debug: docker: - - image: mbgl/ci:r3-linux-clang-3.9 + - image: mbgl/ci:r4-linux-clang-3.9 working_directory: /src environment: LIBSYSCONFCPUS: 6 JOBS: 6 BUILDTYPE: Debug WITH_EGL: 1 - DISPLAY: :0 steps: - checkout - restore_cache: @@ -340,8 +324,6 @@ jobs: - run: name: Run tests command: | - source scripts/circle_setup.sh - mapbox_export_mesa_library_path xvfb-run --server-args="-screen 0 1024x768x24" \ make run-test - save_cache: @@ -394,7 +376,7 @@ jobs: # ------------------------------------------------------------------------------ linux-gcc5-debug-coverage: docker: - - image: mbgl/ci:r3-linux-gcc-5 + - image: mbgl/ci:r4-linux-gcc-5 working_directory: /src environment: LIBSYSCONFCPUS: 6 @@ -402,7 +384,6 @@ jobs: BUILDTYPE: Debug WITH_EGL: 1 WITH_COVERAGE: 1 - DISPLAY: :0 steps: - checkout - restore_cache: @@ -422,14 +403,11 @@ jobs: - run: name: Run tests command: | - source scripts/circle_setup.sh - mapbox_export_mesa_library_path xvfb-run --server-args="-screen 0 1024x768x24" \ make run-test - run: name: Upload coverage results to coveralls command: | - source scripts/circle_setup.sh platform/linux/scripts/coveralls.sh - save_cache: key: v1-linux-gcc5-debug-coverage @@ -440,7 +418,7 @@ jobs: # ------------------------------------------------------------------------------ linux-gcc5-release-qt4: docker: - - image: mbgl/ci:r3-linux-gcc-5-qt-4 + - image: mbgl/ci:r4-linux-gcc-5-qt-4 working_directory: /src environment: LIBSYSCONFCPUS: 6 @@ -465,8 +443,6 @@ jobs: - run: name: Run memory-load tests command: | - source scripts/circle_setup.sh - mapbox_export_mesa_library_path xvfb-run --server-args="-screen 0 1024x768x24" \ make run-qt-test-Memory.*:*.Load scripts/log_memory_benchmarks.sh test_detail.xml "Platform=Linux,Compiler=${_CC},Arch=$(uname -m)" @@ -479,7 +455,7 @@ jobs: # ------------------------------------------------------------------------------ linux-gcc5-release-qt5: docker: - - image: mbgl/ci:r3-linux-gcc-5-qt-5 + - image: mbgl/ci:r4-linux-gcc-5-qt-5 working_directory: /src environment: LIBSYSCONFCPUS: 6 @@ -508,8 +484,6 @@ jobs: environment: JOBS: 1 # https://github.com/mapbox/mapbox-gl-native/issues/9108 command: | - source scripts/circle_setup.sh - mapbox_export_mesa_library_path xvfb-run --server-args="-screen 0 1024x768x24" \ scripts/valgrind.sh build/qt-linux-x86_64/Release/mbgl-test --gtest_filter=-*.Load --gtest_filter=-Memory.Vector - save_cache: diff --git a/scripts/check-cxx11abi.sh b/scripts/check-cxx11abi.sh index c543e52cb6..c6fd9258c5 100755 --- a/scripts/check-cxx11abi.sh +++ b/scripts/check-cxx11abi.sh @@ -3,7 +3,9 @@ set -e set -o pipefail -if [ ! `uname -s` = 'Linux' ]; then +if ! [ `uname -s` = 'Linux' ] || \ + ! command -v readelf > /dev/null || \ + ! command -v c++filt > /dev/null; then echo -n "OFF" exit 0 fi diff --git a/scripts/circle_setup.sh b/scripts/circle_setup.sh deleted file mode 100755 index 308cac34fb..0000000000 --- a/scripts/circle_setup.sh +++ /dev/null @@ -1,35 +0,0 @@ -#!/usr/bin/env bash -# This script is sourced; do not set -e or -o pipefail here. - -# Touch package.json so that we are definitely going to run an npm update action -touch package.json - -function mapbox_install_logbt { - export PATH=$(scripts/mason.sh PREFIX gdb VERSION 7.12)/bin:${PATH} - curl -sSfL https://github.com/mapbox/logbt/archive/v2.0.1.tar.gz | tar --gunzip --extract --strip-components=2 --exclude="*md" --exclude="test*" --directory=. - ./logbt --test -} - -export -f mapbox_install_logbt - -function mapbox_install_apitrace { - export PATH=$(scripts/mason.sh PREFIX apitrace VERSION 6a30de1)/bin:${PATH} -} - -export -f mapbox_install_apitrace - -function mapbox_export_mesa_library_path { - # Install and set up to load a more recent version of mesa - MESA_PREFIX=$(scripts/mason.sh PREFIX mesa VERSION 13.0.4) - export LD_LIBRARY_PATH="${MESA_PREFIX}/lib:${LD_LIBRARY_PATH:-}" - export LIBGL_DRIVERS_PATH="${MESA_PREFIX}/lib/dri" -} - -export -f mapbox_export_mesa_library_path - -# Install and set up to load awscli -pip install --user awscli -export PATH="`python -m site --user-base`/bin:${PATH}" - -# Install coveralls gem -gem install coveralls-lcov --no-rdoc --no-ri diff --git a/scripts/valgrind.sup b/scripts/valgrind.sup index d8870536ac..f659122dc1 100644 --- a/scripts/valgrind.sup +++ b/scripts/valgrind.sup @@ -1,142 +1,19 @@ { - Graphics driver buffers - Memcheck:Leak - ... - obj:*/r600_dri.* - obj:*/r600_dri.* - obj:*/r600_dri.* - ... -} -{ - Graphics driver buffers - Memcheck:Leak - ... - obj:*/i965_dri.* - obj:*/i965_dri.* - obj:*/i965_dri.* - ... -} -{ - Graphics driver buffers - Memcheck:Leak - ... - obj:*/nouveau_dri.* - obj:*/nouveau_dri.* - obj:*/nouveau_dri.* - ... -} -{ - Ubuntu 16.04 - GLFW - Memcheck:Leak - ... - fun:glfwInit - ... -} -{ - Ubuntu 16.04 - GLFW - Memcheck:Cond - ... - fun:glfwInit - ... -} -{ - Ubuntu 16.04 - Qt + glib - Memcheck:Cond - fun:g_utf8_offset_to_pointer - ... -} -{ - Ubuntu 16.04 - Qt + glib + Graphics driver bugs Memcheck:Cond ... - fun:g_signal_emit_valist - ... - fun:*QApplicationPrivate* - ... -} -{ - Ubuntu 16.04 - Qt + X11 - Memcheck:Param - writev(vector[...]) - ... - obj:*/libxcb.* - fun:xcb_flush - ... -} -{ - Ubuntu 16.04 - Qt + X11 - Memcheck:Leak - ... - fun:_XmbTextListToTextProperty - ... - fun:*QWidget*setVisible* - ... -} -{ - Ubuntu 16.04 - Qt + Fontconfig - Memcheck:Leak - ... - obj:*/libfontconfig.* - obj:*/libfontconfig.* - ... - fun:FcFontRenderPrepare - ... -} -{ - Ubuntu 16.04 - Qt + Fontconfig - Memcheck:Leak - ... - obj:*/libfontconfig.* - obj:*/libfontconfig.* - ... - fun:FcPatternAddInteger - ... -} -{ - Ubuntu 16.04 - Qt + Fontconfig - Memcheck:Leak - ... - obj:*/libfontconfig.* - obj:*/libfontconfig.* - ... - fun:FcConfigParseAndLoad - ... -} -{ - Ubuntu 16.04 - Qt + Dbus - Memcheck:Leak - ... - fun:dbus_connection_send_with_reply - ... - fun:*QWidget* -} -{ - Ubuntu 16.04 - Qt + Dbus - Memcheck:Leak - ... - fun:px_proxy_factory_get_proxies - obj:*/libQt5Network.* -} -{ - Ubuntu 16.04 - Qt - Memcheck:Leak - ... - fun:*QGuiApplicationPrivate*createEventDispatcher* - fun:*QCoreApplication*init* - ... -} -{ - Ubuntu 16.04 - Qt - Memcheck:Leak - ... - fun:*QWidget*setWindowTitle* + obj:*/swrast_dri.* + obj:*/swrast_dri.* + obj:*/swrast_dri.* ... } { - Ubuntu 16.04 - Qt - Memcheck:Leak + Graphics driver bugs + Memcheck:Value8 ... - fun:*QNetworkConfigurationManagerPrivate*updateConfigurations* + obj:*/swrast_dri.* + obj:*/swrast_dri.* + obj:*/swrast_dri.* ... } { @@ -156,118 +33,42 @@ obj:* } { - Ubuntu 16.04 - Mysterious leak when running utests - Memcheck:Leak - fun:malloc - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* - obj:* -} -{ - Ubuntu 14.04 - Travis CI bot using swrast + Qt5 Memcheck:Cond - fun:do_stencil_test - fun:_swrast_stencil_and_ztest_span - fun:_swrast_write_rgba_span - fun:draw_wide_line - ... -} -{ - Ubuntu 14.04 - Travis + Qt5 - Memcheck:Leak ... obj:*/libQt5Core.* ... } { - Ubuntu 14.04 - Travis + Qt5 - Memcheck:Cond - ... - obj:*/libQt5Core.* - ... -} -{ - Ubuntu 14.04 - Travis + Qt5 + Qt5 Memcheck:Value8 ... obj:*/libQt5Core.* ... } { - Ubuntu 14.04 - Travis + Qt5 - Memcheck:Leak - ... - obj:*/libQt5Gui.* - ... -} -{ - Ubuntu 14.04 - Travis + Qt5 + Qt5 Memcheck:Cond ... obj:*/libQt5Gui.* ... } { - Ubuntu 14.04 - Travis + Qt5 + Qt5 Memcheck:Value8 ... obj:*/libQt5Gui.* ... } { - Ubuntu 14.04 - Travis + mesa 13.0.0-glx - Memcheck:Cond - ... - obj:*/mesa/libGL.so.* - ... -} -{ - Ubuntu 14.04 - Travis + mesa 13.0.0-glx - Memcheck:Value8 - ... - obj:*/mesa/libGL.so.* - ... -} -{ - Ubuntu 14.04 - Travis + mesa 13.0.0-glx - Memcheck:Cond - ... - fun:do_rasterize_bin - ... -} -{ - Ubuntu 14.04 - Travis + mesa 13.0.0-glx - Memcheck:Value8 - ... - fun:do_rasterize_bin - ... -} -{ - Ubuntu 14.04 - Travis + mesa 13.0.0-glx + mapbox::pixelmatch Memcheck:Cond ... fun:_ZN6mapbox10pixelmatchEPKhS1_mmPhdb ... } { - Ubuntu 14.04 - Travis + mesa 13.0.0-glx - Memcheck:Param - write(buf) - ... - obj:*/libc-* - fun:_ZN4mbgl4util10write_fileERKSsS2_ - ... -} -{ - Ubuntu 16.04 - CircleCI + mesa 13.0.4 + util::write_file Memcheck:Param write(buf) ... @@ -276,73 +77,10 @@ ... } { - Ubuntu 14.04 - Travis + mesa 13.0.3 - Memcheck:Cond - fun:_ZN12_GLOBAL__N_117PeepholeOptimizer20runOnMachineFunctionERN4llvm15MachineFunctionE - fun:_ZN4llvm19MachineFunctionPass13runOnFunctionERNS_8FunctionE - fun:_ZN4llvm13FPPassManager13runOnFunctionERNS_8FunctionE - fun:_ZN4llvm13FPPassManager11runOnModuleERNS_6ModuleE - fun:_ZN4llvm6legacy15PassManagerImpl3runERNS_6ModuleE - fun:_ZN4llvm5MCJIT10emitObjectEPNS_6ModuleE - fun:_ZN4llvm5MCJIT21generateCodeForModuleEPNS_6ModuleE - fun:_ZN4llvm5MCJIT14finalizeObjectEv - fun:LLVMGetPointerToGlobal - fun:gallivm_jit_function - fun:generate_variant - fun:llvmpipe_update_fs -} -{ - Ubuntu 14.04 - Travis + mesa 13.0.3 - Memcheck:Cond - fun:_ZNK4llvm12X86InstrInfo13reMaterializeERNS_17MachineBasicBlockENS1_15bundle_iteratorINS_12MachineInstrENS_14ilist_iteratorIS4_EEEEjjPKS4_RKNS_18TargetRegisterInfoE - fun:_ZN12_GLOBAL__N_117RegisterCoalescer23reMaterializeTrivialDefERKN4llvm13CoalescerPairEPNS1_12MachineInstrERb - fun:_ZN12_GLOBAL__N_117RegisterCoalescer8joinCopyEPN4llvm12MachineInstrERb - fun:_ZN12_GLOBAL__N_117RegisterCoalescer20runOnMachineFunctionERN4llvm15MachineFunctionE - fun:_ZN4llvm19MachineFunctionPass13runOnFunctionERNS_8FunctionE - fun:_ZN4llvm13FPPassManager13runOnFunctionERNS_8FunctionE - fun:_ZN4llvm13FPPassManager11runOnModuleERNS_6ModuleE - fun:_ZN4llvm6legacy15PassManagerImpl3runERNS_6ModuleE - fun:_ZN4llvm5MCJIT10emitObjectEPNS_6ModuleE - fun:_ZN4llvm5MCJIT21generateCodeForModuleEPNS_6ModuleE - fun:_ZN4llvm5MCJIT14finalizeObjectEv - fun:LLVMGetPointerToGlobal -} -{ - Ubuntu 14.04 - Travis + mesa 13.0.3 - Memcheck:Cond - fun:_ZNK4llvm12X86InstrInfo13reMaterializeERNS_17MachineBasicBlockENS1_15bundle_iteratorINS_12MachineInstrENS_14ilist_iteratorIS4_EEEEjjPKS4_RKNS_18TargetRegisterInfoE - fun:_ZN4llvm13LiveRangeEdit15rematerializeAtERNS_17MachineBasicBlockENS1_15bundle_iteratorINS_12MachineInstrENS_14ilist_iteratorIS4_EEEEjRKNS0_5RematERKNS_18TargetRegisterInfoEb - fun:_ZN12_GLOBAL__N_113InlineSpiller5spillERN4llvm13LiveRangeEditE - fun:_ZN12_GLOBAL__N_18RAGreedy17selectOrSplitImplERN4llvm12LiveIntervalERNS1_15SmallVectorImplIjEERNS1_8SmallSetIjLj16ESt4lessIjEEEj - fun:_ZN12_GLOBAL__N_18RAGreedy13selectOrSplitERN4llvm12LiveIntervalERNS1_15SmallVectorImplIjEE - fun:_ZN4llvm12RegAllocBase16allocatePhysRegsEv - fun:_ZN12_GLOBAL__N_18RAGreedy20runOnMachineFunctionERN4llvm15MachineFunctionE - fun:_ZN4llvm19MachineFunctionPass13runOnFunctionERNS_8FunctionE - fun:_ZN4llvm13FPPassManager13runOnFunctionERNS_8FunctionE - fun:_ZN4llvm13FPPassManager11runOnModuleERNS_6ModuleE - fun:_ZN4llvm6legacy15PassManagerImpl3runERNS_6ModuleE - fun:_ZN4llvm5MCJIT10emitObjectEPNS_6ModuleE -} -{ - Ubuntu 14.04 - Travis + mesa 13.0.3 - Memcheck:Cond - fun:_ZNK4llvm12X86InstrInfo13reMaterializeERNS_17MachineBasicBlockENS1_15bundle_iteratorINS_12MachineInstrENS_14ilist_iteratorIS4_EEEEjjPKS4_RKNS_18TargetRegisterInfoE - fun:_ZN4llvm13LiveRangeEdit15rematerializeAtERNS_17MachineBasicBlockENS1_15bundle_iteratorINS_12MachineInstrENS_14ilist_iteratorIS4_EEEEjRKNS0_5RematERKNS_18TargetRegisterInfoEb - fun:_ZN4llvm11SplitEditor13defFromParentEjPNS_6VNInfoENS_9SlotIndexERNS_17MachineBasicBlockENS4_15bundle_iteratorINS_12MachineInstrENS_14ilist_iteratorIS7_EEEE - fun:_ZN4llvm11SplitEditor16splitRegOutBlockERKNS_13SplitAnalysis9BlockInfoEjNS_9SlotIndexE - fun:_ZN12_GLOBAL__N_18RAGreedy13doRegionSplitERN4llvm12LiveIntervalEjbRNS1_15SmallVectorImplIjEE - fun:_ZN12_GLOBAL__N_18RAGreedy17selectOrSplitImplERN4llvm12LiveIntervalERNS1_15SmallVectorImplIjEERNS1_8SmallSetIjLj16ESt4lessIjEEEj - fun:_ZN12_GLOBAL__N_18RAGreedy13selectOrSplitERN4llvm12LiveIntervalERNS1_15SmallVectorImplIjEE - fun:_ZN4llvm12RegAllocBase16allocatePhysRegsEv - fun:_ZN12_GLOBAL__N_18RAGreedy20runOnMachineFunctionERN4llvm15MachineFunctionE - fun:_ZN4llvm19MachineFunctionPass13runOnFunctionERNS_8FunctionE - fun:_ZN4llvm13FPPassManager13runOnFunctionERNS_8FunctionE - fun:_ZN4llvm13FPPassManager11runOnModuleERNS_6ModuleE -} -{ - Ubuntu 14.04 - Travis + mesa 13.0.3 + Qt5 ThreadStorage Memcheck:Leak match-leak-kinds: definite fun:_Znwm + fun:_Z24qThreadStorage_localDataISt5arrayIPiLm1EEERT_R18QThreadStorageDataPS3_.isra.5 ... } -- cgit v1.2.1