• Michael Meeks's avatar
    desktop: validate OpenCL drivers before use. · 3ee2c658
    Michael Meeks yazdı
    OpenCL validation needs to happen before drivers are used in
    anger. This should isolate any crashes, and/or mis-behavior to
    We use app version, CL driver version and file time-stamp to
    trigger re-testing the device. If anything fails: hard disable
    OpenCL.
    
    We use an opencl validation sheet (cl-test.ods) and install it.
    It is a minimal CL set - it requires a very short formula group
    length, and combines several CL functions into few formulae to
    test more.
    
    The sheet structure, in particular the manual squaring / SQRT is
    necessary to stick within the default CL subset, and ensure that
    formulae are CL enabled from the root of the dependency tree up.
    
    Reviewed-on: https://gerrit.libreoffice.org/27131Tested-by: 's avatarJenkins <ci@libreoffice.org>
    Reviewed-by: 's avatarMichael Meeks <michael.meeks@collabora.com>
    (cherry picked from commit c44726c4)
    
    + opencl: bail out early in missing OpenCL case.
    (cherry picked from commit 605a5dc0)
    
    + Remove bogus dependency from opencl to configmgr
    Since f41eb663 "opencl: OpenCLZone, detect CL
    device change and disable CL on crash" vcl links against opencl (so indirectly
    linked against configmgr), which caused CppunitTest_configmgr_unit to include
    the configmgr object files both statically (through
    gb_CppunitTest_use_library_objects) and through the linked-in configmgr dynamic
    library, which in turn caused ASan builds to report an ODR violation for a
    doubly defined 'typeinfo name for configmgr::Access'.
    
    (cherry picked from commit 9c711f05)
    
    Change-Id: I18682dbdf9a8ba9c16d52bad4447e9acce97f0a3
    Reviewed-on: https://gerrit.libreoffice.org/27141Reviewed-by: 's avatarMichael Meeks <michael.meeks@collabora.com>
    Tested-by: 's avatarMichael Meeks <michael.meeks@collabora.com>
    3ee2c658