revery-ui / revery

:zap: Native, high-performance, cross-platform desktop apps - built with Reason!
https://www.outrunlabs.com/revery/
MIT License
8.07k stars 196 forks source link

CI: esy-skia won't build on Linux #1076

Closed zbaylin closed 3 years ago

zbaylin commented 3 years ago

On the current master (i.e. before #1073), esy-skia fails to build on Linux with the message:

    FAILED: obj/src/gpu/gpu.GrFragmentProcessor.o 
    clang++ -MMD -MF obj/src/gpu/gpu.GrFragmentProcessor.o.d -DNDEBUG -DSK_SAMPLES_FOR_X -DSK_GAMMA_APPLY_TO_A8 -DSK_ENABLE_DISCRETE_GPU -DGR_TEST_UTILS=1 -DSKIA_IMPLEMENTATION=1 -I../../include/android -I../../include/c -I../../include/codec -I../../include/config -I../../include/core -I../../include/effects -I../../include/encode -I../../include/gpu -I../../include/atlastext -I../../include/pathops -I../../include/ports -I../../include/svg -I../../include/utils -I../../include/utils/mac -I../../include/private -I../../src/c -I../../src/codec -I../../src/core -I../../src/effects -I../../src/fonts -I../../src/image -I../../src/images -I../../src/lazy -I../../src/opts -I../../src/pathops -I../../src/pdf -I../../src/ports -I../../src/sfnt -I../../src/shaders -I../../src/shaders/gradients -I../../src/sksl -I../../src/utils -I../../src/utils/win -I../../src/xml -I../../third_party/gif -I../../experimental/svg/model -I../../src/gpu -fstrict-aliasing -fPIC -fvisibility=hidden -O3 -fdata-sections -ffunction-sections -g -Werror -Wall -Wextra -Winit-self -Wpointer-arith -Wsign-compare -Wvla -Wno-deprecated-declarations -Wno-maybe-uninitialized -Wno-extra-semi-stmt -Weverything -Wno-unknown-warning-option -Wno-anon-enum-enum-conversion -Wno-sizeof-array-div -Wno-psabi -Wno-suggest-destructor-override -Wno-suggest-override -Wno-uninitialized-const-reference -Wno-poison-system-directories -Wno-nonportable-include-path -Wno-nonportable-system-include-path -Wno-cast-align -Wno-cast-qual -Wno-conversion -Wno-disabled-macro-expansion -Wno-documentation -Wno-documentation-unknown-command -Wno-double-promotion -Wno-exit-time-destructors -Wno-float-equal -Wno-format-nonliteral -Wno-global-constructors -Wno-missing-prototypes -Wno-missing-variable-declarations -Wno-pedantic -Wno-reserved-id-macro -Wno-shadow -Wno-shift-sign-overflow -Wno-signed-enum-bitfield -Wno-switch-enum -Wno-undef -Wno-unreachable-code -Wno-unreachable-code-break -Wno-unreachable-code-return -Wno-unused-macros -Wno-unused-member-function -Wno-unused-template -Wno-zero-as-null-pointer-constant -Wno-bad-function-cast -Wno-covered-switch-default -Wno-deprecated -Wno-missing-noreturn -Wno-old-style-cast -Wno-padded -Wno-newline-eof -Wno-implicit-fallthrough -Wno-unused-parameter -I/home/vsts/.esy/3_____________________________________________________________________/i/esy_libjpeg_turbo-e4385a3b/include -std=c++11 -fvisibility-inlines-hidden -fno-exceptions -fno-rtti -Wnon-virtual-dtor -Wno-noexcept-type -Wno-abstract-vbase-init -Wno-weak-vtables -Wno-c++98-compat -Wno-c++98-compat-pedantic -Wno-undefined-func-template -c ../../src/gpu/GrFragmentProcessor.cpp -o obj/src/gpu/gpu.GrFragmentProcessor.o
    In file included from ../../src/gpu/GrFragmentProcessor.cpp:8:
    In file included from ../../src/gpu/GrFragmentProcessor.h:11:
    In file included from ../../src/gpu/GrProcessor.h:12:
    In file included from ../../src/gpu/GrBuffer.h:11:
    In file included from ../../include/gpu/GrGpuResource.h:11:
    ../../include/private/GrTypesPriv.h:932:5: error: static_assert failed due to requirement 'sizeof(GrFragmentProcessor *) == sizeof(std::unique_ptr<GrFragmentProcessor, std::default_delete<GrFragmentProcessor> >)' "unique_ptr not expected size."
        static_assert(sizeof(T*) == sizeof(std::unique_ptr<T>), "unique_ptr not expected size.");
        ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ../../src/gpu/GrFragmentProcessor.cpp:452:55: note: in instantiation of function template specialization 'unique_ptr_address_as_pointer_address<GrFragmentProcessor>' requested here
        GrColorFragmentProcessorAnalysis info(inputColor, unique_ptr_address_as_pointer_address(series),
                                                          ^
    1 error generated.

I assume this is due to a compiler update or something, but if it's happening here it will most likely begin to surface elsewhere.

zbaylin commented 3 years ago

Fixed with Ubuntu upgrade