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 ()