pybind11.yml 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. name: PKBIND Build and Test
  2. on:
  3. push:
  4. paths-ignore:
  5. - "docs/**"
  6. - "web/**"
  7. - "**.md"
  8. pull_request:
  9. paths-ignore:
  10. - "docs/**"
  11. - "web/**"
  12. - "**.md"
  13. jobs:
  14. build_linux:
  15. runs-on: ubuntu-latest
  16. steps:
  17. - name: Checkout code
  18. uses: actions/checkout@v4
  19. - name: Set up GCC
  20. run: |
  21. sudo apt-get update
  22. sudo apt-get install -y gcc g++
  23. - name: Set up CMake
  24. uses: jwlawson/actions-setup-cmake@v1.10
  25. - name: Test
  26. run: |
  27. cd include/pybind11/tests
  28. cmake -B build
  29. cmake --build build --config Release --parallel
  30. ./build/PKBIND_TEST
  31. build_win:
  32. runs-on: windows-latest
  33. steps:
  34. - name: Checkout code
  35. uses: actions/checkout@v4
  36. - name: Set up MSVC
  37. uses: ilammy/msvc-dev-cmd@v1
  38. - name: Set up CMake
  39. uses: jwlawson/actions-setup-cmake@v1.10
  40. - name: Test
  41. run: |
  42. cd include\pybind11\tests
  43. cmake -B build
  44. cmake --build build --config Release --parallel
  45. build\Release\PKBIND_TEST.exe
  46. build_mac:
  47. runs-on: macos-latest
  48. steps:
  49. - name: Checkout code
  50. uses: actions/checkout@v4
  51. - name: Set up Clang
  52. run: |
  53. brew install llvm
  54. echo 'export PATH="/usr/local/opt/llvm/bin:$PATH"' >> ~/.zshrc
  55. source ~/.zshrc
  56. - name: Set up CMake
  57. uses: jwlawson/actions-setup-cmake@v1.10
  58. - name: Test
  59. run: |
  60. cd include/pybind11/tests
  61. cmake -B build -DENABLE_TEST=ON
  62. cmake --build build --config Release --parallel
  63. ./build/PKBIND_TEST