• Michał Górny's avatar
    tests: update catch to 2.13.5 to fix glibc 2.34 failures (#3679) · 96b943be
    Michał Górny authored
    * Download catch for MinGw
    
    * Fix rest of MinGW
    
    * fix: update catch to 2.13.5 to fix glibc 2.34 failures
    
    Update the downloaded Catch version to 2.13.5, in order to fix build
    failure on glibc 2.34:
    
    ```
    In file included from /usr/include/signal.h:328,
                     from /tmp/pybind11/.nox/tests-3-9/tmp/tests/catch/catch.hpp:8030,
                     from /tmp/pybind11/tests/test_embed/catch.cpp:13:
    /tmp/pybind11/.nox/tests-3-9/tmp/tests/catch/catch.hpp:10818:58: error: call to non-‘constexpr’ function ‘long int sysconf(int)’
    10818 |     static constexpr std::size_t sigStackSize = 32768 >= MINSIGSTKSZ ? 32768 : MINSIGSTKSZ;
          |                                                          ^~~~~~~~~~~
    In file included from /usr/include/python3.9/Python.h:36,
                     from /tmp/pybind11/include/pybind11/detail/common.h:215,
                     from /tmp/pybind11/include/pybind11/pytypes.h:12,
                     from /tmp/pybind11/include/pybind11/cast.h:13,
                     from /tmp/pybind11/include/pybind11/attr.h:13,
                     from /tmp/pybind11/include/pybind11/pybind11.h:13,
                     from /tmp/pybind11/include/pybind11/embed.h:12,
                     from /tmp/pybind11/tests/test_embed/catch.cpp:4:
    /usr/include/unistd.h:640:17: note: ‘long int sysconf(int)’ declared here
      640 | extern long int sysconf (int __name) __THROW;
          |                 ^~~~~~~
    In file included from /tmp/pybind11/tests/test_embed/catch.cpp:13:
    /tmp/pybind11/.nox/tests-3-9/tmp/tests/catch/catch.hpp:10877:45: error: size of array ‘altStackMem’ is not an integral constant-expression
    10877 |     char FatalConditionHandler::altStackMem[sigStackSize] = {};
          |                                             ^~~~~~~~~~~~
    ```
    
    The newest Catch version cannot be used yet because of regression:
    https://github.com/catchorg/Catch2/pull/2364
    
    
    
    * fix: add option for _ check, only define on pybind11
    
    * Revert "fix: add option for _ check, only define on pybind11"
    
    This reverts commit 86817db488c547816e21e20d678db318bb286384.
    
    * fix: only undef _ for catch cpp creation.
    Co-authored-by: default avatarAaron Gokaslan <skylion.aaron@gmail.com>
    Co-authored-by: default avatarHenry Schreiner <henryschreineriii@gmail.com>
    96b943be
catch.cpp 726 Bytes