CI test matrix for macOS
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index ad1bb41..00cd236 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -31,12 +31,22 @@
         chmod -R ugo+w .
         ${{ matrix.command }}
   macos:
-    name: macOS / OpenSSL
+    name: "${{ matrix.name }}"
     runs-on: [macos-latest]
     # We want to run on external PRs, but not on our own internal PRs as they'll be run
     # by the push to the branch.
     if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
 
+    strategy:
+      fail-fast: false
+      matrix:
+        include:
+          - name: "macOS / OpenSSL 3.x"
+            openssl: openssl@3
+          - name: "macOS / OpenSSL 1.1.x"
+            openssl: openssl@1.1
+          - name: "macOS / LibreSSL"
+
     timeout-minutes: 20
     steps:
     - uses: actions/checkout@v2
@@ -44,8 +54,7 @@
         submodules: recursive
     - name: Install Dependencies
       run: |
-        brew install libfaketime openssl
-        export PATH="$(brew --prefix perl)/bin:$PATH"
+        brew perl install libfaketime ${{ matrix.openssl }}
         curl -sSfL https://cpanmin.us | perl - -v --notest Scope::Guard Test::TCP
 
     - name: Build
@@ -53,6 +62,6 @@
         set -xe
         mkdir -p build
         cd build
-        cmake .. -DOPENSSL_ROOT_DIR="$(brew --prefix openssl)"
+        cmake .. -DOPENSSL_ROOT_DIR="$(brew --prefix ${{ matrix.openssl }})"
         make -j4 all VERBOSE=1
         make check
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d1d6c09..7bb2620 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -99,7 +99,7 @@
 
 FIND_PACKAGE(OpenSSL)
 IF (OPENSSL_FOUND AND NOT (OPENSSL_VERSION VERSION_LESS "1.0.1"))
-    MESSAGE(STATUS "  Enabling OpenSSL support")
+    MESSAGE(STATUS "  Enabling OpenSSL support (${OPENSSL_FOUND}")
     INCLUDE_DIRECTORIES(${OPENSSL_INCLUDE_DIR})
     ADD_LIBRARY(picotls-openssl lib/openssl.c)
     TARGET_LINK_LIBRARIES(picotls-openssl ${OPENSSL_LIBRARIES} picotls-core ${CMAKE_DL_LIBS})
@@ -151,7 +151,7 @@
         ADD_DEPENDENCIES(test-fusion.t generate-picotls-probes)
     ENDIF ()
     SET(TEST_EXES ${TEST_EXES} test-fusion.t)
-    
+
     LIST(APPEND PTLSBENCH_LIBS picotls-fusion)
 ENDIF ()