[Mesa-dev] [RFC] travis: lower SWR requirement to GCC 4.8, aka std=c++11
Rowley, Timothy O
timothy.o.rowley at intel.com
Wed Jul 5 18:28:50 UTC 2017
> On Jul 4, 2017, at 12:01 PM, Emil Velikov <emil.l.velikov at gmail.com> wrote:
>
> From: Emil Velikov <emil.velikov at collabora.com>
>
> With ealier commit we relaxed the requirement from C++14 to C++11.
> Update the build script so that it
>
> Cc: Tim Rowley <timothy.o.rowley at intel.com
> Fixes: 0b80b025021 ("swr: relax c++ requirement from c++14 to c++11")
> Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
> ---
> Tim, this does _not_ quite work, hence I'm sending it as RFC.
> The current build failures can be seen here
>
> Autotools
> https://travis-ci.org/evelikov/Mesa/jobs/250043586
> Scons
> https://travis-ci.org/evelikov/Mesa/jobs/250043595
>
gcc-4.8 is throwing up some issues; I’ve patched them in the submission I just made to mesa-stable (swr: modifications to allow gcc-4.8 compilation). Still get a weird link problem (undefined reference to llvm::RTDyldMemoryManager::getSymbolAddressInProcess), but that looks to be more of a core gallium problem.
> Although I expect additional issues, since w/o the patch a local build
> throws the following:
>
> src/gallium/drivers/swr/rasterizer/core/api.cpp: In function ‘void* SwrCreateContext(SWR_CREATECONTEXT_INFO*)’:
> src/gallium/drivers/swr/rasterizer/core/api.cpp:111:64: warning: ‘new’ of type ‘SWR_STATS’ with extended alignment 64 [-Waligned-new=]
> pContext->pStats = new SWR_STATS[pContext->NumWorkerThreads];
> ^
> src/gallium/drivers/swr/rasterizer/core/api.cpp:111:64: note: uses ‘void* operator new [](std::size_t)’, which does not have an alignment parameter
> src/gallium/drivers/swr/rasterizer/core/api.cpp:111:64: note: use ‘-faligned-new’ to enable C++17 over-aligned new support
>
> src/gallium/drivers/swr/rasterizer/core/threads.cpp: In function ‘void CreateThreadPool(SWR_CONTEXT*, THREAD_POOL*)’:
> src/gallium/drivers/swr/rasterizer/core/threads.cpp:989:72: warning: ‘new’ of type ‘SWR_STATS’ with extended alignment 64 [-Waligned-new=]
> pContext->dcRing[dc].dynState.pStats = new SWR_STATS[numThreads];
> ^
> src/gallium/drivers/swr/rasterizer/core/threads.cpp:989:72: note: uses ‘void* operator new [](std::size_t)’, which does not have an alignment parameter
> src/gallium/drivers/swr/rasterizer/core/threads.cpp:989:72: note: use ‘-faligned-new’ to enable C++17 over-aligned new support
These are curious - I’m not seeing warnings like this on gcc-4.8.5.
>
>
> .travis.yml | 12 ++++--------
> 1 file changed, 4 insertions(+), 8 deletions(-)
>
> diff --git a/.travis.yml b/.travis.yml
> index 4fde6f45f4a..fa52bf96f16 100644
> --- a/.travis.yml
> +++ b/.travis.yml
> @@ -57,8 +57,8 @@ matrix:
> - MAKE_CHECK_COMMAND="true"
> - LLVM_VERSION=3.9
> - LLVM_CONFIG="llvm-config-${LLVM_VERSION}"
> - - OVERRIDE_CC="gcc-5"
> - - OVERRIDE_CXX="g++-5"
> + - OVERRIDE_CC="gcc-4.8"
> + - OVERRIDE_CXX="g++-4.8"
> - DRI_LOADERS="--disable-glx --disable-gbm --disable-egl"
> - DRI_DRIVERS=""
> - GALLIUM_ST="--enable-dri --disable-opencl --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx --disable-gallium-osmesa"
> @@ -67,13 +67,11 @@ matrix:
> addons:
> apt:
> sources:
> - - ubuntu-toolchain-r-test
> - llvm-toolchain-trusty-3.9
> packages:
> # LLVM packaging is broken and misses these dependencies
> - libedit-dev
> # From sources above
> - - g++-5
> - llvm-3.9-dev
> # Common
> - xz-utils
> @@ -250,19 +248,17 @@ matrix:
> - LLVM_CONFIG="llvm-config-${LLVM_VERSION}"
> # Keep it symmetrical to the make build. There's no actual SWR, yet.
> - SCONS_CHECK_COMMAND="true"
> - - OVERRIDE_CC="gcc-5"
> - - OVERRIDE_CXX="g++-5"
> + - OVERRIDE_CC="gcc-4.8"
> + - OVERRIDE_CXX="g++-4.8"
> addons:
> apt:
> sources:
> - - ubuntu-toolchain-r-test
> - llvm-toolchain-trusty-3.9
> packages:
> - scons
> # LLVM packaging is broken and misses these dependencies
> - libedit-dev
> # From sources above
> - - g++-5
> - llvm-3.9-dev
> # Common
> - xz-utils
> --
> 2.13.0
>
More information about the mesa-dev
mailing list